Ordinary and Partial Differential Equations - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : System : Information : Updates : Maple 2020 : Ordinary and Partial Differential Equations

Ordinary and Partial Differential Equations

Maple is the world leader in finding exact solutions to ordinary and partial differential equations. Maple 2020 extends that lead even further with new algorithms and techniques for solving more ODEs and PDEs, including general solutions, and solutions with initial conditions and/or boundary conditions.

For Maple 2020, there are significant improvements both in dsolve and in pdsolve for the exact solution of ODEs and PDEs, with and without initial or boundary conditions.

For ODEs, a new algorithm for computing hypergeometric solutions to 2ndorder linear ODEs is capable of solving new classes of problems that were previously out of reach.

For PDEs, improvements include a significantly extended ability to solve problems with boundary and initial conditions, also using integral Mellin and Hankel transforms, and two new methods for finding general PDE solutions, by mapping the PDE onto an ODE with auxiliary functions and by using decomposition into first integrals. As well, when the PDE depends on parameters, new symmetry techniques allow you to compute parameterized symmetries and to reduce the number of these parameters, something frequently convenient in different contexts.

 

Hypergeometric solutions for second-order linear ODEs

Exact solutions to PDEs with Boundary / Initial conditions

Mellin and Hankel transform solutions for PDE with Boundary Conditions

A general solution to a PDE calculated via rewriting the PDE as an ODE with arbitrary auxiliary functions

Solving a PDE by making use of first integrals

PDE parameterized symmetries

Parameter-continuous symmetry transformations

Hypergeometric solutions for second-order linear ODEs

 

Previous Maple releases already have algorithms for computing hypergeometric solutions for linear ODEs. The new algorithms implemented in Maple 2020, however, are more general. Suppose an ODE admits solutions of the form

 

yx = r__0xYx+r__1xY 'x

 

where r__0x and r__1x are rational functions of x, and Yxis the solution of some other linear ODE. Then the new algorithm can compute that other linear ODE and solve it, provided that it admits solutions of the form

 

Yx=ⅇrxⅆxF12a,b;c;fx

 

where rx and fx are rational functions of x, F12 is the hypergeometric function and a, b, and c are arbitrary constants. The new algorithms use modular reduction, Hensel lifting, rational function reconstruction, and rational number reconstruction.

 

This algorithm is more general than previous algorithms in that it has no restrictions neither on the degree of the pullback function fx nor the number of singularities of the input equation. The implementation follows the presentation by Imamoglu, E. and van Hoeij, M. "Computing Hypergeometric Solutions of Second Order Linear Differential Equations using Quotients of Formal Solutions and Integral Bases", Journal of Symbolic Computation, 83, (2017): 254-271.

 

Examples

A problem that admits solutions of the form Yx=ⅇrxⅆxF12a,b;c;fx

restart;

ode__1  ⅆ2ⅆx2yx+424x21ⅆⅆxyxx16x21 +2192x356x26x+1yxx24x116x21= 0:

dsolveode__1

yx=_C1F1212,12;1;4x+124x12x2+_C2F1212,32;2;16x4x12x4x12

(1)

An example where the solutions are of the form yx = r__0xYx+r__1xY 'x

ode__2  ⅆ2ⅆx2yx+2112x3168x2+73x9ⅆⅆxyxx1+2x16x216x+3+4576x51024x4+488x315x227x+3yx1+2x2x21+4x16x216x+3=0:

dsolveode__2

yx=_C14x+1F1212,12;1;16x22x1x2+16x2+1F1232,32;2;16x22x3x2+_C24x+1F1212,12;1;16x2+12x1x2+16x21F1232,32;2;16x2+12x3x2

(2)

An example with a parameter a in the coefficients

ode__3ax+1ⅆ2ⅆx2yx+288ax418+432a+224x3+190a336x2+24a+146xⅆⅆxyx32x448x3+22x23x+4096ax6+12+7232a+2304x5+3568a4096x4+160a+1952x3+218a60x2+30a108xyx2x12x24x+116x216x+3=0:

