Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2009

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

Search the Archive

Re: pure function with optional number of arguments

  • To: mathgroup at smc.vnet.net
  • Subject: [mg98972] Re: pure function with optional number of arguments
  • From: dh <dh at metrohm.com>
  • Date: Wed, 22 Apr 2009 06:43:42 -0400 (EDT)
  • References: <gsmmvk$d24$1@smc.vnet.net>


Hi Ruth,

in short syntax, "all parameters are written by: ##. This can not be 

done with the long syntax: Function[..]. You have nested functions and 

you need the "##" in the outer function. Therefore, you need to write 

the inner functions in "long" syntax: Function[{x},..]. here is one 

possibility:



purefun = (Function[{x}, Integrate[z*Efun[##], {z, 0, x}]] /@ {1,2,3}) &



Daniel



Ruth Lazcoz Saez wrote:

> Hi,

> 

> I have two definitions for a function, one in the case it has one  

> argument and another one if it has two.

> 

> Efun[x_]:=x^2

> Efun[x_,y_]:=x^2+y^2

> 

> Then I want to construct a pure function that does the same thing as  

> this non-pure function

> 

> myint[params__] := Integrate[z*Efun[params], {z, 0, #}] & /@ {1, 2, 3}

> 

> I tried to accomplish it with

> 

> myintpure= Function[params, Integrate[z*Efun[params], {z, 0, #}] & /@  

> {1, 2, 3}],

> 

> but myintpure[x,y] gives not the same as myint[x,y], so this pure  

> function I have constructed seems to be not right.

> 

> Help will be much appreciated. Thanks,

> 

> Ruth Lazkoz

> 

> 

> 




  • Prev by Date: Re: pure function with optional number of arguments
  • Next by Date: Re: How to get values from Manipulate
  • Previous by thread: Re: pure function with optional number of arguments
  • Next by thread: Looking for a custom control example that support dynamic arguments