Re: pure function to generate a list of integrals

• To: mathgroup at smc.vnet.net
• Subject: [mg77100] Re: pure function to generate a list of integrals
• From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
• Date: Sun, 3 Jun 2007 06:15:49 -0400 (EDT)
• Organization: The Open University, Milton Keynes, UK
• References: <f3r9er\$19e\$1@smc.vnet.net>

```Ruth Lazkoz Saez wrote:
> Hi everyone,
>
> I am trying to brush up a long code I have to make it more compliant
> with the spirit of functional programming. I do not like to hear that
> the kind of calculations I do should run faster in C, because I suspect
> that if I managed to write good code in Mathematica it should be as
> fast. So I have to go and improve my code chunk by chunk.
>
> My first problem is that I want to generate a pure function say f,
> which, so that f[2, {0.1, 0.5, 0.9}] gives me the same output as
>
> {NIntegrate[2x, {x, 0, 0.1}], NIntegrate[2x, {x, 0, 0.5}],
>    NIntegrate[2x, {x, 0, 0.9}]}
>
> That is, I want to generate a list of numerical integrals of the same
> function but making one of the integration limits change by taking
> values from a list.
>
> I also want my function to admit two arguments (a number and a list)
> because I want to be able to use the same definition to generate the
> same output as for instance
>
>
> {NIntegrate[3x, {x, 0, 0.1}], NIntegrate[3x, {x, 0, 0.5}],
>    NIntegrate[3x, {x, 0, 0.9}]}
>
> by evaluating f[3, {0.1, 0.5, 0.9}] this time.
>
> I tried for quite a while, but I failed. I suspect one of the problems
> is NIntegrate is not listable. I could make some progress with  Map but
> I only what halfway and on top I was not satisfied with the syntax I
> would have to use.
>
>
> Ruth Lazkoz

In[1]:=
f[(n_)?NumericQ, lst_List] := (NIntegrate[n*x, {x, 0, #1}] & ) /@ lst

f[2, {0.1, 0.5, 0.9}]
f[3, {0.1, 0.5, 0.9}]

Out[2]= {0.01, 0.25, 0.81}

Out[3]= {0.015, 0.375, 1.215}

Regards,
Jean-Marc

```

• Prev by Date: Re: Iterating List
• Next by Date: Re: How to change symbolic values to numbers
• Previous by thread: Re: pure function to generate a list of integrals
• Next by thread: Re: pure function to generate a list of integrals