dsolveode__3

yx=_C14x34F1232,32;2;16x2xF1232,32;2;16x2+F1212,12;1;16x216x214x12x1ax+1x232x348x2+22x3+_C24x34F1232,32;2;16x2+1x+F1212,12;1;16x2+1+F1232,32;2;16x2+116x214x12x1ax+1x232x348x2+22x3

(3)

Verify this solution

 

odetest,ode__3

0

(4)

Some ODEs with 4 regular singular points that can be solved in terms of HeunG functions can also be solved using the new algorithm. This is possible whenever through a gauge transformation one of the singularities can be removed. The following ODE is of that kind, and the default solution returned by dsolve is in terms of HeunG

 

ode__4  ⅆ2ⅆx2yx+x444x3+1206x244x+1yx4x234x+12x2=0:

dsolveode__4

yx=_C1xx2+34x134HG24217+122,336225417+122317+1222,32,32,32,1,x17+12217+122+_C2xx+17+122x2+34x114HG24217+122,62617+122317+1222,1,1,12,1,x17+12217+122

(5)

To get a solution in terms of hypergeometric functions you can indicate the method to be used, in this case the new method hypergeometricsols

 

dsolveode__4,hypergeometricsols

yx=_C1ⅇx3+6x234x+1x+15x2+51x1x234x+1xx+1ⅆx2F1213,23;1;x3+30x224x+1+x27x+1x234x+12x+13+_C2ⅇx3+6x234x+1x+15x2+51x1x234x+1xx+1ⅆx2F1213,23;1;x2+7x1x234x+1+x324x2+30x+12x+13

(6)

The integrals can actually be computed

 

value

yx=_C1ⅇarctanh3636x12x+1236x2+lnx234x+14lnx+12+lnx2F1213,23;1;x3+30x224x+1+x27x+1x234x+12x+13+_C2ⅇarctanh3636x12x+1236x2+lnx234x+14lnx+12+lnx2F1213,23;1;x2+7x1x234x+1+x324x2+30x+12x+13

(7)

Verify this solution

 

odetest,ode__4

0

(8)

Exact solutions to PDEs with Boundary / Initial conditions

Maple 2019 included a significant leap in the computation of exact solutions for PDE with Boundary / Initial conditions. For Maple 2020, another jump ahead in the solving capabilities happened. The examples below belong to different classes of problems out of reach of the Maple 2019 developments.

 

Examples

 

An example where the solution involves products of Bessel and Hankel functions

pde__1tur,t=2r2ur,t+rur,tr:

iv__1ur,0=1r,u1,t=0:

pdsolvepde__1,iv__1

ur&comma;t&equals;casesplit/ansSumBesselJ0&comma;&lambda;nr&pi;BesselJ1&comma;&lambda;nStruveH0&comma;&lambda;nBesselJ0&comma;&lambda;nStruveH1&comma;&lambda;nsinh&lambda;n2tcosh&lambda;n2t&lambda;n2BesselJ0&comma;&lambda;n2&plus;BesselJ1&comma;&lambda;n2&comma;n&equals;1..&infin;&comma;And&lambda;n&equals;BesselJZeros0&comma;n&comma;0<&lambda;n

(9)

 

A similar problem but in three variables; the solution is a double infinite sum

pde__2tur&comma;z&comma;t=2r2ur&comma;z&comma;t+rur&comma;z&comma;tr+2z2ur&comma;z&comma;t&colon;

iv__2ur&comma;0&comma;t=0,ur&comma;1&comma;t=0,u1&comma;z&comma;t=0,ur&comma;z&comma;0=fr&comma;z&colon;

pdsolvepde__2&comma;iv__2

