# [Maxima] Change of variable in differential equation

Barton Willis willisb at unk.edu
Wed Jan 31 08:05:59 CST 2007

```One way to do this is to use pdiff (there are other ways). I'll illustrate
how to change variables using a simple DE:

(%i2) de : diff(f(x,y),x,2) + diff(f(x,y),y,2)\$
(%i3) de, f(x,y) := g(x/y);
(%o3) g[(2)](x/y)/y^2+(2*x*g[(1)](x/y))/y^3+(x^2*g[(2)](x/y))/y^4
(%i4) y^2 * %;
(%o4) (g[(2)](x/y)/y^2+(2*x*g[(1)](x/y))/y^3+(x^2*g[(2)](x/y))/y^4)*y^2
(%i5) ratsubst(w,x/y,%);
(%o5) (w^2+1)*g[(2)](w)+2*w*g[(1)](w)
(%i6) nde : convert_to_diff(%);
(%o6) 2*w*('diff(g(w),w,1))+(w^2+1)*('diff(g(w),w,2))
(%i7) depends(g,w)\$
(%i8) nde : subst(g,g(w),nde);
(%o8) ('diff(g,w,2))*(w^2+1)+2*('diff(g,w,1))*w
(%i9) ode2(nde,g,w);
(%o9) g=%k1*atan(w)+%k2

Barton

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

Hello,

I am dealing with the following partial differential equation for the
function T(r,t):

diff( T, t ) - T^2 / r^2 * diff( ( r^2 * T^(sigma) * diff(T, r) + q / T ),
r ) = 0

I now want to introduce a new variable

eta = r / t^(1/3)

and a new function

Psi(eta) = t^(1/3) * T^(1+sigma)

and I would like Maxima to transform the partial differential equation for
T(r,t) stated herebove into a differential equation for Psi(eta).

C
```