Expanded the ability to solve nonlinear 2nd order ODEs, perform differential elimination, and solve PDEs with Boundary Conditions - Maple Programming Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : System : Information : Updates : Maple 2018 : updates/Maple2018/DifferentialEquations

Expanded the ability to solve nonlinear 2nd order ODEs, perform differential elimination, and solve PDEs with Boundary Conditions

For Partial differential equations with boundary condition (PDE and BC) see the corresponding what's new in Partial Differential Equations with Boundary Conditions. What follows below describes the novelties in solving nonlinear Ordinary Differential Equations of second order, as well as the new differential elimination package DifferentialThomas.

 

Nonlinear Ordinary Differential Equations of 2nd order that do not admit Lie point symmetries

New DifferentialThomas package for performing differential elimination

Nonlinear Ordinary Differential Equations of 2nd order that do not admit Lie point symmetries

 

Maple 2018 continues to push the frontiers in differential equation solving and extends its lead in computing closed-form solutions to differential equations, adding even more classes of problems that can be handled. The four new ODE classes solvable in this release do not admit point symmetries. The method used is based on the S-function method (see dsolve/references) and a generalization of it to classes of equations with infinitely many members.

 

Examples

 

To display special functions using textbook notation, use extended typesetting and enable the typesetting of mathematical functions.

 

interfacetypesetting = extended: Typesetting:-EnableTypesetRuleTypesetting:-SpecialFunctionRules:

 

Representatives of the four classes are as follows

PDEtools:-declareyx, prime=x

yxwill now be displayed asy

derivatives with respect toxof functions of one variable will now be displayed with '

(1)

ode1  diffyx, x, x = diffyx, xx44  x3+yxx4+yx

diffdiffyx,x,x=diffyx,xx44x3+yxx4+yx

(2)

sol1   dsolveode1

yx=x4expx+_C1x4_C14x3ln1expx_C1_C1+12x2polylog2,expx_C1_C1+24xpolylog3,expx_C1_C1+24polylog4,expx_C1_C1+_C2expx_C1

(3)

odetestsol1,ode1

0

(4)

To verify that ode[1] does not admit point symmetries, construct the determining system and solve it

PDEtools:-declarexi,etax,y

xix,ywill now be displayed asξ

etax,ywill now be displayed asη

(5)

DEtoolsgensysode1, xi,etax,y

diffdiffξx,y,y,yx4+y2,diffdiffηx,y,y,yx4+y22diffdiffξx,y,x,yx4+y2+2x4+yx44x3+ydiffξx,y,y,4x44x3+yξx,yx3+2diffdiffηx,y,x,yx4+y2diffdiffξx,y,x,xx4+y2+x4+yx44x3+ydiffξx,y,x+x4+y4x312x2ξx,y+ηx,yx4+yηx,yx44x3+y,diffdiffηx,y,x,xx4+y2+x4+yx44x3+ydiffηx,y,x

(6)

In this easy case, it suffices to run a differential elimination round (see PDEtools:-casesplit) to verify, without actually solving the PDE system (6), that in only admits trivial solutions, i.e. no point symmetries

PDEtools:-casesplit

casesplit/ansξx,y=0,ηx,y=0,

(7)

A representative of Non Point Symmetries Class II

ode2  diffdiffyx,x,x=x+2diffyx,x2+x2xyxdiffyx,x+yxx+1x2+yx

diffdiffyx,x,x=x+2diffyx,x2+x2xyxdiffyx,x+yxx+1x2+yx

(8)

sol2   dsolveode2

yx=Int_C1xexpIntexpxexpxx_C1,xexpxx_C1,x+_C2expIntexpxexpxx_C1,x

(9)

odetestsol2,ode2

0

(10)

Representatives of the other classes

ode3 diffdiffyx,x,x=2xyx+2diffyx,x2+yx2yxdiffyx,xyx3x+1yxxyx+1

diffdiffyx,x,x=2xyx+2diffyx,x2+yx2yxdiffyx,xyx3x+1yxxyx+1

(11)

sol3   dsolveode3

yx=expxlnexpx_C1_C1expxx_C1lnexpx_C1_C1x+dilogexpx_C1_C1expxdilogexpx_C1_C1_C1+lnexpx_C1expxlnexpx_C1_C1+expx_C2expxx_C2_C1

(12)

odetestsol3,ode3

0

(13)

ode4  diffdiffyx,x,x=diffyx,x1yx+diffyx,xx+1xyx+1

diffdiffyx,x,x=diffyx,x1yx+diffyx,xx+1xyx+1

(14)

sol4   dsolveode4

yx=Int_C1expdilogexpx_C1_C1expx_C1_C1xexpx_C1,x+_C2expdilogexpx_C1_C1expx+_C1_C1x

(15)

odetestsol4,ode4

0

(16)

 