ur&comma;z&comma;t&equals;casesplit/ansSumSum4BesselJ0&comma;&lambda;n1rsinn&pi;zexpt&pi;2n2&plus;&lambda;n12IntBesselJ0&comma;&lambda;n1rrIntsinn&pi;zfr&comma;z&comma;z&equals;0..1&comma;AllSolutions&comma;r&equals;0..1&comma;AllSolutionshypergeom12&comma;1&comma;2&comma;&lambda;n12&comma;n&equals;1..&infin;&comma;n1&equals;1..&infin;&comma;And&lambda;n1&equals;BesselJZeros0&comma;n1&comma;0&lambda;n1

(10)

 

A large number of new infinite series solutions are now computable for different classes of problems (the number of boundary or initial conditions, whether they are periodic or involve derivatives of the unknown, etc.)

 

pde__32t2ux&comma;t=42x2ux&comma;t&colon;

iv__3ux&comma;0=0,D2ux&comma;0=sinx2,uπ&comma;t=0,uπ&comma;t=0&colon;

pdsolvepde__3&comma;iv__3

ux&comma;t=315n=516sinnx+π2sinnt−1n1πn2n216π160cos3x2sin3t+672cosx2sint315π

(11)

pde__42x2ux&comma;y+2y2ux&comma;y=0&colon;

iv__4u0&comma;y=0,ux&comma;1=A,ux&comma;0=0&colon;

pdsolvepde__4&comma;iv__4&comma;HINT=boundedseriesx=assuming0<x,0<y

ux&comma;y=Ay+n=12−1nA&ExponentialE;nπxsinnπynπ

(12)

pde__5tut&comma;x=2x2ut&comma;x&colon;

iv__5u0&comma;x=1,ut&comma;1=0,ut&comma;1=0&colon;

pdsolvepde__5&comma;iv__5

ut&comma;x=n=12&ExponentialE;π2n2t4sinnπx+12−1n1nπ

(13)

 

An example with periodic conditions in both the unknown and its first derivative, where different methods combine resulting in a solution involving an arbitrary function of x

 

pde__6tux&comma;t=2x2ux&comma;t&colon;

iv__6uπ&comma;t=uπ&comma;t,D1uπ&comma;t=D1uπ&comma;t&colon;

pdsolvepde__6&comma;iv__6

ux&comma;t=2n=1&ExponentialE;n2tππ_F1xsinnx&DifferentialD;xsinnx+ππ_F1xcosnx&DifferentialD;xcosnxππ+ππ_F1x&DifferentialD;x2π

(14)

 

The detection of particular values of the summation index for which the solution branches with a different expression is now better:

 

pde__72t2ux&comma;t+2tux&comma;t=2x2ux&comma;t&colon;

iv__7D2ux&comma;0=0,ux&comma;0=fx,u0&comma;t=0,uπ&comma;t=0&colon;

pdsolvepde__7&comma;iv__7&comma;ux&comma;tassuming0<t

ux&comma;t=n=12&ExponentialE;tt+10πsinxfx&DifferentialD;xsinxπn=11+n2+1&ExponentialE;n2+1+1t+&ExponentialE;1+n2+1tn2+1+10πsinnxfx&DifferentialD;xsinnxn2+1πotherwise

(15)

 

A problem with two boundary and two initial conditions, all for the unknown ur&comma;t, where the solution method consists of splitting the problem into two PDE & BC problems and the solution is the sum of those two solutions

 

pde__82r2ur&comma;t+rur&comma;tr+2t2ur&comma;tr2=0&colon;

iv__8ur&comma;π6=π6,ur&comma;π2=0,u1&comma;t=0,u2&comma;t=t&colon;

pdsolvepde__8&comma;iv__8

ur&comma;t=n1=1r3n1+r3n18n1−1n113sinn16t+π264n11n1+n=1−1n1sinnπlnrln2&ExponentialE;nπ7π6t6ln2&ExponentialE;nπ6t+π6ln23n&ExponentialE;nπ2ln2&ExponentialE;nπ23ln2

(16)

 

Similar example, but involving conditions for the two first derivatives of the unknown ur&comma;t

 

pde__92r2ur&comma;t+rur&comma;tr+2t2ur&comma;tr2=0&colon;

