Items tagged with pdetools


Having difficulties solving pde. Below is the problem and its not plotting. Anyone with useful informations. Please

with(PDEtools, casesplit, declare);
with(DEtools, gensys);

PDE := diff(theta(x, t), x, x)+beta*theta(x, t)*(diff(theta(x, t), x, x))+beta*((diff(theta(x, t), x))^2)-M^2*theta(x, t)-S[h]*(theta(x, t)^2)+M^2*G*(1+E*theta(x, t))-P[e]*(diff(theta(x, t), x)) = diff(theta(x, t), t);
/ d  / d             \\
|--- |--- theta(x, t)||
\ dx \ dx            //

                      / d  / d             \\
   + beta theta(x, t) |--- |--- theta(x, t)||
                      \ dx \ dx            //

          / d             \     2                               2
   + beta |--- theta(x, t)|  - M  theta(x, t) - S[h] theta(x, t) 
          \ dx            /                                      

      2                              / d             \    d  
   + M  G (1 + E theta(x, t)) - P[e] |--- theta(x, t)| = --- 
                                     \ dx            /    dt 

  theta(x, t)
BC := theta(x, 0) = 0, Dt(theta(0, t)) = 0, theta(1, t) = 1;
     theta(x, 0) = 0, Dt(theta(0, t)) = 0, theta(1, t) = 1
Codes := [beta = .1, M = .1, S[h] = .1, G = .1, P[e] = .1, E = .1];
S1 := pdsolve({BC, subs(Codes, PDE)});
PDEplot(S1, [[t, theta(x, t)], [x, theta(x, t)]], t = 0 .. 1, x = 0 .. 1, iterations = 2, numchar = [10, 10], stepsize = 0.5e-1, numsteps = [-5, 5]);
   PDEplot([[t, theta(x, t)], [x, theta(x, t)]], t = 0 .. 1, 

     x = 0 .. 1, iterations = 2, numchar = [10, 10], 

     stepsize = 0.05, numsteps = [-5, 5])


is it possible to change ODE to PDE?

the ODE has diff(a(t),t) and diff(b(t),t)

how to convert to diff(t, a), diff(t, b) ?

What's wrong here?

restart; with(PDEtools); PDE2 := diff(u(x, y, t), t$2) = diff(u(x, y, t), x$2)+diff(u(x, y, t), y$2); IBC2s := u(x, 0, t) = 0, u(x, 2, t) = 0, u(0, y, t) = 0, u(4, y, t) = 0, u(x, y, 0) = (.1*(-x^2+4*x))*(-y^2+2*y), (D[3](u))(x, y, 0) = 0; Sol2 := pdsolve({IBC2s, PDE2}); build(Sol2);

Error, invalid input: PDEtools:-build uses a 1st argument, ANS (of type {`=`, PDESolStruc}), which is mis

I have a problem using dchange when my variable depend on two (or more variables) and I would like to apply the chain rule.

For example, when I use the command

I would expect something like 

But I get an error saying that the number of new variables and transformation equations must be the same.

Any idea how I could solve it? 

Thanls a lot for your help.


I am wondering if I can use MAPLE to solve PDE set with one initial value problem for "q" and a boundary condition problem for "p". "q" need to be integrated over time, and for each time step, after updating "q", I need to solve poisson equation for "p":



IC: q(x,y,0)=q0(x,y)

BC: periodic in x, second type BC in y.

Many Thanks!



I want to solve the following non linear PDE

SS := [diff(u(x, y, t), t)-0.625e-1*(diff(u(x, y, t), x, x)+diff(u(x, y, t), y, y))-6*(diff(u(x, y, t)*(diff(v(x, y, t), x)), x)+diff(u(x, y, t)*(diff(v(x, y, t), y)), y)) - 2*(u(x, y, t))(1-u(x, y, t))=0, diff(v(x, y, t), t)-(diff(v(x, y, t), x, x))-(diff(v(x, y, t), y, y))+16*v(x, y, t) -u(x, y, t)=0]

when i use the command

sol := pdsolve(SS, [u, v], singsol = false)

