Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2007
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2007

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

Search the Archive

Re: pure function to generate a list of integrals

  • To: mathgroup at smc.vnet.net
  • Subject: [mg77289] Re: pure function to generate a list of integrals
  • From: David Bailey <dave at Remove_Thisdbailey.co.uk>
  • Date: Wed, 6 Jun 2007 07:16:30 -0400 (EDT)
  • 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.
> 
> Thanks in advance,
> 
> Ruth Lazkoz
> 
> 
> 
Plenty of people have given you code suggestions. I would just like to 
point out that the cost of executing the NIntegrate command will almost 
certainly swamp any speed gain from making your code more functional!

David Bailey
http://www.dbaileyconsultancy.co.uk


  • Prev by Date: Re: v6: weird cursor behaviour
  • Next by Date: Re: Segregating the elements of a list based on given lower and upper bounds
  • Previous by thread: Re: pure function to generate a list of integrals
  • Next by thread: Re: pure function to generate a list of integrals