iv__9ur&comma;π6=π6,D2ur&comma;π2=0,u1&comma;t=0,D1u2&comma;t=t&colon;

pdsolvepde__9&comma;iv__9

ur&comma;t=n1=016cos12t2πn14+3t2+π4r32+3n1+r323n1π+4−1n123n1+12+232+3n1πn1926n1+6n13+96n12+48n1+864n1+812+n13π+n=02sin1+2nπlnr2ln2&ExponentialE;1+2nπ6t+5π12ln2+&ExponentialE;6t+π1+2nπ12ln231+2n&ExponentialE;1+2nπ23ln2+1

(17)

 

A problem with initial conditions involving arbitrary functions evaluated at algebraic expressions, as fx&comma;a2b2, and boundary conditions that are periodic as ua&comma;t=ub&comma;t

 

pde__10tux&comma;t=k2x2ux&comma;t&colon;

iv__10ux&comma;0=fx&comma;a2b2,ua&comma;t=ub&comma;t,aua&comma;t=bub&comma;t&colon;

pdsolvepde__10&comma;iv__10&comma;ux&comma;tassuminga<b

ux&comma;t=b+an=12&ExponentialE;4kπ2n2tb+a2abfx&comma;a2b2sin2nπx+ab+a&DifferentialD;xsin2nπx+ab+a+abfx&comma;a2b2cos2nπx+ab+a&DifferentialD;xcos2nπx+ab+ab+aabfx&comma;a2b2&DifferentialD;xb+a

(18)

 

Similar problem involving an arbitrary function in the initial conditions

 

pde__11tυξ&comma;t=k2ξ2υξ&comma;t&colon;

iv__11D1υa&comma;t=0,υl+a&comma;t=0,υξ&comma;0=fξ&comma;a&colon;

pdsolvepde__11&comma;iv__11&comma;&upsilon;&xi;&comma;tassuming0<a,0<l

υξ&comma;t=n=02cos1+2nπξ+a2l&ExponentialE;kπ21+2n2t4l2al+afξ&comma;acos1+2nπξ+a2l&DifferentialD;ξl

(19)

 

Some simple, however tricky problems with nonlinear boundary conditions

 

pde__122r2ur&comma;t&colon;

iv__12D1u0&comma;t+D1u0&comma;tu0&comma;t=0&colon;

pdsolvepde__12&comma;iv__12

ur&comma;t=_C2,ur&comma;t=_C1r1

(20)

 

Problems with more than one evaluation point for the same variable, periodic, or involving piecewise initial conditions

 

pde__132t2υξ&comma;y&comma;t=2ξ2υξ&comma;y&comma;t+2y2υξ&comma;y&comma;t&colon;

iv__13&upsilon;π3&comma;y&comma;t=0,υ4π3&comma;y&comma;t=0,υξ&comma;0&comma;t=0,υξ&comma;π&comma;t=0,D3υξ&comma;y&comma;0=0,υξ&comma;y&comma;0=ξπ34π3ξyπy&colon;

pdsolvepde__13&comma;iv__13

υξ&comma;y&comma;t=n1=1n=116−1n1+n+−1n1+−1n1sinnπ3ξ3sinn1ycosn2+n12tπ2n3n13

(21)

pde__142t2ux&comma;t+4πtux&comma;t3=162x2ux&comma;t&colon;

iv__14u0&comma;t=0,D1u3&comma;t=0,D2ux&comma;0=0,ux&comma;0=x100xandx11101<xandx3&colon;

pdsolvepde__14&comma;iv__14

ux&comma;t=n=04sinπx6&ExponentialE;2πt3πt+325π2n=033sinπn3+cosπn3sin1+2nπx62nn+1+I&ExponentialE;2I3π2nn+1+It&ExponentialE;2I3π2nn+1+It2nn+1+I10n+1nπ21+2n2otherwise

(22)

 

 

Mellin and Hankel transform solutions for PDE with Boundary Conditions

