       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 f[x] +
> c f[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 NIntegrate[f[x], {x, 0, a}] + c NIntegrate[f[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:= int[p_Plus, q_] := Map[int[#, q] &, p]

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

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

Out= 0.5 c + 0.333333 c

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