New DifferentialThomas package for performing differential elimination

 

Previous Maple versions already include differential eliminations package, state-of-the-art, as DEtools[rifsimp] and DifferentialAlgebra, that use different methods to perform differential elimination, a key process towards decoupling a system of differential equations.

 

Maple 2018 adds a third elimination package, DifferentialThomas, which uses yet another method, in this way succeeding in triangularizing some nonlinear DE systems that cannot be handled in practical time by the previous two existing packages. Also, both DEtools[rifsimp] and DifferentialThomas when used through the PDEtools:-casesplit command admit a case time limit option. Combining different methods with a case-time-limit option is extremely useful in that branches of the splitting of nonlinear systems that cannot be handled in practical time by one package frequently can now be reconstructed and handled by the other one.

 

In addition, the new DifferentialThomas returns a disjoint decomposition of the given system, that is a decomposition where the solution of each case has no intersection with the solutions of the other cases (are not particular cases of the other other cases returned, as it may happen with the decompositions returned by DEtools[rifsimp] and DifferentialAlgebra)

 

Examples

withDifferentialThomas;

ComplementOfDecomposition,Display,Equations,Inequations,IntersectDecompositions,LinearCombination,NormalForm,PowerSeriesSolution,Ranking,ReducedForm,ThomasDecomposition,Tools

(17)

ODE  2  yx diffyx, x, xdiffyx, x23+32 diffyx, x, xxdiffyx, x, xdiffyx, x3

ODE2yxⅆ2ⅆx2yxⅆⅆxyx23+32ⅆ2ⅆx2yxxⅆ2ⅆx2yxⅆⅆxyx3

(18)

This is one of Kamke's book 2nd order nonlinear examples, and is now decomposed into five disjoint cases - the general and four singular cases. This problem cannot be decomposed with DEtools[rifsimp] or DifferentialAlgebra

 

When calling PDEtools:-casesplit, to indicate the use of the DifferentialThomas package, pass the package's name as additional argument (the same holds for RIF and DifferentialAlgebra)

PDEtools:-casesplitODE,DifferentialThomas

ⅆ2ⅆx2yx4=8yx3ⅆ2ⅆx2yx3+12yx2ⅆ2ⅆx2yx2ⅆⅆxyx26yxⅆ2ⅆx2yxⅆⅆxyx4+96ⅆ2ⅆx2yx3ⅆⅆxyxx2+ⅆⅆxyx696ⅆ2ⅆx2yx2ⅆⅆxyx2x+32ⅆ2ⅆx2yxⅆⅆxyx332x3&whereyx2+8x0,yx2+8x0,xⅆⅆxyx2yx0,ⅆⅆxyx0,512x3ⅆⅆxyx3768x2yxⅆⅆxyx2+27yx4ⅆⅆxyx48xyx2ⅆⅆxyx+1728x2ⅆⅆxyx64yx30,ⅆⅆxyx3=768x2yxⅆⅆxyx227yx4ⅆⅆxyx+48xyx2ⅆⅆxyx1728x2ⅆⅆxyx+64yx3512x3&whereyx2+8x0,yx2+8x0,ⅆⅆxyx=2yxx&whereyx0,yx2+8x0,ⅆⅆxyx=0&whereyx0,yx2=8x&where

(19)

nops

5

(20)

One can also call directly the package commands with a list of differential equations as first argument and the ranking set by the package's Ranking command

 

ThomasDecompositionODE,Rankingx, y

DifferentialSystem,DifferentialSystem,DifferentialSystem,DifferentialSystem,DifferentialSystem

(21)

for DifferentialSystem in   do      DisplayDifferentialSystem od;

32ⅆ2ⅆx2yx4x3+8yx3ⅆ2ⅆx2yx312yx2ⅆ2ⅆx2yx2ⅆⅆxyx2+6yxⅆ2ⅆx2yxⅆⅆxyx496ⅆ2ⅆx2yx3ⅆⅆxyxx2ⅆⅆxyx6+96ⅆ2ⅆx2yx2ⅆⅆxyx2x32ⅆ2ⅆx2yxⅆⅆxyx3=0,yx2+8x0,yx2+8x0,xⅆⅆxyx2yx0,ⅆⅆxyx0,yx0,512x3ⅆⅆxyx3768x2yxⅆⅆxyx2+27yx4ⅆⅆxyx48xyx2ⅆⅆxyx+1728x2ⅆⅆxyx64yx30

512x3ⅆⅆxyx3768x2yxⅆⅆxyx2+27yx4ⅆⅆxyx48xyx2ⅆⅆxyx+1728x2ⅆⅆxyx64yx3=0,yx2+8x0,yx2+8x0

xⅆⅆxyx2yx=0,yx0,yx2+8x0

ⅆⅆxyx=0,yx0

yx2+8x=0

(22)