In previous Maple releases, the Fourier and Laplace transforms were used to compute exact solutions to PDE problems with boundary conditions. Now, Mellin and Hankel transforms are also used for that same purpose.

 

Examples:

restart&semi;

pde__1x22x2ux&comma;y+xxux&comma;y+2y2ux&comma;y=0&colon; iv__1ux&comma;0=0,ux&comma;1=10xandx<101<x&colon;

sol  pdsolvepde__1&comma;iv__1

ux&comma;y&equals;invmellinsinsysinss&comma;s&comma;x

(23)


As usual, you can let pdsolve choose the solving method, or indicate the method yourself:

pde__22r2ur&comma;t+rur&comma;tr+2t2ur&comma;t=Q__0qr&colon; iv__2ur&comma;0=0&colon;

pdsolvepde__2&comma;iv__2

ur&comma;t&equals;Q__0hankelexpsthankelqr&comma;r&comma;s&comma;0s2&comma;s&comma;r&comma;0&plus;hankelhankelqr&comma;r&comma;s&comma;0s2&comma;s&comma;r&comma;0

(24)

It is sometimes preferable to see these solutions in terms of more familiar integrals. For that purpose, use

convert&comma;Int&comma; only&equals;hankel

ur&comma;t=Q__00&ExponentialE;st0qrrJ0rs&DifferentialD;rJ0rss&DifferentialD;s+00qrrJ0rs&DifferentialD;rJ0rss&DifferentialD;s

(25)

An example where the hankel transform is computed:

pde__3c22r2ur&comma;t+rur&comma;tr=2t2ur&comma;t&colon;iv__3ur&comma;0=Aaa2+r212,D2ur&comma;0=0&colon;

pdsolvepde__3&comma; iv__3&comma;method&equals;Hankel assuming r &gt; 0&comma; t &gt; 0&comma; a &gt; 0

ur&comma;t=Aac2t2+2Iact+a2+r2+c2t22Iact+a2+r22c2t22Iact+a2+r2c2t2+2Iact+a2+r2

(26)

A general solution to a PDE calculated via rewriting the PDE as an ODE with arbitrary auxiliary functions

 

Under certain conditions, it is possible to rewrite a PDE as an ODE for one unknown and some auxiliary arbitrary functions. When that is possible, the solving process involves as many steps as there are independent variables in the PDE. Each step consists of solving only a single intermediate ODE (and no PDEs). In this way, a general solution is obtained for the original PDE.

 

Below are four examples, all of them nonlinear. For the 4th one the solving method is shown step by step.

 

Example 1:

restart&semi;

pde__12txwt&comma;xaxwt&comma;x2wt&comma;xtwt&comma;xwt&comma;x+b+cwt&comma;xxwt&comma;xctwt&comma;x2awt&comma;xkwt&comma;xbc2ac24awt&comma;x&colon;

pdsolvepde__1&semi;

wt&comma;x=c&ExponentialE;2k_F1x4ka+b2+&ExponentialE;4ka+b2t4_F1xak_F1xb2+_F1x4ka+b2b+&ExponentialE;4ka+b2tb+4ka+b2&ExponentialE;4ka+b2t&DifferentialD;x2a&DifferentialD;x+_F2t&ExponentialE;2k_F1x4ka+b2+&ExponentialE;4ka+b2t4_F1xak_F1xb2+_F1x4ka+b2b+&ExponentialE;4ka+b2tb+4ka+b2&ExponentialE;4ka+b2t&DifferentialD;x

(27)

Example 2:

pde__2wt&comma;x34t2x2wt&comma;x2wt&comma;x2twt&comma;x3tx2wt&comma;x+xwt&comma;x3t2xwt&comma;x2wt&comma;x2txwt&comma;x2twt&comma;xxwt&comma;x2+2wt&comma;x2x2wt&comma;x+xwt&comma;x2twt&comma;x2wt&comma;x2t2wt&comma;xwt&comma;x2x2wt&comma;x2xwt&comma;x2&colon;

