boundary conditions - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


pdsolve/boundaryconditions

find solutions for partial differential equations (PDEs) with boundary and/or initial conditions

 

Calling Sequence

Parameters

Description

Examples

References

Compatibility

Calling Sequence

pdsolve([PDE, conds], f, hint)

Parameters

PDE

-

a partial differential equation or system thereof

conds

-

initial or boundary conditions

f

-

indeterminate function or its name; or a set or list of them, required when there is more than one differentiated function

hint

-

(optional): HINT = `+`, HINT = `*`, HINT = boundedseries,

HINT = boundedseries(variable = value),       HINT = boundedseries(variable = [values])

method

                        

-

 

 

(optional): method = method1, method = [method1, method2, ...], exclude = method1, exclude = [method1, method2, ...]

option

-

(optional): degree = positive integer

Description

• 

Given one or more PDE with boundary and/or initial conditions, pdsolve works to find an analytical solution satisfying all of the given equations and conditions. There are no restrictions as to the type, differential order, or number of dependent or independent variables of the PDEs or PDE systems that pdsolve can try to solve, although the solving methods are limited in scope.

• 

Several solution methods are used, depending on the order of the PDE, on whether they are linear, on the domain for the variables of the problem, and on whether the PDE or the boundary conditions, or both, are homogeneous.  

• 

Changes of variables in PDE and conditions are used as necessary in order to make problems solvable by pdsolve.

• 

To see what method is being used to solve a given problem, you can assign the following (see infolevel):

infolevelpdsolve  2:

• 

The solving methods can be indicated, either to be used for solving, as in methods=method__1,method__2,  ..., to be tried in the order indicated, or to be excluded, as in exclude=method__1,method__2,  .... The methods and sub-methods available are organized in a table, `pdsolve/BC/methods`:

indices`pdsolve/BC/methods`

1,2,3,2,Series,2,Wave,high_order,system,2,Heat,2,SpecializeArbitraryFunctions

(1)

So, for example, the methods for PDEs of first order and second order are, respectively,

`pdsolve/BC/methods`1

SpecializeArbitraryFunctions,Fourier,Laplace,Generic,PolynomialSolutions,LinearDifferentialOperator

(2)

`pdsolve/BC/methods`2

SpecializeArbitraryFunctions,SpecializeArbitraryConstants,Wave,Heat,Series,Laplace,Fourier,Generic,PolynomialSolutions,LinearDifferentialOperator,Superposition

(3)

Some methods have sub-methods:

`pdsolve/BC/methods`2,Series

TwoBC,ThreeBCsincos,FourBC,ThreeBC,ThreeBCPeriodic,WithSourceTerm,ThreeVariables

(4)

`pdsolve/BC/methods`2,Heat

SemiInfiniteDomain,WithSourceTerm

(5)

About the Arguments

• 

When the given PDE contains derivatives of more than one function, the function(s) which should be considered the indeterminate function(s), or its name, must be given as an extra argument.

• 

The PDE (or system thereof) and boundary and/or initial conditions should all be given together as a list.

• 

You can give a HINT indicating a method of solution or a form for the indeterminate function. When given, the hint is taken by pdsolve as the departure point in looking for the solution.

• 

The following arguments can be used with the HINT option.

  

HINT = `+`

  

This option forces pdsolve to begin by trying to separate the variables by sum.

  

HINT = `*`

  

This option forces pdsolve to begin by trying to separate the variables by product.

  

HINT = boundedseries

  

This option tells pdsolve that the solution is bounded (pdsolve will choose an appropriate boundary).

  

HINT = boundedseries(variable  = value), HINT = boundedseries(variable  = [values])

  

This option tells pdsolve that the solution is bounded (using the given value(s) for the given variable).

• 

You can specify one or more solving methods to be used or not used (excluded), from: Laplace, Fourier, Series, Generic, PolynomialSolutions, LinearDifferentialOperator, Wave, Heat, Superposition, SpecializeArbitraryFunctions, SpecializeArbitraryConstants.

• 

When using the method PolynomialSolutions, a degree can be specified for the solution. Note that for linear PDE, the maximum degree used by pdsolve by default is 10; for nonlinear PDE, it is 4. You can override these default values by using the degree =... option.

Conventions

• 

Any arbitrary constants introduced during the solution process are represented as _C1, _C2,..., and are global.

• 

