Re: How to substitute a function?
- To: mathgroup at smc.vnet.net
- Subject: [mg94115] Re: How to substitute a function?
- From: "sjoerd.c.devries at gmail.com" <sjoerd.c.devries at gmail.com>
- Date: Fri, 5 Dec 2008 05:31:06 -0500 (EST)
- References: <gh8hmh$r2t$1@smc.vnet.net>
Alexei, Examining expr in FullForm you'll see that the derivative in expr is actually: Derivative[1][y][x] Hence, the ReplaceAll construction /. y[x] -> ... fails for this part as y[x] is not there. Instead, you could calculate it as follows: ReleaseHold[Hold[ \!\( \*SubscriptBox[\(\[PartialD]\), \(x\)]\ \(y[x]\)\) + a*y[x]^2] /. y [x] -> Exp[-x]*f[x]] Cheers -- Sjoerd On Dec 4, 2:16 pm, Alexei Boulbitch <Alexei.Boulbi... at iee.lu> wrote: > Dear crew, > > I faced a difficulty when trying to substitute a newly represented > function into an expression containing a sum of differential and > algebraic terms. The difficulty is namely, that Mathematica 6 > substitutes the new representation into the algebraic, but not into the > differential part. For example: > > (* This is the definition of a simple example of such an expression *) > > expr = \!\( > \*SubscriptBox[\(\[PartialD]\), \(x\)]\ \(y[x]\)\) + a*y[x]^2; > > (* Here I substitute a new representation of the function into the \ > above expression *) > (* What I expect to get is the following expression: -Exp[-x]*f[x] + \ > Exp[-x]*f=B4[x] + a \[ExponentialE]^(-2 x) f[x]^2 *) > (* Instead I get something else. Please have a look and check: *) > expr /. y[x] -> Exp[-x]*f[x] > > (* This is another approach I could think of with even worse result. *) > \ > > (* Note however, that within this approach a miracle happened: once \ > it *) > (* worked as expected (i.e. the substitution of both terms has been \ > performed as desired, but only once *) > > FullSimplify[expr, y[x] == Exp[-x]*f[x]] > > Do you have idea of how to instruct Mathematica to make the substitution > everywhere? > > Thank you in advance, Alexei > > -- > Alexei Boulbitch, Dr., Habil. > Senior Scientist > > IEE S.A. > ZAE Weiergewan > 11, rue Edmond Reuter > L-5326 Contern > Luxembourg > > Phone: +352 2454 2566 > Fax: +352 2454 3566 > > Website:www.iee.lu > > This e-mail may contain trade secrets or privileged, undisclosed or other= wise confidential information. If you are not the intended recipient and ha= ve received this e-mail in error, you are hereby notified that any review, = copying or distribution of it is strictly prohibited. Please inform us imme= diately and destroy the original transmittal from your system. Thank you fo= r your co-operation.