Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

Maple can separate and eliminate a function in a system of PDE equations, with casesplit in the PDEtools package. How to do that in Mathematica? Starting PDEs are:

$$ -A\frac{\partial ^2Q(x,y)}{\partial x^2}+B\frac{\partial ^3P(x,y)}{\partial x^3}+C Q(x,y)-C\frac{\partial P(x,y)}{\partial x}+D\frac{\partial ^2Q(x,y)}{\partial y^2}=0 $$

$$ -B\frac{\partial ^3Q(x,y)}{\partial x^3}+E\frac{\partial ^4P(x,y)}{\partial x^4}-C \frac{\partial Q(x,y)}{\partial x}+C\frac{\partial ^2P(x,y)}{\partial x^2}-F\frac{\partial ^2P(x,y)}{\partial y^2}=0 $$

Maple code

des:= {-A*diff(Q(x,y),x,x)+B*diff(P(x,y),x,x,x)+C*Q(x,y) 
 -B*diff(Q(x,y),x,x,x)+E*diff(P(x,y),x,x,x,x)-C*diff(Q(x,y),x) +


Maple output is

$$\left( -{B}^{2}+EA \right) {\frac {\partial ^{6}}{\partial {x}^{6}}}P \left( x,y \right) + \left( - D C-AF \right) {\frac { \partial ^{4}}{\partial {y}^{2}\partial {x}^{2}}}P \left( x,y \right) + \left( AC-CE \right) {\frac {\partial ^{4}}{\partial {x}^{4}}}P \left( x,y \right) + D F{\frac {\partial ^{4}}{ \partial {y}^{4}}}P \left( x,y \right) - D E { \frac {\partial ^{6}}{\partial {y}^{2}\partial {x}^{4}}}P \left( x,y \right) +CF{\frac {\partial ^{2}}{\partial {y}^{2}}}P \left( x,y \right) = 0 $$

share|improve this question
Thank you. ---- –  Mr.Wizard Jun 5 '12 at 8:59
@ Mr. Wizard Thank you for attention. –  George Mills Jun 5 '12 at 9:08
An even easier question would be: how can one eliminate a function in a set of ordinary differential equations using Mathematica. –  Fabian Jun 6 '12 at 17:03
@ Fabian, thank you for suggestion, if you have idea, write it. –  George Mills Jun 9 '12 at 8:05
add comment

1 Answer

up vote 3 down vote accepted

Your equations are:

q = qq[x, y]; p = pp[x, y];

r1 = -a D[q, {x, 2}] +b D[p, {x, 3}] +c D[q, {x, 0}] -c D[p, {x, 1}] + d D[q, {y , 2}] == 0;

s1 = -b D[q, {x, 3}] +e D[p, {x, 4}] -c D[q, {x, 1}] +c D[p, {x, 2}] - f D[p, {y , 2}] == 0;

then declare:

rule = Flatten[{#[x, y] -> #, Derivative[n_, m_][#][x_, y_] -> # x^n y^m} & /@ {pp, qq}];
invRule = (x_ -> y_) :> y Derivative[Sequence @@ x][pp];


t = Total[CoefficientRules[Eliminate[{r1, s1} /. rule, qq] /. (x_ == y_) -> (x - y), {x, y}] 
      /. pp -> 1 /. invRule] == 0;

t // StandardForm // TeXForm

$c f \text{pp}^{(0,2)}+d f \text{pp}^{(0,4)}+(-c d-a f) \text{pp}^{(2,2)}+(a c-c e) \text{pp}^{(4,0)}-d e \text{pp}^{(4,2)}+\left(-b^2+a e\right) \text{pp}^{(6,0)}=0$

share|improve this answer
It is ok, but how to do that if I have three variables, for example, I need to eliminate to variables –  George Mills Dec 7 '12 at 0:21
Code is working when I am using for eliminating from 3 eqs, but how when I have 4. i used your steps: link mathematica.stackexchange.com/questions/15949/… –  George Mills Dec 20 '12 at 23:34
add comment

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.