Differential Equations - Maple Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : System : Information : Updates : Maple 8 : Differential Equations

Updates to Differential Equation Solvers in Maple 8

  

Differential equations solving capabilities have been greatly enhanced in Maple 8 regarding exact and numeric DE solutions.

  

Exact Solutions

• 

New implementation of integrated factor methods added to dsolve

• 

Symmetry algorithms refined

• 

New routines for solving two parameterized Abel ODE classes added, further enhancing dsolve

• 

Improvements made in computation of hypergeometric solutions

• 

Algorithms for higher order ODEs enhanced

  

Numerical Solutions

• 

Maple can numerically solve time-based linear PDEs over rectangular domains.

• 

Maple numerical ODE solution capabilities include numerous additions and improvements

  

DEtools and PDEtools Packages

  

Also in Maple 8, the DEtools and PDEtools packages contain enhancements and new tool commands.

 

Exact Solutions: Ordinary Differential Equations

Enhancements in the DEtools and PDEtools Packages

Numerical Solution of PDE

Numerical Solution of ODE

Exact Solutions: Ordinary Differential Equations

  

Nonlinear ODEs

• 

The Maple dsolve command now includes a new implementation of integrating factor methods for systematically determining (when they exist) integrating factors of varied types for Ordinary Differential Equations. The integrating factor method is comparable with the symmetry method: both consist of transforming the nonlinear ODE problem into a overdetermined linear PDE system, the former searching for integrating factors - the cornerstone for reductions of order - and the latter searching for symmetry generators, with which reductions of order through changes of variables can be performed. The integrating factor approach implemented in Maple 8 can also perform multiple reductions of order in one step when more than one integrating factor is found. For nonlinear ODE problems, this combination of symmetry and integrating factor methods makes Maple's ODE solver unique among its peers.

  

Examples:

  

The integrating factor approach leads to special function solutions for various nonlinear ODE families.

PDEtools[declare](y(x), prime=x);

yxwill now be displayed asy

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

(1)

ode := diff(y(x), x$3) = (1/y(x)*diff(y(x),x)-2/x)*diff(y(x),x,x)+1/y(x)/x*diff(y(x),x)^2+1/x^3*y(x);

odey'''=y'y2xy''+y'2yx+yx3

(2)

sol := dsolve(ode);

soly=_C2BesselJ2I,2_C1x+_C3BesselY2I,2_C1x

(3)

odetest( sol, ode );

0

(4)
  

An example where the linearization process implicit in this approach is more transparent:

ode := diff(y(x),x,x,x) = 13/8/x^3*y(x) - 1/8*(-20*diff(y(x),x,x)*x^2 + 26*diff(y(x),x)*x)/x^3 - 1/8*(24*diff(y(x),x)*x^3*diff(y(x),x,x) - 20*diff(y(x),x)^2*x^2)/x^3/y(x);

odey'''=13y8x320x2y''+26y'x8x324y'y''x320y'2x28x3y

(5)
  

This nonlinear ODE example has three integrating factors, which are determined solving a related linear ODE. The integrating factors are then used simultaneously by the new Maple 8 ODE routines to reduce the ODE order by three in one step. To follow the solving process, you can turn ON the userinfo facility for dsolve.

infolevel[dsolve] := 4;

infoleveldsolve4

(6)

sol := dsolve(ode);

