PDEtools - Maple Programming Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Differential Equations : PDEtools : Symmetries : PDEtools/CharacteristicQ

PDEtools

  

CharacteristicQ

  

compute the characteristic of a point symmetry represented by its infinitesimals

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

CharacteristicQ(S, DepVars, 'options'='value')

Parameters

S

-

a list with the infinitesimals of a symmetry generator or the corresponding infinitesimal generator operator

DepVars

-

a function or a list of them indicating the dependent variables of the problem

checktype = ...

-

optional - can be true (default) or false, to have or have not inserted a check-of-type for the arguments of the output procedure

expanded = ...

-

optional - can be true or false (default), to have or have not expanded the sums entering the body of the output procedure

jetnotation = ...

-

(optional) can be true (default, the notation found in S), false, jetvariables, jetvariableswithbrackets, jetnumbers or jetODE; to respectively return or not using the different jet notations available

Description

• 

The CharacteristicQ command computes the characteristic of a point symmetry represented by its infinitesimals or the corresponding infinitesimal generator operator. That is, for a PDE problem with n independent and m dependent variables, given a related list of infinitesimals ξ1,`...`,ξn,η1,`...`,ηm, CharacteristicQ computes the procedure

mηmj=1nxijⅆumⅆxj

  

where m identifies a dependent variable.

• 

The sum in the body of this operator returned by CharacteristicQ is not expanded unless explicitly requested using the optional argument expanded. Also, jetnotation is used in this operator and a check-of-type for the value of m is automatically inserted unless explicitly requested otherwise with the optional arguments jetnotation = false and/or checktype = false - see the examples below.

• 

To avoid having to remember the optional keywords, if you misspell a keyword, or a portion of it, a matching against the correct keywords is performed, and when there is only one match, the input is automatically corrected.

Examples

withPDEtools,CharacteristicQ,InfinitesimalGenerator

CharacteristicQ,InfinitesimalGenerator

(1)

Consider a problem in two independent and two dependent variables u(x, t), v(x, t), and the generic form of infinitesimals for this type of problem

Fu,vx,t

F:=ux,t,vx,t

(2)

Sseqξ[j]x,t,u,v,j=x,t,seqη[j]x,t,u,v,j=u,v

S:=ξxx,t,u,v,ξtx,t,u,v,ηux,t,u,v,ηvx,t,u,v

(3)

By default CharacteristicQ returns, fast, an operator in its most abstract form, with a test-type for the value of m and not expanded; essentially, nothing is actually computed until you need it

QCharacteristicQS,F

Q:=m::satisfiesm&rarr;m::posintandm<=2&rarr;eta&lsqb;m&rsqb;addxi&lsqb;j&rsqb;&ast;diffy&lsqb;m&rsqb;&comma;X&lsqb;j&rsqb;&comma;j&equals;1..2

(4)

This resulting characteristic is a function that can then be applied to an integer as large as the number of dependent variables of the problem, in this case two

Q1

&eta;ux&comma;t&comma;u&comma;v&xi;xx&comma;t&comma;u&comma;vux&xi;tx&comma;t&comma;u&comma;vut

(5)

Q2

&eta;vx&comma;t&comma;u&comma;v&xi;xx&comma;t&comma;u&comma;vvx&xi;tx&comma;t&comma;u&comma;vvt

(6)

You can instead request to CharacteristicQ for the sum in the mapping to be expanded before returning, or to avoid the check of type of the value of m

CharacteristicQS&comma;F&comma;expanded&comma;checktype&equals;false

m&rarr;&eta;m&xi;xx&comma;t&comma;u&comma;vxym&xi;tx&comma;t&comma;u&comma;vtym

(7)

Instead of passing the symmetry as a list of infinitesimals you can also pass the corresponding infinitesimal generator operator. You construct this operator with InfinitesimalGenerator

GInfinitesimalGeneratorS&comma;F

G:=f&rarr;&xi;xx&comma;t&comma;u&comma;vxf&plus;&xi;tx&comma;t&comma;u&comma;vtf&plus;&eta;ux&comma;t&comma;u&comma;vuf&plus;&eta;vx&comma;t&comma;u&comma;vvf

(8)

This is the same output as (4.4)

CharacteristicQG&comma;F

m::satisfiesm&rarr;m::posintandm<=2&rarr;eta&lsqb;m&rsqb;addxi&lsqb;j&rsqb;&ast;diffy&lsqb;m&rsqb;&comma;X&lsqb;j&rsqb;&comma;j&equals;1..2

(9)

To request the output in function instead of jet notation use

QfCharacteristicQS&comma;F&comma;expanded&comma;checktype&equals;false&comma;jetnotation&equals;false

Qf:=m&rarr;&eta;m&xi;xx&comma;t&comma;ux&comma;t&comma;vx&comma;txym&xi;tx&comma;t&comma;ux&comma;t&comma;vx&comma;ttym

(10)

Compare for instance this output with the output of Q1

Qf1

&eta;ux&comma;t&comma;ux&comma;t&comma;vx&comma;t&xi;xx&comma;t&comma;ux&comma;t&comma;vx&comma;txux&comma;t&xi;tx&comma;t&comma;ux&comma;t&comma;vx&comma;ttux&comma;t

(11)

See Also

InfinitesimalGenerator

infinitesimals

PDEtools

ToJet

 


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam