PDEtools
ChangeSymmetry
perform a change of variables on the infinitesimals of a symmetry generator
Calling Sequence
Parameters
Description
Examples
ChangeSymmetry(TR, S, ITR, DepVars, NewVars, 'options'='value')
TR
-
a transformation equation or a set of them
S
a list with the infinitesimals of a symmetry generator or the corresponding infinitesimal generator differential operator
ITR
optional - the inverse transformation equation or a set of them
DepVars
optional - may be required, a function or a list of them indicating the (old) dependent variables of the problem
NewDepVars
optional - a function or a list of them representing the new dependent variables
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
output = ...
optional - can be list or operator, indicating the output to be a list of infinitesimal components or the corresponding infinitesimal generator differential operator
simplifier = ...
optional - indicates the simplifier to be used instead of the default simplify/size
The ChangeSymmetry command performs changes of variables in a list of infinitesimals of a symmetry generator or its corresponding infinitesimal generator differential operator. This transformation takes into account that the infinitesimals are coefficients of differentiation operators which are also changed by the transformation, thus contributing to the resulting infinitesimals in the new variables.
To avoid having to remember the optional keywords if you misspell the keyword, or just a portion of it, a matching against the correct keywords is performed, and when there is only one match, the input is automatically corrected.
with⁡PDEtools,ChangeSymmetry,CanonicalCoordinates,InfinitesimalGenerator
ChangeSymmetry,CanonicalCoordinates,InfinitesimalGenerator
Consider a PDE problem with two independent variables and one dependent variable, u(x, t), and consider the list of infinitesimals of a symmetry group
S≔_ξx=x,_ξt=1,_ηu=u
In the input above you can also pass the symmetry as without infinitesimals' labels, as in x,1,u. The corresponding infinitesimal generator is
G≔InfinitesimalGenerator⁡S,u⁡x,t
G≔f→x⁢∂∂x⁢f+∂∂t⁢f+u⁢∂∂u⁢f
Consider now the following transformation to be applied to the infinitesimals S
TR≔t=r+v⁡r,s,x=exp⁡v⁡r,s,u⁡x,t=s⁢exp⁡v⁡r,s
TR≔t=r+v⁡r,s,x=ⅇv⁡r,s,u⁡x,t=s⁢ⅇv⁡r,s
A direct application of this transformation to each component of S is incorrect because these infinitesimals are coefficients of differentiation operators in the infinitesimal generator G above. That fact is taken into account by ChangeSymmetry; the syntax it uses is the same as that of PDEtools[dchange] and DEtools[Xchange]
ChangeSymmetry⁡TR,S
_ξr=0,_ξs=0,_ηv=1
You can change variables directly in the infinitesimal generator differential operator, in which case the output has the same format, is also a differential operator
ChangeSymmetry⁡TR,G
f→∂∂v⁢f
You can also optionally request the output to be in list or operator format to override returning in the same format of the symmetry.
The transformation used in this example introduces the canonical coordinates of the symmetry group with infinitesimals S. That is why the result above is the normal form of the generator, all infinitesimals equal to 0 but for one equal to 1.
Consider now changing variables in a different symmetry, using the same transformation TR
ChangeSymmetry⁡TR,_ξx=u,_ξt=x,_ηu=t
_ξr=ⅇv−s,_ξs=−ⅇv⁢s2+r+vⅇv,_ηv=s
Compare with the output in different jetnotation or in function notation (jetnotation = false); we also pass the symmetry without the infinitesimals' labels to save some keystrokes; correspondingly the output also comes without infinitesimals' labels
ChangeSymmetry⁡TR,u,x,t,jetnotation=jetnumbers
ⅇv−s,−ⅇv⁢s2+r+vⅇv,s
ChangeSymmetry⁡TR,u,x,t,jetnotation=false
ⅇv⁡r,s−s,−ⅇv⁡r,s⁢s2+r+v⁡r,sⅇv⁡r,s,s
See Also
CanonicalCoordinates
InfinitesimalGenerator
Download Help Document