Methods for third order ODEs:
--- Trying classification methods ---
trying 3rd order ODE linearizable_by_differentiation
differential order: 3; trying a linearization to 4th order
trying differential order: 3; missing variables
trying differential order: 3; exact nonlinear
trying 3rd order, integrating factor of the form mu(y'') for some mu
Trying the formal computation of integrating factors depending on any 2 of [x, y, y', y'']
         *** Sublevel 2 ***
         Methods for first order ODEs:
         --- Trying classification methods ---
         trying a quadrature
         trying 1st order linear
         <- 1st order linear successful
-> Calling odsolve with the ODE, 4*diff(diff(diff(y(x),x),x),x)*x^3+10*diff(diff(y(x),x),x)*x^2-7*diff(y(x),x)*x+7*y(x), y(x)
   *** Sublevel 2 ***
   Methods for third order ODEs:
   --- Trying classification methods ---
   trying a quadrature
   checking if the LODE has constant coefficients
   checking if the LODE is of Euler type
   <- LODE of Euler type successful
Successful computation of 3 integrating factors: [y(x)*x, x^(-1/4+1/4*29^(1/2))*y(x), x^(-1/4-1/4*29^(1/2))*y(x)]
Attempting computing related first integrals...
<- high order, formal computation of integrating factors successful

soly=2145x94294_C229+14529x94+294_C3841x94294_C2841x94+294_C3+1682_C1x29,y=2145x94294_C229+14529x94+294_C3841x94294_C2841x94+294_C3+1682_C1x29

(7)
• 

For second order nonlinear ODEs, the symmetry algorithms introduced in Maple 7 have been refined, now leading to simpler solutions in varied cases.

  

Example:

  

The following ODE is from Kamke's book. Two nontrivial symmetries for it are found by dsolve routines leading to a solution in terms of Jacobi elliptic functions (note the use of the new dsolve option useint).

PDEtools[declare](f(x));

fxwill now be displayed asf

(8)

ode := 2*diff(y(x),x,x)*y(x) - diff(y(x),x)^2 - 6*diff(f(x),x,x)/diff(f(x),x)*y(x)*diff(y(x),x) + 2*(-2*diff(f(x),x,x,x)/diff(f(x),x)+6*diff(f(x),x,x)^2/diff(f(x),x)^2)*y(x)^2-8*y(x)^3 = 0;

ode2y''yy'26f''yy'f'+22f'''f'+6f''2f'2y28y3=0

(9)

sol := dsolve(ode, y(x), useint);

Methods for second order ODEs:--- Trying classification methods ---
trying 2nd order Liouville
trying 2nd order WeierstrassP
trying 2nd order JacobiSN
differential order: 2; trying a linearization to 3rd order
trying 2nd order ODE linearizable_by_differentiation
trying 2nd order, 2 integrating factors of the form mu(x,y)
trying differential order: 2; missing variables
-> trying 2nd order, dynamical_symmetries, fully reducible to Abel through one integrating factor of the form G(x,y)/(1+H(x,y)*y')^2
   --- trying a change of variables {x -> y(x), y(x) -> x} and re-entering methods for dynamical symmetries ---
   -> trying 2nd order, dynamical_symmetries, fully reducible to Abel through one integrating factor of the form G(x,y)/(1+H(x,y)*y')^2
trying 2nd order, integrating factors of the form mu(x,y)/(y')^n, only the singular cases
trying symmetries linear in x and y(x)
trying differential order: 2; exact nonlinear
trying 2nd order, integrating factor of the form mu(y')
trying 2nd order, integrating factor of the form mu(x,y')
trying 2nd order, integrating factor of the form mu(x,y)/(y')^n, only the general case
trying 2nd order, integrating factor of the form mu(y,y')
trying differential order: 2; mu polynomial in y'
trying 2nd order, integrating factor of the form mu(x,y)
differential order: 2; looking for linear symmetries
-> trying 2nd order, the S-function method
   -> trying a change of variables {x -> y(x), y(x) -> x} and re-entering methods for the S-function
   -> trying 2nd order, the S-function method
   -> trying 2nd order, No Point Symmetries Class V
      --- trying a change of variables {x -> y(x), y(x) -> x} and re-entering methods for dynamical symmetries ---
      -> trying 2nd order, No Point Symmetries Class V
   -> trying 2nd order, No Point Symmetries Class V
      --- trying a change of variables {x -> y(x), y(x) -> x} and re-entering methods for dynamical symmetries ---
      -> trying 2nd order, No Point Symmetries Class V
   -> trying 2nd order, No Point Symmetries Class V
      --- trying a change of variables {x -> y(x), y(x) -> x} and re-entering methods for dynamical symmetries ---
      -> trying 2nd order, No Point Symmetries Class V
trying 2nd order, integrating factor of the form mu(x,y)/(y')^n, only the general case
-> trying 2nd order, dynamical_symmetries, only a reduction of order through one integrating factor of the form G(x,y)/(1+H(x,y)*y')^2
   --- trying a change of variables {x -> y(x), y(x) -> x} and re-entering methods for dynamical symmetries ---
   -> trying 2nd order, dynamical_symmetries, only a reduction of order through one integrating factor of the form G(x,y)/(1+H(x,y)*y')^2
--- Trying Lie symmetry methods, 2nd order ---
   -> Computing symmetries using: way = 3
   -> Computing symmetries using: way = 5

   <- successful computation of symmetries.2nd order, symmetry integrators to be used are: [can, can2, gon]
2nd order, trying integration using method can
-> Computing canonical coordinates for the symmetry [1/diff(f(x),x), 2/diff(f(x),x)^2*diff(diff(f(x),x),x)*y]
   -> Calling odsolve with the ODE, diff(y(x),x) = 2*diff(diff(f(x),x),x)/diff(f(x),x)*y(x), y(x)
      *** Sublevel 2 ***
      Methods for first order ODEs:
      --- Trying classification methods ---
      trying a quadrature
      trying 1st order linear
      <- 1st order linear successful
-> Rewriting ODE in canonical coordinates by means of differential invariants
Try computing 1 more symmetries for ODE written in canonical coordinates
   -> Computing symmetries using: way = 3
   Found another symmetry:

Computing a convenient ordering to use the 2 symmetries availableTry integration with the canonical coordinates of the symmetry [1/diff(f(x),x), 2/diff(f(x),x)^2*diff(diff(f(x),x),x)*y]
-> Calling odsolve with the ODE, diff(_b(_a),_a) = -1/2*_b(_a)*(8*_b(_a)^2*_a^3+1)/_a, _b(_a), explicit, HINT = [[_a, -3/2*_b]]
   *** Sublevel 2 ***
   symmetry methods on request
   1st order, trying reduction of order with given symmetries:

   1st order, trying the canonical coordinates of the invariance group-> Computing canonical coordinates for the symmetry [_a, -3/2*_b]
      -> Calling odsolve with the ODE, diff(y(x),x) = -3/2*y(x)/x, y(x)
         *** Sublevel 3 ***
         Methods for first order ODEs:
         --- Trying classification methods ---
         trying a quadrature
         trying 1st order linear
         <- 1st order linear successful
   -> The canonical coordinates may not have unique inverse.
      Trying gauging the symmetry to the form [0, eta(x,y)]
   -> Computing canonical coordinates for the symmetry [0, 4*_a^3*_b^3-_b]
   <- 1st order, canonical coordinates successful
<- differential order: 2; canonical coordinates successful

1f'&comma;2f''yf'2

ff'&comma;2yf''ff'22y

_a&comma;3_b2

soly=f'2JacobiSN_C1_C2+f&comma;2221_C122

(10)

map(odetest, {sol}, ode);

0

(11)
• 

New routines for solving two parameterized Abel ODE classes were added. This further enhances the top-level performance of Maple 7 dsolve in tackling ODEs of this type, that is, of the form y&apos;=fxy3+gxy2+hxy+jx. The two integrable classes are based on recent work.

  

Examples:

  

New Abel solvable class with solutions expressed using hypergeometric 0F1 (Bessel) functions:

infolevel[dsolve] := 0:

ode := diff(y(x),x) = 1/2*(x^2-x-1)/(x+1)^2/x^2*y(x)^3-1/2*(3*x+2)/x^2/(x+1)*y(x)^2;

odey'=x2x1y32x+12x23x+2y22x2