pdsolvepde__2&semi;

wt&comma;x=_F4t&ExponentialE;_F1xt_F2x_F3tx

(28)

Example 3:

pde__34 5t3x2yx&comma;ttyx&comma;t+64t2x2yx&comma;t2t2yx&comma;t+43tx2yx&comma;t3t3yx&comma;t+2x2yx&comma;t4t4yx&comma;t+63t2xyx&comma;t2+82txyx&comma;t4t3xyx&comma;t+2xyx&comma;t5t4xyx&comma;t+yx&comma;t6t4x2yx&comma;t&colon;

pdsolvepde__3&semi;

yx&comma;t=RootOf_F1xt36_F2xt26_F3xt+6_F5tx+3_Z26_F4x3_F6t

(29)

Example 4

pde__43txzEt&comma;x&comma;zEt&comma;x&comma;z2xzEt&comma;x&comma;ztEt&comma;x&comma;zEt&comma;x&comma;z22txEt&comma;x&comma;zzEt&comma;x&comma;zEt&comma;x&comma;z2xEt&comma;x&comma;z2tzEt&comma;x&comma;zEt&comma;x&comma;z2+2xEt&comma;x&comma;zzEt&comma;x&comma;ztEt&comma;x&comma;zEt&comma;x&comma;z3&colon;

Step-by-step solving process for pde__4

 

Step 1. pde__4 can be written as an ODE with respect to t by taking the derivatives of Et&comma;x&comma;zwith respect to x and z as auxiliary arbitrary functions of t according to

auxiliary_functions A__xt=xEt&comma;x&comma;z&comma;A__zt=zEt&comma;x&comma;z&comma;A__xzt=2xzEt&comma;x&comma;z&comma;E__0t=Et&comma;x&comma;z&colon;

 

The resulting ODE is

ODE__t&DifferentialD;&DifferentialD;tA__xztE__0tA__xzt&DifferentialD;&DifferentialD;tE__0tE__0t2&DifferentialD;&DifferentialD;tA__xtA__ztE__0t2+2A__xtA__zt&DifferentialD;&DifferentialD;tE__0tE__0t3A__xt&DifferentialD;&DifferentialD;tA__ztE__0t2&colon;

Despite the presence of the auxiliary arbitrary functions A__xt, A__zt and A__xzt, the problem is in reach of dsolve's algorithms, so solve this ODE__t for E__0t

dsolveODE__t&comma;E__0t

E__0t=A__xztA__xzt2+4_C1A__xtA__zt2_C1,E__0t=A__xzt+A__xzt2+4_C1A__xtA__zt2_C1

(30)

The solution above reduced the order of the original problem pde__4 by one. Depending on the problem, more than one reduction of order may occur.

 

Step 2. We need to express the integration constant with respect to t in the context of a problem in t, x, and z, that is, _C1 is an arbitrary function of x and z. For illustration purposes take for instance the first solution

_C1&equals;solve1&comma;_C1&semi;

_C1=A__xztE__0tA__xtA__ztE__0t2

(31)

 

subs_C1 &equals; _F1x&comma;t&comma;

_F1x&comma;t=A__xztE__0tA__xtA__ztE__0t2

(32)

Restoring the original functions, we get

subsauxiliary_functions&comma;

_F1x&comma;t=2xzEt&comma;x&comma;zEt&comma;x&comma;zxEt&comma;x&comma;zzEt&comma;x&comma;zEt&comma;x&comma;z2

(33)

This pde in t, x, and z can now be written in terms of two auxiliary functions just of x as

auxiliary_functions  A__zx &equals; zEt&comma;x&comma;z&comma; E__0x&equals;Et&comma;x&comma;z&colon;

Resulting in

ODE__x_F1x&comma;z=&DifferentialD;&DifferentialD;xA__zxE__0x&DifferentialD;&DifferentialD;x E__0xA__zxE__0x2

ODE__x_F1x&comma;z=&DifferentialD;&DifferentialD;xA__zxE__0x&DifferentialD;&DifferentialD;xE__0xA__zxE__0x2

