Change of variable for differential equation



Daniel,

Although there are alternatives, I like to use pdiff to do such
calculations. An example:

  (%i1) load(pdiff)$
  (%i2) de : diff(y(x),x) - (2*x-1)*y(x);
  (%o2) y[(1)](x)-(2*x-1)*y(x)

With malice aforethought, let y(x) = z(x * (x-1)).  Then

  (%i3) de, y(x) := z(x*(x-1));
  (%o3) (2*x-1)*z[(1)]((x-1)*x)-(2*x-1)*z((x-1)*x)

Replace x * (x-1) by t (in general, ratsubt might not be enough to do the
job)

  (%i4) ratsubst(t,x*(x-1),%);
  (%o4) (2*z[(1)](t)-2*z(t))*x-z[(1)](t)+z(t)

And solve for dz/dt

  (%i5) solve(%,diff(z(t),t));
  (%o5) [z[(1)](t)=z(t)]

z[(1)](t) is the wxMaxima way of expressing dz/dt in ASCII. The pdiff
method works for
higher order DEs and PDEs. As for an automatic method, I don't know. For an
affine
transformation, maybe you can find a rule that works.

Barton

-----maxima-bounces at math.utexas.edu wrote: -----

>To: Maxima Mailing List
>From: Daniel Lakeland
>Sent by: maxima-bounces at math.utexas.edu
>Date: 06/17/2007 01:44PM
>Subject: Change of variable for differential equation
>
>Suppose I have a differential equation such as
>
>deq: diff(h(x),x) = g(x);
>
>I want to express solutions in terms of a nondimensional variable t
>where x depends on t via an affine transformation.
>
>xeqn: x = a*t-b;
>
>how can I most easily accomplish the transformation of this
>differential equation into an equation in terms of t?  Preferrably I
>would like to accomplish this in an automated way rather than a lot of
>by-hand substitutions (the actual equations might be significantly
>more complicated)
>
>It obviously doesn't work to simply say subst(xeqn,deq) because I wind
>up with something like this:
>
>                  d
>(%o3)                  -------- (h(a t - b)) = g(a t - b)
>                 da t - b
>
>Is there a way to convert that funky differential operator to an
>application of the chain rule? how about for higher derivatives?
>
>--
>Daniel Lakeland
>dlakelan at street-artists.org
>http://www.street-artists.org/~dlakelan
>_______________________________________________
>Maxima mailing list
>Maxima at math.utexas.edu
>http://www.math.utexas.edu/mailman/listinfo/maxima