Mathematica Stack Exchange is a question and answer site for users of Mathematica. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is there any possible way to write this equation of 4th order as a system of two diff equations of second order with two new variables and to do that automatically? statespace command is transforming it into first order

  eq=a1*X1[x] + a2*Derivative[2][X1][x]-Derivative[4][X1][x]; 
share|improve this question
This isn't an equation because it doesn't contain an Equal sign, only a =. – Jens Jan 30 '13 at 5:01
up vote 4 down vote accepted

For such manipulations it's sometimes useful to look at the derivatives as if they were powers of a differential operator, and then your expression becomes a polynomial in this operator.

Once you have the polynomial form, it is possible to apply functions such as Eliminate to achieve some automation.

First I define the equation to start with (adding an arbitrary righthand side rhs), then I replace Derivative patterns with appropriate powers of a symbolic operator dOp, leading to a new equation eqPoly:

Clear[X1, Y1]

eq = 
 a1*X1[x] + a2*Derivative[2][X1][x] - Derivative[4][X1][x] == rhs;

eqPoly = eq /. Derivative[n_][X1][x] :> dOp^n

(* ==> a2 dOp^2 - dOp^4 + a1 X1[x] == rhs *)

newEq = Eliminate[{eqPoly, dOp^2 == newOp}, dOp]

(* ==> -rhs + a1 X1[x] == -a2 newOp + newOp^2 *)

newEq /. {newOp^n_ :> Derivative[n][Y1][x], newOp :> Y1[x]}

(* ==> -rhs + a1 X1[x] == -a2 Y1[x] + (Y1^\[Prime]\[Prime])[x] *)

In newEq, I eliminate dOp using the second equation which defines the operator newOp that corresponds to the second derivative of the original function, also considered as an operator whose powers correspond to differentiations. The latter are re-introduced in the last step by replacing newOp with Y1[x], the new function, and similarly its derivatives.

The definition dOp^2 == newOp of the new function in the Eliminate step is equivalent to Derivative[2][X1][x] == Y1[x] in the new notation, which is the second equation of the coupled system.

share|improve this answer
in final equation I have -rhs + a1 X1[x] == -a2 Y1[x] + (Y1^[Prime][Prime])[x] two variables plus rhs unknowns, how to solve this? – Pipe Jan 30 '13 at 13:55
The problem is how to solve because I have two functions X1[x] and Y1[x] from the output. Firstly I have to solve Y1 and then back to the substitution Derivative[2][X1][x] == Y1[x], but how to solve Y1 – Pipe Jan 30 '13 at 14:27

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.