MathGroup Archive 2007

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

Search the Archive

Re: Evaluate, Replace, and Hold

  • To: mathgroup at smc.vnet.net
  • Subject: [mg77207] Re: Evaluate, Replace, and Hold
  • From: dh <dh at metrohm.ch>
  • Date: Tue, 5 Jun 2007 06:59:13 -0400 (EDT)
  • References: <f40gib$65a$1@smc.vnet.net>


Hi,

you want to evaluate a function of 2 parameters over a range of every 

parameter. "Outer" will do this. Here is a simple example for the syntax 

of the parameter you indicated:

Remove[fun];

fun[pts_,params_]:=

   Outer[(Print["p1=",#1];model/.#1/.x->#2)&,params,pts,1]



model=a+b x;

params={{a\[Rule]1,b\[Rule]2},{a\[Rule]2,b\[Rule]1}};

pts={1,2,3};



fun[pts,params]

hope this helps, Daniel





grenander at gmail.com wrote:

> This is a newbie question. I have a parametric form of a model and I

> would like to evaluate it with different parameters on a list of

> values.

> 

> model = a x + b;

> 

> Different sets of parameters:

> 

> p1 = {a->1, b->0};

> p2 = {a->1, b->1};

> 

> x for which I'd like to evaluate the model:

> 

> pts = Range[10];

> 

> I would like to define a function to evaluate the model at pts using

> any of the sets of paramters:

> 

> f[pts, p1]

> f[pts, p2]

> 

> I would also like it to work for single points:

> 

> f[1, p1]

> f[2, p1]

> 

> I've tried various forms for a function definition that dont work. I

> can do the following for a particular set of parameters:

> 

> Function[{x}, Evaluate[model /. p1]] /@ pts

> 

> but how can I turn it into a function of also the parameters. The

> below doesn't work, for example:

> 

> f[pts_, p_]:=Function[{x}, Evaluate[model /. p] ] /@ pts

> 

> What I know is from descending the documentation tree (v6.0) starting

> from the examples in FindFit. I have a fundamental misunderstanding of

> replacement rules and delayed evaluation.

> 

> Thanks.

> 

> 




  • Prev by Date: Re: RE: simple question
  • Next by Date: Re: Re: MakeExpression problem
  • Previous by thread: Re: Evaluate, Replace, and Hold
  • Next by thread: Fun with zero sums