simplify overdetermined polynomially nonlinear PDE or ODE systems - Maple Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Differential Equations : Rif : DEtools/rifsimp

DEtools[rifsimp] - simplify overdetermined polynomially nonlinear PDE or ODE systems

Calling Sequence

rifsimp(system, options)

rifsimp(system, vars, options)

Parameters

system

-

list or set of polynomially nonlinear PDEs or ODEs (may contain inequations)

vars

-

(optional) list of the main dependent variables

options

-

(optional) sequence of options to control the behavior of rifsimp

Description

• 

The rifsimp function can be used to simplify or rework overdetermined systems of polynomially nonlinear PDEs or ODEs and inequations to a more useful form -- relative standard form. The rifsimp function does not solve PDE systems, but provides existence and uniqueness information, and can be used as a first step to their solution. As an example, inconsistent systems can be detected by rifsimp.

• 

Basically, given an input PDE system, and a list of dependent variables or constants to solve for, rifsimp returns the simplified PDE system along with any existence conditions required for the simplified system to hold.

• 

Detailed examples of the use of rifsimp for various systems (along with some explanation of the algorithm) can be found in rifsimp[overview].

• 

Other options are sometimes required along with the specification of the system and its solving variables. For common options, please see rifsimp[options], and for more advanced use, please see rifsimp[adv_options].

• 

For a description of all possible output configurations, see rifsimp[output].

Examples

1. Overdetermined Systems

As a first example, we have the overdetermined system of two equations in one dependent variable y(x).

sys1:=xⅆⅆxyx2ⅆ2ⅆx2yx22xⅆⅆxyxⅆ2ⅆx2yxyxⅆ3ⅆx3yx+xyx2ⅆ3ⅆx3yx2yxⅆ2ⅆx2yx+ⅆⅆxyx2=0,ⅆⅆxyxⅆ2ⅆx2yx+yxⅆ3ⅆx3yx+2yx2ⅆ2ⅆx2yx24yxⅆ2ⅆx2yxⅆⅆxyx2+2ⅆⅆxyx4=0

sys1:=xⅆⅆxyx2ⅆ2ⅆx2yx22xⅆⅆxyxⅆ2ⅆx2yxyxⅆ3ⅆx3yx+xyx2ⅆ3ⅆx3yx2yxⅆ2ⅆx2yx+ⅆⅆxyx2=0,ⅆⅆxyxⅆ2ⅆx2yx+yxⅆ3ⅆx3yx+2yx2ⅆ2ⅆx2yx24yxⅆ2ⅆx2yxⅆⅆxyx2+2ⅆⅆxyx4=0

(1)

Now call rifsimp.

withDEtools:

ans1:=rifsimpsys1

ans1:=tableSolved=ⅆ2ⅆx2yx=ⅆⅆxyx2yx,Pivots=yx0,Case=yx0,ⅆ3ⅆx3yx

(2)

We see that the system has been reduced (for the case y(x) not identically zero) to one much simpler equation that can now be handled with Maple's dsolve.

dsolveans1Solved,yx,explicit

yx=ⅇ_C1x_C2

(3)

In addition to assisting dsolve in obtaining exact solutions, the simplified form can be used in combination with the initialdata function to obtain the required initial data for the solved form.

id1:=initialdataans1Solved

id1:=tableFinite=yx0=_C1,Dyx0=_C2,Infinite=

(4)

In this case, it gives us the expected results for a second order ODE, but it can also calculate the required initial data for more complex PDE systems (see initialdata for more information). Numerical methods can now be successfully applied to the reduced system, with initial conditions of the type calculated by initialdata.

dsolveconvertans1Solved,set∪y0=1,Dy0=2,yx,numeric,output=Array0,0.25,0.5,0.75,1.0

xyxⅆⅆxyx0.1.2.0.2500000000000001.648721254011623.297442508023240.5000000000000002.718281358456285.436562716912570.7500000000000004.481687976095218.963375952190411.7.3890539480692114.7781078961384

(5)

Finally, we can also obtain a formal power series (Taylor series) for the local solution of this problem (see rtaylor for more information).

tay_ser:=rtaylorans1Solved,order=4

tay_ser:=yx=yx0+Dyx0xx0+12Dyx02xx02yx0+16Dyx03xx03yx02+124Dyx04xx04yx03

(6)

The above series is fully determined when given the initial data described earlier:

tay_ser:=rtaylorans1Solved,id1,order=4

tay_ser:=yx=_C1+_C2xx0+12_C22xx02_C1+16_C23xx03_C12+124_C24xx04_C13

(7)

2. Inconsistent Systems

rifsimp can often determine whether a system is inconsistent.

sys2:=xux,y2+2y2ux,y=0,ux,y3xux,y+x=0:

rifsimpsys2

