MathGroup Archive 1997

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: NIntegrate where terms of integrand have unknown constant coefficients

  • To: mathgroup at smc.vnet.net
  • Subject: [mg8931] Re: [mg8882] NIntegrate where terms of integrand have unknown constant coefficients
  • From: David Withoff <withoff>
  • Date: Sat, 4 Oct 1997 22:08:09 -0400
  • Sender: owner-wri-mathgroup at wolfram.com

>  I'm trying to do something along the lines of NIntegrate[c[1] f[1][x] +
> c[2] f[2][x] + ..., {x, 0, a}], where c[n_] is unknown, but the f[n_] are
> defined so that NIntegrate[f[n][x], {x, 0, a}] would work. I'd like to be
> able to do the numerical integration, and keep the coefficients, so I'd get
> as an answer c[1] NIntegrate[f[1][x], {x, 0, a}] + c[2] NIntegrate[f[2][x],
> {x, 0, a}] + ... with all the NIntegrate's evaluated. The constant
> coefficients are all of the same form c[n] (actually, each term will have
> two coefficients c[n1] c[n2]).
> Is there some way of doing this by changing the definition of NIntegrate so
> it will automatically acheive this, or do I have to do something more
> complicated? I'm not at all sure here, as I've never tried adding to the
> definitions of complicated objects like NIntegrate.
>
> Any help or suggestions would be very gratefully accepted!
>
> Thanks, Scott Morrison
> scott at morrison.fl.net.au

I would do this by defining your own function that performs the
symbolic linearity operations before calling NIntegrate, rather
than by redefining NIntegrate.  For example

In[1]:= int[p_Plus, q_] := Map[int[#, q] &, p]

In[2]:= int[(p:c[_]) f_, q_] := p NIntegrate[f, q]

In[3]:= int[c[1] x + c[2] x^2, {x, 0, 1}]

Out[3]= 0.5 c[1] + 0.333333 c[2]

This strategy could be made considerably more elaborate to do
almost anything that you might want.

Dave Withoff
Wolfram Research


  • Prev by Date: Help! Sin[n Pi] (n Integer)
  • Next by Date: Re: Compiled Functions and Mathgroup Archive
  • Previous by thread: NIntegrate where terms of integrand have unknown constant coefficients
  • Next by thread: Re: NIntegrate where terms of integrand have unknown constant coefficients