Any functions introduced by pdsolve beginning with _F and followed by a number are assumed to be arbitrary, sufficiently differentiable functions of their arguments.

• 

When pdsolve fails, it returns NULL.

Examples

  

The following illustrate some of the strategies and solution methods used by pdsolve to solve problems involving PDE with boundary conditions, initial conditions, or both. The HINT and method = ... options are illustrated in several different examples below. Click on the arrow to the left of each section name to view the examples for that section.

Linear change of variables

PDE and BC problems often require that the boundary and initial conditions be given at certain evaluation points (usually in which one of the variables is equal to zero). With linear changes of variables, it is possible to change the evaluation points of the given conditions, obtaining the solution for the new variables, and then changing back to the original variables.

An example of a heat PDE & BC problem in a semi-infinite domain. Note the conditions are at x=A and t=B.

pde__1  diffux, t, t =  diffux, t, x, x4

pde__1tux,t=2x2ux,t4

(6)

conds__1uA,t=0,ux,B=10:

Note the assumptions placed below; depending on the problem, they may be required for it to be solvable. In this case, the assumptions are that x and t are, respectively, greater than the absolute value of the evaluation points of the conditions, in this case A and B.

pdsolvepde__1&comma;conds__1assuming absA<x&comma;absB<t

ux&comma;t=10erfx+AtB

(7)

 

A wave PDE with a source. Note that the conditions are at t=1.

pde__2  diffux&comma; t&comma; t&comma; t  c2diffux&comma; t&comma; x&comma; x &equals; fx&comma; t

pde__22t2ux&comma;tc22x2ux&comma;t=fx&comma;t

(8)

conds__2ux&comma;1=gx,D2ux&comma;1=hx&colon;

pdsolvepde__2&comma;conds__2&comma;ux&comma;t

ux&comma;t=0t1t+τ+1c+xx+ct1τ&DifferentialD;2&DifferentialD;&zeta;2h&zeta;c2τ+&DifferentialD;2&DifferentialD;&zeta;2g&zeta;c2+f&zeta;&comma;τ+1&DifferentialD;&zeta;&DifferentialD;τ+2t2chx+2gxc2c

(9)

You can ask pdetest to test the solution against the original problem, if desired:

pdetest&comma;pde__2&comma;conds__2

0&comma;0&comma;0

(10)

 

Fourier Series method

This method, for single linear second-order PDEs in two or three independent variables, uses separation of variables by product to identify one or two Sturm-Liouville problems, depending on the number of variables. These problems are solved by finding eigenvalues with corresponding eigenfunctions, by using orthogonality properties of these eigenfunctions, and by then superimposing solutions (since the PDE is linear) to create an infinite series.

