rewrites in jet notation a given mathematical expression
rewrites in function notation a mathematical expression written in jet notation
ToJet(expr, DepVars, jetnotation = ..., ...)
FromJet(expr, DepVars, differentiationnotation = ...)
algebraic expression or equation
function or list of functions indicating the dependent variables of the problem
differentiationnotation = ...
(optional) can be diff (default), D; specifies the derivative notation to use
jetnotation = ...
(optional) can be jetnumbers, jetvariables (default), jetvariableswithbrackets or jetODE; specifies the jet notation to use
quiet = ...
(optional) can be true (default for FromJet) or false (default for ToJet); to avoid displaying information regarding the enumeration representing independent variables
The ToJet and FromJet commands rewrite back and forth mathematical expressions using jet and function notation respectively. ToJet is also used to rewrite an expression already in jet notation using a different jet notation.
Given a set of m smooth functions Ym depending on n independent variables Xn, the associated "jet space" prolonged to order k is the Euclidean space you construct taking each of these n independent and m dependent variables, as well as the partial derivatives of the Ym with respect to the Xn up to order k, all as independent variables in equal footing. Recalling, a function of n variables has n+kk partial derivatives of order k, including order 0. Thus, the dimension of the kth prolongation of the jet space is n+m⁢n+kk.
The four alternative jet notations handled by ToJet and FromJet and understood by all the symmetry commands of PDEtools are: jetvariables (also used in DifferentialAlgebra), jetvariableswithbrackets (also used in DifferentialAlgebra and the deprecated diffalg), jetnumbers (also used in the Maple D differentiation operator) and jetODE (also used in DEtools[Lie]). You transform from one notation to the other one using ToJet with the option jetnotation = ... or the synonym notation = ..., as shown in the Examples section.
The default jet notation used by ToJet is jetvariables, which is frequently used in textbooks and easier to read than the other notations. The table relating function <-> jetvariables notation can be summarized around an example - say the function u⁡x,t, as follows:
Both the DifferentialAlgebra and its preceding deprecated diffalg packages also use a similar notation, jetvariableswithbrackets, with only one difference: u⁡x,t=u, so with brackets  after the name of the dependent variable only when representing the derivative of order zero. To have these brackets in the output of ToJet use the option jetnotation = jetvariableswithbrackets.
An alternative jet notation, frequently used for programming purposes, is the jetnumbers notation, that follows the conventions used by the Maple D differentiation operator. The equivalence between function and jetnumbers notation is thus as follows:
When the dependent variables involved have different dependencies, the enumeration used to represent the independent variables is displayed on the screen (see first example in the Examples section). To avoid the display of this information use the quiet option.
Finally, the jetODE notation can be used when there is only one dependent variable of only one independent variable, as for instance u⁡x. The table relating function <-> jetODE notation is
Note the use of _y to prefix the representation of derivatives regardless of whether the unknown (in this example, u⁡x) has the name y.
By default FromJet returns the derivatives found in expr expressed using diff; to make it return using the D notation specify the optional argument differentiationnotation = D.
To avoid having to remember the optional keywords, if you type the keyword misspelled, 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.
DepVars ≔ u⁡x,t,v⁡t,w⁡y
PDE ≔ ∂∂x⁢u⁡x,t⁢v⁡t⁢w⁡y+∂2∂y⁢∂t⁢u⁡x,t⁢v⁡t⁢w⁡y
The following is PDE in jetvariables notation
jetPDE ≔ ToJet⁡PDE,DepVars
Compare with the jetnumbers notation, and because the DepVars involve different dependencies, the enumeration representing independent variables is also displayed
jetnumbersPDE ≔ ToJet⁡PDE,DepVars,notation=jetnumbers
jet notation: [1 = x, 2 = t, 3 = y]
To avoid displaying information regarding the enumeration for the independent variables include the keyword quiet.
In all cases, to convert back, use FromJet
To have the output in D notation use the optional argument differentiationnotation = D
One of the features of expressions written in jet notation is that you can compute partial derivatives of them with respect to functions and derivatives in the natural way you differentiate in Maple - because in jet notation functions and derivatives are represented by objects of type name. However, because in jet notation the dependency of the functions is not explicit, to compute total derivatives you need to use the total differentiation command D_Dx of PDEtools. For example, the total derivative of jetnumbersPDE with respect to t is given by diff(PDE, t) or, in the jet notation of jetnumbersPDE, by
Note that the D_Dx command is context sensitive: it returns using the jet notation found in the input, so if instead of jetnumbersPDE you pass jetPDE written using jetvariables, instead of (4.8) you get
FromJet can also be used to rewrite expressions involving the ODE jet notation of DEtools[Lie]
JetODE ≔ _y2=f⁡x,y,_y1
To have this output expressed using jetODE or jetvariableswithbrackets notation use the optional argument notation = ...
Note also the conversion directly from ODE jet notation to PDE jet notation:
Both ToJet and FromJet automatically rewrite any jet notation found in the input into the target notation. Consider this input where the functions are y⁡x and u⁡x,t and various notations appear mixed:
ee ≔ _y2⁢_y1+u⁢y+yx⁢u⁡x,t+u1⁢y⁡x+ux⁢ut
DepVars ≔ y⁡x,u⁡x,t
Download Help Document