tablestatus=system is inconsistent

(8)

3. Constrained Mechanical Systems

This example shows the use of rifsimp as a preprocessor for a constrained mechanical system (that is, a Differential-Algebraic Equation or DAE system). The method of Lagrange formulates the motion of a bead of nonzero mass m on a frictionless wire of shape Phi(x,y) under gravity as follows:

ConstrainedSys:=m0,Φxt,yt=0,mⅆ2ⅆt2xt=λtD1Φxt,yt,mⅆ2ⅆt2yt=λtD2Φxt,ytmg

ConstrainedSys:=m0,Φxt,yt=0,mⅆ2ⅆt2xt=λtD1Φxt,yt,mⅆ2ⅆt2yt=λtD2Φxt,ytmg

(9)

Note that a mass falling under gravity without air resistance corresponds to:

Φ:=x,y→0

Φ:=x,y→0

(10)

We pick the example of a pendulum, so the bead moves on a circular wire.

Φ:=x,y→x2+y21

Φ:=x,y→x2+y21

(11)

ConstrainedSys

m0,xt2+yt21=0,mⅆ2ⅆt2xt=2λtxt,mⅆ2ⅆt2yt=2λtytmg

(12)

Such constrained systems present great difficulties for numerical solvers. Of course, we could eliminate the constraint using polar coordinates, but in general this is impossible for mechanical systems with complicated constraints. For example, just replace the constraint with another function, so that the wire has a different shape.

Φ2:=x,y→x4+y41

Φ2:=x,y→x4+y41

(13)

(See Reid et al., 1996, given in the reference and package information page Rif). The pendulum is the classic example of such systems that have been the focus of much recent research due to their importance in applications.

SimpSys:=rifsimpConstrainedSys

SimpSys:=tableSolved=ⅆ2ⅆt2yt=2λtyt+mgm,ⅆⅆtλt=32gmⅆⅆtyt,ⅆⅆtxt=ytⅆⅆtytxt,Pivots=m0,xt0,yt10,yt+10,Constraint=gmyt3+ⅆⅆtyt2m+2λtyt2gmyt2λt=0,xt2+yt21=0,Case=xt0,ⅆⅆtxt,yt1yt+10,ⅆⅆtλt

(14)

initialdataSimpSys

tableFinite=λt0=_C1,xt0=_C2,yt0=_C3,Dyt0=_C4,g=_C5,m=_C6,Infinite=,Pivots=_C60,_C20,_C310,_C3+10,Constraint=_C33_C5_C6+2_C1_C32_C3_C5_C6+_C42_C62_C1=0,_C22+_C321=0

(15)

Although there is no simplification as in the previous examples, rifsimp has found additional constraints that the initial conditions must satisfy (Constraint and Pivots in the initialdata output), and obtained an equation for the time derivative of lambda(t). Maple's dsolve[numeric] can then be used to obtain a numerical solution, in the manner of the previous example.

4. Lie Symmetry Determination

This example shows the use of rifsimp to assist in determination of Lie point symmetries of an ODE. Given the ODE:

ODE:=2x2yxⅆ2ⅆx2yxx2ⅆⅆxyx2+1+yx2

ODE:=2x2yxⅆ2ⅆx2yxx2ⅆⅆxyx2+1+yx2

(16)

We can obtain the system of PDE for it's Lie point symmetries via:

sys:=coeffsnumerDEtools[odepde]ODE,ξ,ηx,y,yx,_y1

sys:=22y2ξx,yx3y2yξx,yx3y,22y2ηx,yx3y242yxξx,yx3y2yηx,yx3y+ηx,yx3,42yxηx,yx3y222x2ξx,yx3y23yξx,yx3y+3yξx,yxy32xηx,yx3y,22x2ηx,yx3y22xξx,yx3y+2xξx,yxy3+yηx,yx3yyηx,yxy3+ηx,yx3+ηx,yxy22ξx,yy3

(17)

We can then use rifsimp to greatly simplify this system:

rifsys:=rifsimpsys

rifsys:=tableSolved=2x2ηx,y=ξx,yyηx,yxx3,xξx,y=ηx,yy,yηx,y=ηx,yy,yξx,y=0

(18)

From this point, pdsolve can be used to obtain the infinitesimals for the Lie point symmetries via:

pdsolverifsys'Solved'

ηx,y=_C3lnx2+_C2lnx+_C1y,ξx,y=_C3lnx2+_C22_C3lnx+_C1_C2+2_C3x

(19)

See Also

checkrank, DifferentialAlgebra[RosenfeldGroebner], dsolve[numeric], initialdata, PDEtools[casesplit], Rif, rifsimp[adv_options], rifsimp[cases], rifsimp[nonlinear], rifsimp[options], rifsimp[output], rifsimp[overview], rifsimp[ranking]


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam