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

Online Help

All Products    Maple    MapleSim


PDEtools

  

dsubs

  

perform differential substitutions into expressions

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

dsubs(deriv=a, expr)

dsubs(deriv1=a, '...', expr)

Parameters

a, expr

-

differential expressions

deriv

-

derivative for which to substitute

deriv1, '...'

-

equation or sequence of substitution equations

Description

• 

dsubs substitutes the given sequence of equations into expr from left to right, the same way subs does. However, unlike subs, dsubs will substitute the left hand side of each substitution equation until this derivative is eliminated from the target (when this is possible). When many substitution equations are given, they are applied sequentially, as in subs. dsubs also works with anticommutative variables set using the Physics package.

• 

The exception to this rule occurs when a substitution cannot be applied successively, like the algebraic substitution x=x2. In this case the result returned is the one obtained by performing a single substitution.

• 

All substitution equations must be in solved form.

• 

This function is part of the PDEtools package, and so it can be used in the form dsubs(..) only after executing the command with(PDEtools). However, it can always be accessed through the long form of the command by using PDEtools[dsubs](..).

Examples

The first example compares the results of subs and dsubs.

withPDEtools:

eq1difffx,x=fx

eq1ⅆⅆxfx=fx

(1)

exprdifffx,x,xfx

exprⅆ2ⅆx2fxfx

(2)

In this case subs returns an expression which contains f', the object being substituted.

subseq1,expr

ⅆⅆxfxfx

(3)

Here, dsubs completely removes the f', the left hand side of the substitution equation.

dsubseq1,expr

0

(4)

Here is a PDE example.

eq2difffx,y,z,x,z=difffx,y,z,y,difffx,y,z,y,y=difffx,y,z,x,x

eq22xzfx,y,z=yfx,y,z,2y2fx,y,z=2x2fx,y,z

(5)

dsubseq2,difffx,y,z,x,y,z

2x2fx,y,z

(6)

The dsubs command also works with anticommutative variables, natively, without using the approach explained in PerformOnAnticommutativeSystem.

withPhysics

`*`,`.`,Annihilation,AntiCommutator,Antisymmetrize,Assume,Bra,Bracket,Check,Christoffel,Coefficients,Commutator,CompactDisplay,Coordinates,Creation,D_,Dagger,Decompose,Define,Dγ,DiracConjugate,Einstein,EnergyMomentum,Expand,ExteriorDerivative,Factor,FeynmanDiagrams,FeynmanIntegral,Fundiff,Geodesics,GrassmannParity,Gtaylor,Intc,Inverse,Ket,KillingVectors,KroneckerDelta,LagrangeEquations,LeviCivita,Library,LieBracket,LieDerivative,Normal,NumericalRelativity,Parameters,PerformOnAnticommutativeSystem,Projector,Psigma,Redefine,Ricci,Riemann,Setup,Simplify,SortProducts,SpaceTimeVector,StandardModel,Substitute,SubstituteTensor,SubstituteTensorIndices,SumOverRepeatedIndices,Symmetrize,TensorArray,Tetrads,ThreePlusOne,ToContravariant,ToCovariant,ToFieldComponents,ToSuperfields,Trace,TransformCoordinates,Vectors,Weyl,`^`,dAlembertian,d_,diff,g_,gamma_

(7)

Set first θ and Q as suffixes for variables of type/anticommutative (see Setup)

Setupanticommutativepre=Q,θ

* Partial match of 'anticommutativepre' against keyword 'anticommutativeprefix'

_______________________________________________________

anticommutativeprefix=Q,θ

(8)

A PDE system example with two unknown anticommutative functions of four variables, two commutative and two anticommutative; to avoid redundant typing in the input that follows and redundant display of information on the screen let's use PDEtools:-diff_table PDEtools:-declare

PDEtools:-declareQx,y,θ1,θ2

Qx,y,θ1,θ2will now be displayed asQ

(9)

qPDEtools:-diff_tableQx,y,θ1,θ2:

Now we can enter derivatives directly as the function's name indexed by the differentiation variables and see the display the same way; two PDEs

pde1qx,y,θ1+qx,y,θ2qy,θ1,θ2=0

pde1Qx,y,θ1+Qx,y,θ2Qy,θ1,θ2=0

(10)

pde2qθ1=0

pde2Qθ1=0

(11)

By inspection, it is clear that the derivatives in pde[2] can be substituted in pde[1] reducing the problem to a simpler one:

dsubspde2,pde1

Qx,y,θ2=0

(12)

pdsolve

Q=f__9x,y_λ1+f__10x,yθ1+f__6x+f__5yθ2+f__8x+f__7y_λ2θ1θ2

(13)

Substituting this result for Q back into pde[2], then multiplying by θ1 and subtracting from the above also leads to the PDE system solution, that in this case can also be obtained using a different technique passing the whole system directly to pdsolve

See Also

DEtools

PDEtools

subs