An example with the Schrodinger PDE with zero potential (Planck's constant, Z, is entered from the palettes):

pde__3  I&hslash;difffx&comma; t&comma; t &equals; &hslash;22 mdifffx&comma; t&comma; x&comma;x

pde__3Itfx&comma;t=22x2fx&comma;t2m

(11)

conds__3  f0&comma; t &equals; 0&comma; fL&comma; t &equals; 0 &colon;

pdsolvepde__3&comma;conds__3&comma; fx&comma; t assuming L &gt; 0

fx&comma;t=n=1_C1nsinnπxL&ExponentialE;I2π2n2tmL2

(12)

 

An example with the wave PDE:

pde__4  diffux&comma; t&comma; t&comma; t &equals; c2 diffux&comma; t&comma; x&comma; x

pde__42t2ux&comma;t=c22x2ux&comma;t

(13)

conds__4  u0&comma; t &equals; 0&comma; D1uL&comma; t &equals; 0&comma; D2ux&comma; 0 &equals; 0&comma; ux&comma; 0 &equals; fx&colon;

pdsolvepde__4&comma; conds__4&comma; ux&comma; t assuming 0< x  L

ux&comma;t=n=02sin1+2nπx2Lcosc1+2nπt2L0Lsin1+2nπx2Lfx&DifferentialD;xL

(14)

 

An example that represents the temperature distribution in a thin circular plate whose lateral surfaces are insulated:

pde__5  diffur&comma; theta&comma; t&comma; t &equals; 125 rdiffur&comma; theta&comma; t&comma; r &plus; r diffur&comma; theta&comma; t&comma; r&comma; r &plus; diffur&comma; theta&comma; t&comma; theta&comma; thetar

pde__5tur&comma;θ&comma;t=rur&comma;θ&comma;t+r2r2ur&comma;θ&comma;t+2θ2ur&comma;θ&comma;tr25r

(15)

conds__5D1u1&comma;θ&comma;t=0,ur&comma;0&comma;t=0,ur&comma;π&comma;t=0,ur&comma;θ&comma;0=r13r3sinθ&colon;

pdsolvepde__5&comma;conds__5

ur&comma;&theta;&comma;t&equals;casesplit/ansSum43BesselJ1&comma;&lambda;nrsin&theta;exp125&lambda;n2tBesselJ0&comma;&lambda;n&lambda;n3BesselJ1&comma;&lambda;n&lambda;n2&plus;4&lambda;nBesselJ0&comma;&lambda;n8BesselJ1&comma;&lambda;n&lambda;n3BesselJ0&comma;&lambda;n2&lambda;n&plus;BesselJ1&comma;&lambda;n2&lambda;n2BesselJ0&comma;&lambda;nBesselJ1&comma;&lambda;n&comma;n&equals;0..&infin;&comma;AndBesselJ1&comma;&lambda;n&plus;BesselJ2&comma;&lambda;n&lambda;n&equals;0&comma;0<&lambda;n

(16)

In the above we see that the eigenvalue &lambda;__n satisfies J1λn+J2λnλn=0. When &lambda;__n is the root of one single BesselJ or BesselY function of integer order, the Maple functions BesselJZeros and BesselYZeros are used instead. That is the case, for instance, if we slightly modify this problem changing the first boundary condition to be u1&comma;θ&comma;t=0 instead of D1u1&comma;θ&comma;t=0

conds__5.1u1&comma;θ&comma;t=0,ur&comma;0&comma;t=0,ur&comma;π&comma;t=0,ur&comma;θ&comma;0=r13r3sinθ&colon;

pdsolvepde__5&comma;conds__5.1

ur&comma;&theta;&comma;t&equals;casesplit/ansSum43BesselJ1&comma;&lambda;nrsin&theta;exp125&lambda;n2t&lambda;n2&plus;4BesselJ0&comma;&lambda;n&lambda;n3&comma;n&equals;1..&infin;&comma;And&lambda;n&equals;BesselJZeros1&comma;n&comma;0<&lambda;n

(17)

 

An example with the Laplace PDE, requesting a solution outside a disk of radius one via HINT = boundedseries(r = infinity):

pde__6 diffr  diffur&comma; &theta;&comma; r&comma; rr&plus;diffur&comma; &theta;&comma; &theta;&comma;&theta;r2 &equals; 0

pde__6rur&comma;θ+r2r2ur&comma;θr+2θ2ur&comma;θr2=0

(18)

conds__6u1&comma;θ=fθ,ur&comma;π=ur&comma;π,D2ur&comma;π=D2ur&comma;π&colon;

pdsolvepde__6&comma; conds__6&comma; ur&comma; theta&comma;HINT &equals; boundedseriesr&equals;infinity

ur&comma;θ=2n=1ππfθsinnθ&DifferentialD;θsinnθ+ππfθcosnθ&DifferentialD;θcosnθrnππ+ππfθ&DifferentialD;θ2π

(19)

To obtain the solution inside the disk of radius one, we use HINT = boundedseries(r = 0):

pdsolvepde__6&comma; conds__6&comma; ur&comma; theta&comma;HINT &equals; boundedseriesr&equals;0

ur&comma;θ=2n=1rnππfθsinnθ&DifferentialD;θsinnθ+ππfθcosnθ&DifferentialD;θcosnθππ+ππfθ&DifferentialD;θ2π

(20)
  

 

Generic method

Here, pdsolve first calculates the PDE's general solution, and then works to fit any initial or boundary conditions to it. Both examples below also illustrate that the method chosen can make a difference in the solution pdsolve returns:

pde__7  diffux&comma; y&comma; x&comma; x &plus; diffux&comma; y&comma; y&comma; y &equals; 0

pde__72x2ux&comma;y+2y2ux&comma;y=0

(21)

conds__7ux&comma;0=Diracx&colon;

When the Fourier method is specified, pdsolve returns:

pdsolvepde__7&comma; conds__7&comma;method&equals;Fourier

ux&comma;y=invfourier&ExponentialE;sy&comma;s&comma;x

(22)

which we can convert to integral form:

convert&comma;Int&semi;

ux&comma;y=&ExponentialE;sy+Isx&DifferentialD;s2π

(23)

When method = Generic is specified, pdsolve's solution includes an arbitrary function _F2:

pdsolvepde__7&comma;conds__7&comma;method=Generic

ux&comma;y=_F2y+Ix+δx+Iy+_F2y+Ix

(24)

 

Here is another example in which the method that is chosen makes a difference in the solution obtained:

pde__8  diffur&comma; &theta;&comma; r&comma; r &plus; diffur&comma; &theta;&comma; &theta;&comma;&theta; &equals; 0

pde__82r2ur&comma;θ+2θ2ur&comma;θ=0

(25)

conds__8u2&comma;θ=3sin2θ+1&colon;

With method = Generic, pdsolve returns:

pdsolvepde__8&comma;conds__8&comma;method&equals;Generic

ur&comma;θ=1_F2θIr+4I3sin2θ+2Ir4I+_F2θ+Ir

(26)

With method = Fourier, pdsolve uses a Fourier transform to obtain:

pdsolvepde__8&comma;conds__8&comma;method=Fourier

ur&comma;θ=3I&ExponentialE;2r42Iθ23I&ExponentialE;2r+4+2Iθ2+1

(27)

 

Integral Transforms (Laplace method, Fourier method)

Integral Transforms are used in infinite or semi-infinite spatial domain problems.

Laplace transforms act to change derivatives with respect to one of the independent variables of the domain into multiplication operations in the transformed domain. After applying a Laplace transform to the original problem, we can simplify the problem using the transformed BC, then solve the problem in the transformed domain, and finally apply the inverse Laplace transform to arrive at the final solution. It is important to remember to give pdsolve any necessary restrictions on the variables and constants of the problem, by means of the assuming command.

We can also tell pdsolve that the dependent variable is bounded, by means of the optional argument HINT = boundedseries.

Consider the problem of a falling cable lying on a table that is suddenly removed.

pde__9  diffux&comma; t&comma; t&comma; t &equals; c2diffux&comma; t&comma; x&comma; xg

pde__92t2ux&comma;t=c22x2ux&comma;tg

(28)

conds__9 ux&comma; 0 &equals; 0&comma; u0&comma; t &equals; 0&comma; D2ux&comma; 0 &equals; 0&colon;

To display special functions using textbook notation, enable the typesetting of mathematical functions:

Typesetting:-EnableTypesetRuleTypesetting:-SpecialFunctionRules&colon;

If we ask pdsolve to solve this problem without the condition of boundedness of the solution, we obtain:

pdsolvepde__9&comma;conds__9&comma;ux&comma;tassuming 0<t,0<x,0<c

ux&comma;t=gx2+2ctxx<ctc2t2+x2ct<x2c2

(29)

If we now ask for a bounded solution, by means of the option HINT = boundedseries, pdsolve simplifies the problem accordingly.

pdsolvepde__9&comma;conds__9&comma;HINT=boundedseriesassuming 0<t,0<x,0<c

ux&comma;t=gθtxcctx2c2t22c2

(30)

 

For Fourier transforms, the process is similar to that used in the Laplace transform method.

pde__10  diffux&comma; t&comma; t &equals; diffux&comma; t&comma; x&comma; x&plus;m

pde__10tux&comma;t=2x2ux&comma;t+m

(31)

conds__10ux&comma;0=sinx&colon;

pdsolvepde__10&comma;conds__10

ux&comma;t=sinx&ExponentialE;t+mt

(32)

 

A third order PDE problem:

pde__11  diffux&comma; t&comma; t &equals; diffux&comma; t&comma; x&comma; x&comma; x

pde__11tux&comma;t=3x3ux&comma;t

(33)

conds__11ux&comma;0=fx&colon;

pdsolvepde__11&comma; conds__11

ux&comma;t=4πf&zeta;x+&zeta;t13K1323x+&zeta;x+&zeta;t139t133t13&DifferentialD;&zeta;4π2

(34)

Linear Differential Operator method

This method is for problems of the form

tw=Mw,     wx__i&comma;0=fx__i

or

2t2w=Mw,     wx__i&comma;0=fx__i,     twt=0|twt=0=gx__i

 

where M is an arbitrary linear differential operator of any order which only depends on the spatial variables x__i.

pde__12  diffwx1&comma; x2&comma; x3&comma; t&comma; t&comma; t &equals; diffwx1&comma; x2&comma; x3&comma; t&comma; x2&comma; x1&plus;diffwx1&comma; x2&comma; x3&comma; t&comma; x3&comma; x1&plus;diffwx1&comma; x2&comma; x3&comma; t&comma; x3&comma; x3diffwx1&comma; x2&comma; x3&comma; t&comma; x3&comma; x2

pde__122t2wx1&comma;x2&comma;x3&comma;t=2x1x2wx1&comma;x2&comma;x3&comma;t+2x1x3wx1&comma;x2&comma;x3&comma;t+2x32wx1&comma;x2&comma;x3&comma;t2x2x3wx1&comma;x2&comma;x3&comma;t

(35)

conds__12  wx1&comma; x2&comma; x3&comma; 0 &equals; x13x32&plus;sinx1&comma; D4wx1&comma; x2&comma; x3&comma; 0 &equals; cosx1x2x3&colon;

pdsolvepde__12&comma;conds__12

wx1&comma;x2&comma;x3&comma;t=t4x12+t2x13+3t2x12x3+x13x32+t36x2x3t+cosx1t+sinx1

(36)

SpecializeArbitraryFunctions method

This method is for solving the Cauchy problem for hyperbolic PDE in unbounded domains, including cases where there are different types of sources as well as functions in the initial conditions.

pde__13  diffux&comma;t&comma;t&comma;t4 diffux&comma;t&comma;x&comma;x&equals;fa

pde__132t2ux&comma;t42x2ux&comma;t=fa

(37)

conds__13  ux&comma;0&equals;0&comma;D2ux&comma;0 &equals; x2&colon;

pdsolvepde__13&comma;conds__13&semi;

ux&comma;t=fat22+4t33+tx2

(38)
  

 

Polynomial Solutions method

This method gives pdsolve better performance to find polynomial solutions to PDE & BC problems when they exist.

pde__14  diffux&comma; y&comma; x&comma; x &plus; ydiffux&comma; y&comma; y&comma; y &equals; 0

pde__142x2ux&comma;y+y2y2ux&comma;y=0

(39)

conds__14ux&comma;0=0,D2ux&comma;0=x2&colon;

pdsolvepde__14&comma;conds__14&comma;ux&comma;y

ux&comma;y=yx2y

(40)

 

An example with a system of PDE & BC for which pdsolve does not find a solution using the default maximum degree 10 for linear PDE.

sys__15 diffux&comma;y&comma;y&equals;diffvx&comma;y&comma;x&comma; diffux&comma;y&comma;x&equals;diffvx&comma;y&comma;y

sys__15yux&comma;y=xvx&comma;y,xux&comma;y=yvx&comma;y

(41)

conds__15ux&comma;0=x11,vx&comma;0=0&colon;

pdsolvesys__15&comma;conds__15&comma;method&equals;PolynomialSolutions

The degree seen in the initial conditions is given below to find a solution:

pdsolvesys__15&comma;conds__15&comma;ux&comma;y&comma;vx&comma;y&comma; method&equals;PolynomialSolutions&comma;degree&equals;11

ux&comma;y=x1155y2x9+330y4x7462y6x5+165y8x311y10x&comma;vx&comma;y=11yx10165y3x8+462y5x6330y7x4+55y9x2y11

(42)

Superposition method

This method is for linear homogeneous PDE problems with non-periodic initial and boundary conditions, more than one of which is non-homogeneous.

The superposition method works by taking advantage of the linearity of the problem and the fact that the solution to such a problem in which two or more of the BC are non-homogeneous can be given as

u = u__1+u__2 + ...,  where each u__i is a solution of the PDE with all but one of the BC homogenized.

A Laplace PDE with one homogeneous and three non-homogeneous conditions:

pde__16  diffux&comma; y&comma; x&comma; x &plus; diffux&comma; y&comma; y&comma; y &equals; 0

pde__162x2ux&comma;y+2y2ux&comma;y=0

(43)

conds__16u0&comma;y=0,uπ&comma;y=sinhπcosy,ux&comma;0=sinx,ux&comma;π=sinhx&colon;

pdsolvepde__16&comma;conds__16

ux&comma;y=&ExponentialE;2π1n=1−1nn&ExponentialE;2π1&ExponentialE;nπyπsinnx&ExponentialE;2ny1πn2+1&ExponentialE;2πn1+&ExponentialE;2π1n=22sinny&ExponentialE;nπxsinhπn−1n+1&ExponentialE;2nx1π&ExponentialE;2πn1n21+sinx&ExponentialE;y+&ExponentialE;y+2π&ExponentialE;2π1

(44)

Heat method

This method applies to heat PDE, with or without a source, in semi-infinite domains.

A heat PDE in a semi-bounded domain; note the conditions require a linear change of variables before the method can be applied.

pde__17  diffux&comma; t&comma; t &equals; 14 diffux&comma; t&comma; x&comma; x

pde__17tux&comma;t=2x2ux&comma;t4

(45)

conds__17D1uα&comma;t=0,ux&comma;β=10expx2&colon;

pdsolvepde__17&comma;conds__17&comma;ux&comma;tassuming 0<x,0<t

ux&comma;t=5erftβ1α+xtβtβ+11&ExponentialE;4αx+αt+β1+erftβ+1αxtβtβ+11&ExponentialE;x2t+β1tβ+1

(46)

Wave method

This method applies to wave PDE, with or without a source, in semi-infinite domains.

A wave PDE in a semi-bounded domain:

pde__18  diffux&comma; t&comma; t&comma; t  9 diffux&comma; t&comma; x&comma; x &equals; 0

pde__182t2ux&comma;t92x2ux&comma;t=0

(47)

conds__18D1u0&comma;t=0,ux&comma;0=0,D2ux&comma;0=x3&colon;

pdsolvepde__18&comma;conds__18assuming 0<x,0<t

ux&comma;t=108t3x+12tx33t<x81t4+54t2x2+x4x<3t12

(48)

 

A wave PDE in a semi-bounded domain with non-homogeneous conditions:

pde__192t2ux&comma;t=c22x2ux&comma;t

pde__192t2ux&comma;t=c22x2ux&comma;t

(49)

conds__19ux&comma;0=sinx3,D2ux&comma;0=1&ExponentialE;110x,D1u0&comma;t=1&colon;

pdsolvepde__19&comma;conds__19&comma;ux&comma;tassumingt>0and x>0&semi;

ux&comma;t=sinct+x3csinctx3c+2ct10&ExponentialE;ct10x10+10&ExponentialE;ct10x10ct<x10&ExponentialE;ct10x10+10&ExponentialE;ct10+x10+sinctx3c+sinct+x3c202c2t+2t+2xcx<ct2c

(50)

Sturm-Liouville problem with eigenvalues that are the roots of algebraic expressions which cannot be inverted

When using the Fourier Series method, explained above, there are times when the eigenvalue(s) are roots of an algebraic expression whose inversion cannot be expressed using known mathematical functions.

As an example, consider a problem representing the temperature distribution in a thin rod whose lateral surface is insulated over the interval 0<x<1, with the left end of the rod insulated and the right end experiencing a convection heat loss, as explained in Articolo's example 3.6.4 (see References below)

pde__20  diffux&comma;t&comma;t&equals;kdiffux&comma;t&comma;x&comma;x

pde__20tux&comma;t=k2x2ux&comma;t

(51)

conds__20ux&comma;0=114x3,D1u0&comma;t=0,D1u1&comma;t+u1&comma;t=0&colon;

pdsolvepde__20&comma;conds__20

ux&comma;t&equals;casesplit/ansSum3expk&lambda;n2t&lambda;n2&plus;2cos&lambda;n2&plus;&lambda;n3&plus;2&lambda;nsin&lambda;ncos&lambda;nx&lambda;n3sin2&lambda;n&plus;2&lambda;n&comma;n&equals;0..&infin;&comma;Andtan&lambda;n&lambda;n1&equals;0&comma;0<&lambda;n

(52)

To test and plot the solution, we start with

solution  lhs&equals; op1&comma; rhs

solutionux&comma;t=n=03&ExponentialE;kλn2tλn2+2cosλn2+λn3+2λnsinλncosλnxλn3sin2λn+2λn

(53)

op2&comma;2&comma;1&comma;1&comma;

tanλnλn1=0

(54)

By inspection, solution has sinλn and cosλn, not tanλn; we rewrite equation (54) and isolate cosλn:

condition  isolateconvert&comma; sincos&comma; cosλn

conditioncosλn=sinλnλn

(55)

Substitute now this condition in the solution and start by pdetesting

pdetestsubscondition&comma;solution&comma; pde__20&comma; conds__20

0&comma;n=012sinλnλn6cosλnxλn3sin2λn+2λn1+x34&comma;0&comma;n=012λnsinλn2+6sinλn&ExponentialE;kλn2tλn2sin2λn+2λn+n=012sinλnλn6cosλn&ExponentialE;kλn2tλn3sin2λn+2λn

(56)

A further manipulation, substituting condition and combining the sums, results in

simplifycombinesubscondition&comma;&comma;Sum

0&comma;n=012sinλnλn6cosλnxλn3sin2λn+2λn1+x34&comma;0&comma;0

(57)

So the PDE and two of the conditions are satisfied without having to specify who is &lambda;__n - it sufficed to use cosλn=sinλnλn, and this is the case of most of the problems we analyzed: the exact closed form of &lambda;__n is really not needed in these examples.

For the one expression which remains to be proved equal to zero, there is no clear way to perform the sum and show that it is equal to 1x34 without further information on the value of &lambda;__n.  So this part must be tested using a plot.

Now, perform the summation using, say, the first 100 terms of the series; for that purpose, the first 100 positive values of &lambda;__n are needed. These values can be obtained using fsolve. Increase Digits to get a better approximation:

Digits  20&colon;

L  fsolvecondition&comma; lambdan&comma;0..1010&comma;maxsols&equals;100&colon;

For convenience, construct a procedure, as a function of n, that returns each of these values:

Lambda  n  if nnonnegint then Ln&plus;1 else &apos;Lambdaargs&apos; fi&semi;

Λnifn::&apos;nonnegint&apos;thenLn+1elseΛargsendif

(58)

Replace &lambda;__n by &Lambda;n&comma; infinity by 99 and the expression to be plotted is

remain  subslambdan &equals; Lambdan&comma;infinity &equals; 99&comma; 2

remainn=09912sinΛnΛn6cosΛnxΛn3sin2Λn+2Λn1+x34

(59)

Perform the sum and plot. The plotting range is the one present in the conds__20, x from 0 to 1:

R  evalremain&comma;Sum&equals;add&colon;

plotR&comma;x&equals;0..1

With the first 100 terms (constructed using the first 100 roots of tanλnλn1&equals;0) we verified that the last of the four testing conditions is sufficiently close to zero, and this concludes the verification.

 

To plot the solution, the idea is the same: in solution, give a value to k, say k = 1/5, and then construct the sum of the first 100 terms as done in remain, but this time using solution instead of the pdetest result.

subsk &equals; 15&comma; lambdan &equals; Lambdan&comma;infinity &equals; 99&comma; solution

ux&comma;t=n=0993&ExponentialE;Λn2t5Λn2+2cosΛn2+Λn3+2ΛnsinΛncosΛnxΛn3sin2Λn+2Λn

(60)

S  eval&comma;Sum&equals;add&colon;

plot3drhsS&comma;x&equals;0..1&comma; t&equals;0..1

Compare with the numerical solution one could obtain using pdsolve with the numeric option. Substitute k&equals;15in pde__20, and construct the corresponding plot:

numerical_solution  pdsolvesubsk&equals;15&comma; pde__20&comma;conds__20&comma;numeric&comma; time&equals;t&comma; range &equals; 0..1

numerical_solutionmodule...end

(61)

numerical_solution:-plot3dt&equals;0..1&comma;x&equals;0..1

 

 

References

• 

Articolo, George A. Partial Differential Equations and Boundary Value Problems with Maple. 2nd ed., Elsevier Academic Press, 2009.

• 

Logan, David J. Applied Partial Differential Equations. 3rd ed., Springer, 2015.

• 

Pinchover, Y. and Rubinstein, J.. An Introduction to Partial Differential Equations. Cambridge UP, 2005.

• 

Polyanin, Andrei D. Handbook of Linear Partial Differential Equations for Engineers and Scientists. Chapman & Hall/CRC, 2002.

Compatibility

For more information on Maple 2019 changes, see Updates in Maple 2019.

See Also

dchange

dsolve

pdetest

PDEtools

PDEtools[PDEsplot]

pdsolve

pdsolve/numeric

pdsolve/series

pdsolve/system

more examples with boundary conditions