(34)

Solve this ODE

dsolveODE__x&comma;E__0x

E__0x=A__zx_F1x&comma;z&DifferentialD;x+_C1

(35)

Step 3. Proceed as in the previous step, isolating _C1 , rewriting it as an arbitrary function of z and t and restoring the original functions

_C1&equals;solve&comma;_C1&semi;

_C1=E__0x_F1x&comma;z&DifferentialD;xA__zxE__0x

(36)

 

subs_C1 &equals; _F2t&comma;z&comma;

_F2t&comma;z=E__0x_F1x&comma;z&DifferentialD;xA__zxE__0x

(37)

Although not necessary, a simplification is possible in that the integral of an arbitrary function is also an arbitrary function, so we can remove the integration by redefining _F1  D1_F1

eval&comma;Int&equals;int&comma;_F1 &equals; D1_F1

_F2t&comma;z=E__0x_F1x&comma;zA__zxE__0x

(38)

Restore the original variables

subsauxiliary_functions&comma;

_F2t&comma;z=Et&comma;x&comma;z_F1x&comma;zzEt&comma;x&comma;zEt&comma;x&comma;z

(39)

 

This resulting pde is already an ODE in disguise, from where the general solution to the original problem pde__4 is

pdsolve

Et&comma;x&comma;z=_F3t&comma;x&ExponentialE;_F2t&comma;z_F1x&comma;z&DifferentialD;z

(40)

This solution can be simplified further by redefining _F2  D2_F2 and _F1  D2_F1

eval&comma;Int&equals;int&comma; _F2 &equals; D2_F2&comma; _F1 &equals; D2_F1

Et&comma;x&comma;z=_F3t&comma;x&ExponentialE;_F2t&comma;z_F1x&comma;z

(41)

Verify this solution with the original pde__4

pdetest&comma;pde__4

0

(42)

Doing all these steps in one go

pdsolvepde__4

Et&comma;x&comma;z=_F3t&comma;x&ExponentialE;_F2t&comma;z_F1x&comma;z

(43)

Solving a PDE by making use of first integrals

 

Any PDE can be solved iterating the two steps below related to its first integrals, when they can be computed.

 

Step 1: Write the differential equation for a first integral - a function &Phi; of the PDE's jet space - by equating to 0 its total derivative with respect to (any) one of the independent variables of the original problem. The resulting PDE is of first order and can be tackled using the characteristic strip method.

 

Step 2: When the PDE for &Phi; can be solved, the solution is an arbitrary function of the differential invariants of the PDE for &Phi;.  Equate one such differential invariant to an arbitrary function of the remaining independent variables of the problem, resulting in a pde of reduced order with respect to the original PDE problem, a first integral. At this point one can either repeat the process to calculate more first integrals in order to attempt an algebraic elimination (multiple reduction of order) or move again to Step 1 with the reduced order PDE.

 

Examples

restart&semi;

withPDEtools&colon;

pde__1xux&comma;yyux&comma;y

pde__1xux&comma;y2xyux&comma;y

(44)

FirstIntegralSolverpde__1&comma;ux&comma;y&semi;

ux&comma;y=_F1y&ExponentialE;y&DifferentialD;y+_F2x&ExponentialE;y

(45)

pdetest&comma;

0

(46)

The solving process step-by-step

 

Construct an expression for the first integral &Phi;Q, where Q&equals;x&comma;y&comma;u&comma;ux,uy, the jet space of pde__1

Qx,y,u,ux,uy

Qx,y,u,ux,uy

(47)

declare&Phi;Q

Phix&comma;y&comma;u&comma;ux&comma;uywill now be displayed asΦ

(48)

Take the total derivative of ΦQ with respect to x

D_DxPhiQ&comma;x&comma;ux&comma;y&equals;0