maple give the error message

Error, (in pdsolve) found the independent variables {t, x, y} also present in the names of the functions of the system []


I have a PDE with boundary conditions, from a NASA paper.  I always seem to have problems expressing the bc.

PDE := diff(u(x, t), t) = (1/4)*exp(2)*exp(-u(x, t))*(diff(diff(u(x, t), x), x))/(x^2+2);

The initial/boundary conditions are

@t=0, u(x, t) = 2-2*ln(-x^2+2)

@x=0, diff(u(x,t),x)=0  ## this is the bc I have problem expressing

@x=1, u(x,t) = 2+ln(1+t)

The exact solution given in the paper:

2 + ln(1+t) - 2*ln(2-x^2)

I tried

ics := u(x, 0) = 2*(1-ln(2-x^2));

bcs := D[1](u(0,t))=0, u(1,t)=2+ln(1+t);

PDEtools[Solve]([PDE,ics,bcs]); ## no solution

How do I do this?

Tom Dean

HI everyone,

As can be seen from the attached file, the first three equations of Eq. (5) will render some of the other equations (and other terms) redundant. How can I obtain a simplified system automatically?


Dear all

I am trying to solve system of ODEs by TWS command for traveling wave solution, but an error is showing. When I enter sinlge ODE or PDE the command does not show any error. Why it is showing error for system of ODEs ?


with(PDEtools, TWSolutions, declare):


Sys := {125*xi^3*(diff(f(xi), xi, xi, xi))-90*f(xi)*xi*(diff(h(xi), xi))-180*h(xi)*xi*(diff(f(xi), xi))+750*xi^2*(diff(f(xi), xi, xi))-180*f(xi)*h(xi)+830*xi*(diff(f(xi), xi))+80*f(xi)-108*(diff(h(xi), xi)), 15*f(xi)*xi*(diff(f(xi), xi))+6*f(xi)^2+10*xi*(diff(g(xi), xi))+8*g(xi)+6*(diff(f(xi), xi)) = 0, 5*f(xi)*xi*(diff(g(xi), xi))+10*g(xi)*xi*(diff(f(xi), xi))+8*f(xi)*g(xi)+10*xi*(diff(h(xi), xi))+12*h(xi)+6*(diff(g(xi), xi)) = 0}


Error, (in pdsolve/sys/info) required an indication of the solving variables for the given system





Hi, I'm trying to use Maple to construct some examples of symmetry solutions for certain nonlinear PDE's.  As a warm up, however, I'm working through the commands just for the heat equation in 3d: u[t]-u[x,x]-u[y,y]-u[z,z]=0 

I've gotten Maple to produce both determining equations for the symmetry infinitesimal generators via the DeterminingPDE command.  I've also gotten the command Infinitesimals to work too.

However, when I next use PDETools Invariants command, it correctly outputs invariants for most of the generator output of Infinitesimals EXCEPT it won't output anything for the simple rotation generators yd[x]-xd[y].  It will, however, output invariants if the rotation is between an independent and the dependent coordinate.

An example:
S:=[_xi[x]=y, _xi[y]=-x, _eta[u]=0]

*Above returns nothing, But if you instead have _xi[x]=x and _xi[y]=y then it returns the right invariants.

Thanks in advance!

There is an example in the help of maple, that is to solve the symmetries of the equation ut=uxx using the order "Infinitesimals".

But the result i can't understand.

I solved by hand and find  _eta[u](x, t, u)=cu+b(x,t), where b(x,t) is a solution of the ut=uxx.

While in maple, b is only two exponential function which are also the solution of ut=uxx. 


thanks for your help!

Dear All

I need to reduce system of differential equation system into triangular system which I came to know can be done using Maple package "DifferentialAlgebra", but I do not know how to use this package for triangularization.

The differential system is DetSys derived from  some PDE:



DepVars := [f(u(x, t)), u(x, t)]; 1; declare(f(u(x, t)), u(x, t))

[f(u(x, t)), u(x, t)]


f(u(x, t))*`will now be displayed as`*f


u(x, t)*`will now be displayed as`*u


