Re: Mathematica- Use a previous equation into the
- To: mathgroup at smc.vnet.net
- Subject: [mg111487] Re: Mathematica- Use a previous equation into the
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Tue, 3 Aug 2010 06:36:42 -0400 (EDT)
Attributes[Function]
{HoldAll,Protected}
Since Function has the attribute HoldAll, you need to use Evaluate
listp = {a, b, c, d, e, h, j};
ll = d + a x + h x^2 + b y + e x y + c z + j z^2;
Function[##, Evaluate[ll]] & @@ {listp}
Function[{a, b, c, d, e, h, j},
a*x + b*y + c*z + d + e*x*y +
h*x^2 + j*z^2]
Bob Hanlon
---- Camille <camille.segarra at gmail.com> wrote:
=============
Dear All,
I am fairly new to mathematica. I am stuck with a problem I cannot solve. I would like to call a previous equation into the function Function. If a type directly the expression or copy paste it, it works. However, when I call the expression by its name it does not.
Here is the code for a more precise explanation:
In: ll
Out: d + a x + h x^2 + b y + e x y + c z + j z^2
In: Function[##, a x + b y + c z + d + e x y + h x^2 + j z^2] & @@ {Listp}
Out: Function[{a, b, c, d, e, h, j},
a x + b y + c z + d + e x y + h x^2 + j z^2]
It works well and I can use it to generate as many equations I want by replacing the variables a,b,c,d,e,h,j.
But if I do:
In:Function[##, ll] & @@ {Listp}
Out:Function[{a, b, c, d, e, h, j}, ll]
And I cannot use it.
Any suggestions?
Thanks in advance. Do not hesitate to post if you need some further information. Sorry for my bad english.
Camille