diff&Phi;x&comma;y&comma;u&comma;ux&comma;uy&comma;x&plus;diff&Phi;x&comma;y&comma;u&comma;ux&comma;uy&comma;uux&plus;diff&Phi;x&comma;y&comma;u&comma;ux&comma;uy&comma;uxux&comma;x&plus;diff&Phi;x&comma;y&comma;u&comma;ux&comma;uy&comma;uyux&comma;y&equals;0

(49)

Take this PDE modulo pde__1, and that is all the formulation of the problem

isolateToJetpde__1&comma;ux&comma;y&comma; ux&comma;y

ux,y=ux

(50)

PDE__&Phi; subs&comma;

diff&Phi;x&comma;y&comma;u&comma;ux&comma;uy&comma;x&plus;diff&Phi;x&comma;y&comma;u&comma;ux&comma;uy&comma;uux&plus;diff&Phi;x&comma;y&comma;u&comma;ux&comma;uy&comma;uxux&comma;x&plus;diff&Phi;x&comma;y&comma;u&comma;ux&comma;uy&comma;uyux&equals;0

(51)

Solve PDE__&Phi;, and in doing so, the solution cannot depend on ux,x (it can only depend on Q &equals; x&comma;y&comma;u&comma;ux,uy&rpar;. You can achieve that using the ivars option of pdsolve

pdsolvePDE__&Phi;&comma;ivars&equals;ux,x

&Phi;x&comma;y&comma;u&comma;ux&comma;uy&equals;_F1y&comma;u&plus;uy

(52)

 

Since &Phi; is a first integral, the arguments of the arbitrary function entering this solution are also first integrals. Take the second one, which involves 1st order derivatives, and equate it to an arbitrary function all the independent variables but x (the variable used when taking the total derivative of &Phi;&rpar;. In this case, there is only one other variable, y.

op1&comma;2&comma;2&comma;&equals;_F1y

u+uy=_F1y

(53)

Rewrite this result in function notation

FromJet&comma;ux&comma;y

ux&comma;y&plus;diffux&comma;y&comma;y&equals;_F1y

(54)

This result is already an ODE in disguise; solve it to arrive at the general solution of pde__1

pdsolve

ux&comma;y=_F1y&ExponentialE;y&DifferentialD;y+_F2x&ExponentialE;y

(55)

 

A more involved example:

pde__2A__12x__4x__1wx__1&comma;x__2&comma;x__3&comma;x__4+A__22x__4x__2wx__1&comma;x__2&comma;x__3&comma;x__4+A__32x__4x__3wx__1&comma;x__2&comma;x__3&comma;x__4+A__6+A__5x__4wx__1&comma;x__2&comma;x__3&comma;x__4+A__7A__1x__1wx__1&comma;x__2&comma;x__3&comma;x__4+A__2x__2wx__1&comma;x__2&comma;x__3&comma;x__4+A__3x__3wx__1&comma;x__2&comma;x__3&comma;x__4+A__5wx__1&comma;x__2&comma;x__3&comma;x__4+A__4+A__8A__1x__1wx__1&comma;x__2&comma;x__3&comma;x__4+A__2x__2wx__1&comma;x__2&comma;x__3&comma;x__4+A__3x__3wx__1&comma;x__2&comma;x__3&comma;x__4+A__5wx__1&comma;x__2&comma;x__3&comma;x__4+A__42&colon;

 

PDEtools:-FirstIntegralSolverpde__2&comma;wx__1&comma;x__2&comma;x__3&comma;x__4&semi;

wx__1&comma;x__2&comma;x__3&comma;x__4&equals;12IntatexpA__5_aA__12A__3A__4A__8&plus;A__3A__7&plus;tan12A__324A__6A__8A__72_F1_a&comma;A__1x__2&plus;A__2_aA__2x__1A__1&comma;A__1x__3&plus;A__3_aA__3x__1A__1&plus;x__4A__3A__324A__6A__8A__72A__1A__3A__8&comma;_a&equals;x__12_F2A__1x__2A__2x__1A__1&comma;A__1x__3A__3x__1A__1&co