PDE1 := diff(u(x, t), t, t)-(diff(u(x, t), x, x))-f(u) = 0

diff(diff(u(x, t), t), t)-(diff(diff(u(x, t), x), x))-f(u) = 0


G := [xi(x, t, u), tau(x, t, u), phi(x, t, u)]

[xi(x, t, u), tau(x, t, u), phi(x, t, u)]



phi(x, t, u)*`will now be displayed as`*phi


tau(x, t, u)*`will now be displayed as`*tau


xi(x, t, u)*`will now be displayed as`*xi


DetSys := DeterminingPDE(PDE1, G, integrabilityconditions = false)

{-2*(diff(diff(tau(x, t, u), t), u))+diff(diff(phi(x, t, u), u), u), 2*(diff(diff(tau(x, t, u), u), x))-2*(diff(diff(xi(x, t, u), t), u)), 2*(diff(diff(xi(x, t, u), u), x))-(diff(diff(phi(x, t, u), u), u)), 2*(diff(tau(x, t, u), x))-2*(diff(xi(x, t, u), t)), 2*(diff(xi(x, t, u), x))-2*(diff(tau(x, t, u), t)), diff(diff(tau(x, t, u), x), x)+2*(diff(diff(phi(x, t, u), t), u))-(diff(diff(tau(x, t, u), t), t))-3*(diff(tau(x, t, u), u))*f(u), diff(diff(xi(x, t, u), x), x)-2*(diff(diff(phi(x, t, u), u), x))-(diff(diff(xi(x, t, u), t), t))-f(u)*(diff(xi(x, t, u), u)), -(diff(diff(phi(x, t, u), x), x))+diff(diff(phi(x, t, u), t), t)-phi(x, t, u)*(diff(f(u), u))+(diff(phi(x, t, u), u))*f(u)-2*(diff(tau(x, t, u), t))*f(u), diff(diff(tau(x, t, u), u), u), diff(diff(xi(x, t, u), u), u), diff(tau(x, t, u), u), diff(xi(x, t, u), u)}


for EQ in sort([op(DetSys)], length) do EQ = 0 end do:



Download [1117]


Hello, I am using PDEtools to evaluate an equation but got system inconsistent in respect of a parameter used after the command map(pdsolve). I am afraid the result sebsequently given may not be correct, did I do something wrong?






i want to compute the determining PDE system satisfied by the infinitesimals, such as the KdV equation.

but i have a problem, if i use the command

DeterminingPDE(PDE1, integrabilityconditions = false, split = false)

i can get the coefficients of independent objects, but u[t] exists. 

i want to replace u[t] by (-u[x]u-u[x,x,x]), then extract the coefficients.

but i can't collect the coefficients. 


my code:

with(PDEtools, DeterminingPDE, declare, diff_table, casesplit, InfinitesimalGenerator, Infinitesimals, SymmetryTest, ReducedForm, FromJet, ToJet);

declare(u(x, t));

U := diff_table(u(x, t));

PDE1 := U[]*U[x]+U[t]+U[x, x, x] = 0;

DetSys := DeterminingPDE(PDE1, integrabilityconditions = false, split = false);
detsys := FromJet(DetSys, u(x, t), differentiationnotation = diff);
pd1 := subs(U[t] = -U[]*U[x]-U[x, x, x], detsys); #u[t]->(-u[x]u-u[x,x,x])
pd2 := ToJet(pd1, [u(x, t)]);

how do i collect the coefficients?


In PDEtools, suppose to I wish assign zero value to certain first order partial derivative such that higher order derivatives automatically vanish in subsequent excutions, how I can do that?



alias(u = u(x, y, t))



Suppose we wish following derivative equal to zero,

diff(u, x) = 0

diff(u, x) = 0


If we use ":=" for value assignment we will get error. Under above assuption how can we make following derivatives zero?

diff(u, x, x); 1; diff(u, x, y); 1; diff(u, x, x, x, y)

diff(diff(u, x), x)


diff(diff(u, x), y)


diff(diff(diff(diff(u, x), x), x), y)





1 2 3 Page 1 of 3