MathGroup Archive 2009

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

Search the Archive

Re: Re: Replace in operators

  • To: mathgroup at smc.vnet.net
  • Subject: [mg102943] Re: [mg102922] Re: [mg102869] Replace in operators
  • From: "Elton Kurt TeKolste" <tekolste at fastmail.us>
  • Date: Thu, 3 Sep 2009 05:36:04 -0400 (EDT)
  • References: <200909010750.DAA18607@smc.vnet.net>

Andrzej

You and I have similar solutions for this problem in your answer #2

f[x] + D[f[x], x] /. {f[x] :> g[x], Derivative[1][f][x] :>
Derivative[1][g][x]}

except that I used the static replace (->) rather than the dynamic
replace (:>).  

I suspect that I have not fully understood the distinction between ->
and :> and, in particular, what advantage or difference :> provides in
this case over ->. 

Why did you select :> over -> in this example?

Kurt

On Wed, 02 Sep 2009 04:03 -0400, "Andrzej Kozlowski" <akoz at mimuw.edu.pl>
wrote:
> I think, you can do on of three things:
> 
> 1.
>   Unevaluated[f[x] + D[f[x], x]] /. f[x] -> g[x]
> 
> Derivative[1][g][x] + g[x]
> 
> or
> 
> 2.
> 
> f[x] + D[f[x], x] /. {f[x] :> g[x], Derivative[1][f][x] :>   
> Derivative[1][g][x]}
> 
>   Derivative[1][g][x] + g[x]
> 
> 3.
> 
> f[x] + D[f[x], x] /. f -> g
> 
> Derivative[1][g][x] + g[x]
> 
> (There are also some variants of 1 and 2 ).
> 
>  From what you say, it seems that the first choice (wrapping  
> Unevaluated around the input) is the most suitable.
> 
> Andrzej Kozlowski
> 
> 
> 
> On 1 Sep 2009, at 09:50, did wrote:
> 
> > I can't figure out how to force Mathematica to replace
> > f[x] by g[x] in expressions involving operators.
> > For example:
> >
> > f[x] + D[f[x],x] /. f[x] -> g[x]
> >
> > f is not replaced in the derivative. I found
> > somewhere in the manual that the replacement
> > does not work on operators, but then it does
> > not indicate how to do it.
> >
> > In my real problem, f[x]->g[x] is a (long)
> > list of complicated transformations resulting
> > from the resolution of many equations.
> > Thus, changing f[x]->g[x] by f->g is not
> > an option.
> >
> > f[x] + D[f[x],x] is actually a complicated
> > expression involving many operators.
> >
> > There are no ways I can do the
> > substitution by hand, bit by bit.
> >
> > Any suggestions ?
> > Thanks
> >
> > PS: it may help to precise the context.
> > I'm trying to solve a system of PDEs by
> > a small parameter expansion. Solving the
> > system at order N, I want to re-inject the
> > results into the equations at order N+1.
> >
> 
> 
Regards,
Kurt Tekolste



  • Prev by Date: Re: Bug in Solve?
  • Next by Date: Re: Bug in Solve?
  • Previous by thread: Re: Replace in operators
  • Next by thread: Re: Replace in operators