Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2008

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

Search the Archive

Re: Transform list of numbers into pure functions using

  • To: mathgroup at smc.vnet.net
  • Subject: [mg89510] Re: [mg89457] Transform list of numbers into pure functions using
  • From: Bob Hanlon <hanlonr at cox.net>
  • Date: Wed, 11 Jun 2008 03:19:25 -0400 (EDT)
  • Reply-to: hanlonr at cox.net

{1, 2, f[x]} /. (x_ /; NumberQ[x]) -> (x &)

{1 & , 2 & , f[x]}


Bob Hanlon

---- Mac <mwjdavidson at googlemail.com> wrote: 
> Hello,
> 
> I'm developed a program to invert satellite observations into
> geophysical variables such as forest biomass. One of the input
> parameters are the errors in the observation channels which can be
> either constant or a function. To be consistent the program expects
> all errors to be functions but they can also be constant functions
> e.g. if the error is 4 then the input parameter is "4&".
> 
> I've however hit a problem with the replacement rule that allows me to
> transform all input errors into a function. The following works as
> expected in that constants in the list are transformed into virtual
> functions and functions in the list are left alone.
> 
> In[40]:= If[NumberQ[#], ToExpression[ToString[#] <> "&"], #] & /@ {1,
>   2, 3 &, f[x]}
> 
> Out[40]= {1 &, 2 &, 3 &, f[x]}
> 
> However, I cannot find a replacement rule to do the same job. Here is
> one try:
> 
> In[39]:= {1, 2, f[x]} /. x_ /; NumberQ -> Hold[x &]
> 
> Out[39]= {1, 2, f[x]}
> 
> Any help would be appreciated.
> 
> Mac
> 
> 



  • Prev by Date: Re: Determine brightness of colour/Convert to GrayLevel
  • Next by Date: Re: Re: Re: Re: Adding markers on the surface of a Plot3D?
  • Previous by thread: Re: DiffMaps package
  • Next by thread: misunderstanding of semicolon