FromJet - Maple Help

PDEtools

 ToJet
 rewrites in jet notation a given mathematical expression
 FromJet
 rewrites in function notation a mathematical expression written in jet notation

 Calling Sequence ToJet(expr, DepVars, jetnotation = ..., ...) FromJet(expr, DepVars, differentiationnotation = ...)

Parameters

 expr - algebraic expression or equation DepVars - 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

Description

 • 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 ${Y}_{m}$ depending on $n$ independent variables ${X}_{n}$, 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 ${Y}_{m}$ with respect to the ${X}_{n}$ up to order $k$, all as independent variables in equal footing. Recalling, a function of $n$ variables has $\left(\genfrac{}{}{0}{}{n+k}{k}\right)$ partial derivatives of order k, including order 0. Thus, the dimension of the $k$th prolongation of the jet space is $n+m\left(\genfrac{}{}{0}{}{n+k}{k}\right)$.
 • 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\left(x,t\right)$, as follows:

 function notation jetvariables notation $u\left(x,t\right)$ =  $u$ $\frac{\partial }{\partial x}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}u\left(x,t\right)$ =  ${u}_{x}$ $\frac{{\partial }^{2}}{\partial x\partial t}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}u\left(x,t\right)$ =  ${u}_{x,t}$ ... ...

 Both the DifferentialAlgebra and its preceding deprecated diffalg packages also use a similar notation, jetvariableswithbrackets, with only one difference: $u\left(x,t\right)=u\left[\right]$, 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:

 function notation jet notation $u\left(x,t\right)$ =  $u\left[\right]$ $\frac{\partial }{\partial x}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}u\left(x,t\right)$ =  ${u}_{1}$ $\frac{{\partial }^{2}}{\partial x\partial t}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}u\left(x,t\right)$ =  ${u}_{1,2}$ ... ...

 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\left(x\right)$. The table relating function <-> jetODE notation is

 function notation jetODE notation $u\left(x\right)$ =  $u$ $\frac{ⅆ}{ⅆx}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}u\left(x\right)$ =  $\mathrm{_y1}$ $\frac{{ⅆ}^{2}}{ⅆ{x}^{2}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}u\left(x\right)$ =  $\mathrm{_y2}$ ... ...

 Note the use of $\mathrm{_y}$ to prefix the representation of derivatives regardless of whether the unknown (in this example, $u\left(x\right)$) 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.

Examples

 > $\mathrm{with}\left(\mathrm{PDEtools},\mathrm{D_Dx},\mathrm{declare},\mathrm{ToJet},\mathrm{FromJet}\right)$
 $\left[{\mathrm{D_Dx}}{,}{\mathrm{declare}}{,}{\mathrm{ToJet}}{,}{\mathrm{FromJet}}\right]$ (1)
 > $\mathrm{DepVars}≔\left[u\left(x,t\right),v\left(t\right),w\left(y\right)\right]$
 ${\mathrm{DepVars}}{≔}\left[{u}{}\left({x}{,}{t}\right){,}{v}{}\left({t}\right){,}{w}{}\left({y}\right)\right]$ (2)
 > $\mathrm{PDE}≔\mathrm{diff}\left(u\left(x,t\right)v\left(t\right)w\left(y\right),x\right)+\mathrm{diff}\left(u\left(x,t\right)v\left(t\right)w\left(y\right),t,y\right)$
 ${\mathrm{PDE}}{≔}\left(\frac{{\partial }}{{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}{v}{}\left({t}\right){}{w}{}\left({y}\right){+}\left(\frac{{\partial }}{{\partial }{t}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}{v}{}\left({t}\right){}\left(\frac{{ⅆ}}{{ⅆ}{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{w}{}\left({y}\right)\right){+}{u}{}\left({x}{,}{t}\right){}\left(\frac{{ⅆ}}{{ⅆ}{t}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{v}{}\left({t}\right)\right){}\left(\frac{{ⅆ}}{{ⅆ}{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{w}{}\left({y}\right)\right)$ (3)

The following is $\mathrm{PDE}$ in jetvariables notation

 > $\mathrm{jetPDE}≔\mathrm{ToJet}\left(\mathrm{PDE},\mathrm{DepVars}\right)$
 ${\mathrm{jetPDE}}{≔}{u}{}{{v}}_{{t}}{}{{w}}_{{y}}{+}{v}{}{w}{}{{u}}_{{x}}{+}{v}{}{{u}}_{{t}}{}{{w}}_{{y}}$ (4)

Compare with the jetnumbers notation, and because the DepVars involve different dependencies, the enumeration representing independent variables is also displayed

 > $\mathrm{jetnumbersPDE}≔\mathrm{ToJet}\left(\mathrm{PDE},\mathrm{DepVars},\mathrm{notation}=\mathrm{jetnumbers}\right)$
 ${\mathrm{jet notation: \left[1 = x, 2 = t, 3 = y\right]}}$
 ${\mathrm{________________________________}}$
 ${\mathrm{jetnumbersPDE}}{≔}{u}\left[\right]{}{{v}}_{{2}}{}{{w}}_{{3}}{+}{{u}}_{{1}}{}{v}\left[\right]{}{w}\left[\right]{+}{{u}}_{{2}}{}{v}\left[\right]{}{{w}}_{{3}}$ (5)

To avoid displaying information regarding the enumeration for the independent variables include the keyword quiet.

In all cases, to convert back, use FromJet

 > $\mathrm{FromJet}\left(\mathrm{jetnumbersPDE},\mathrm{DepVars}\right)$
 $\left(\frac{{\partial }}{{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}{v}{}\left({t}\right){}{w}{}\left({y}\right){+}\left(\frac{{\partial }}{{\partial }{t}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}{v}{}\left({t}\right){}\left(\frac{{ⅆ}}{{ⅆ}{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{w}{}\left({y}\right)\right){+}{u}{}\left({x}{,}{t}\right){}\left(\frac{{ⅆ}}{{ⅆ}{t}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{v}{}\left({t}\right)\right){}\left(\frac{{ⅆ}}{{ⅆ}{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{w}{}\left({y}\right)\right)$ (6)

To have the output in D notation use the optional argument differentiationnotation = D

 > $\mathrm{FromJet}\left(\mathrm{jetPDE},\mathrm{DepVars},\mathrm{differentiationnotation}=\mathrm{D}\right)$
 ${{\mathrm{D}}}_{{1}}{}\left({u}\right){}\left({x}{,}{t}\right){}{v}{}\left({t}\right){}{w}{}\left({y}\right){+}{{\mathrm{D}}}_{{2}}{}\left({u}\right){}\left({x}{,}{t}\right){}{v}{}\left({t}\right){}{\mathrm{D}}{}\left({w}\right){}\left({y}\right){+}{u}{}\left({x}{,}{t}\right){}{\mathrm{D}}{}\left({v}\right){}\left({t}\right){}{\mathrm{D}}{}\left({w}\right){}\left({y}\right)$ (7)

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 $\mathrm{jetnumbersPDE}$ with respect to $t$ is given by diff(PDE, t) or, in the jet notation of jetnumbersPDE, by

 > $\mathrm{D_Dx}\left(\mathrm{jetnumbersPDE},t,\mathrm{DepVars}\right)$
 ${u}\left[\right]{}{{v}}_{{2}{,}{2}}{}{{w}}_{{3}}{+}{{u}}_{{1}}{}{{v}}_{{2}}{}{w}\left[\right]{+}{2}{}{{u}}_{{2}}{}{{v}}_{{2}}{}{{w}}_{{3}}{+}{{u}}_{{1}{,}{2}}{}{v}\left[\right]{}{w}\left[\right]{+}{{u}}_{{2}{,}{2}}{}{v}\left[\right]{}{{w}}_{{3}}$ (8)
 > $\mathrm{FromJet}\left(,\mathrm{DepVars}\right)$
 $\left(\frac{{{\partial }}^{{2}}}{{\partial }{t}{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}{v}{}\left({t}\right){}{w}{}\left({y}\right){+}\left(\frac{{\partial }}{{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}\left(\frac{{ⅆ}}{{ⅆ}{t}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{v}{}\left({t}\right)\right){}{w}{}\left({y}\right){+}\left(\frac{{{\partial }}^{{2}}}{{\partial }{{t}}^{{2}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}{v}{}\left({t}\right){}\left(\frac{{ⅆ}}{{ⅆ}{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{w}{}\left({y}\right)\right){+}{2}{}\left(\frac{{\partial }}{{\partial }{t}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}\left(\frac{{ⅆ}}{{ⅆ}{t}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{v}{}\left({t}\right)\right){}\left(\frac{{ⅆ}}{{ⅆ}{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{w}{}\left({y}\right)\right){+}{u}{}\left({x}{,}{t}\right){}\left(\frac{{{ⅆ}}^{{2}}}{{ⅆ}{{t}}^{{2}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{v}{}\left({t}\right)\right){}\left(\frac{{ⅆ}}{{ⅆ}{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{w}{}\left({y}\right)\right)$ (9)
 > $\mathrm{diff}\left(\mathrm{PDE},t\right)-$
 ${0}$ (10)

Note that the D_Dx command is context sensitive: it returns using the jet notation found in the input, so if instead of $\mathrm{jetnumbersPDE}$ you pass $\mathrm{jetPDE}$ written using jetvariables, instead of (4.8) you get

 > $\mathrm{D_Dx}\left(\mathrm{jetPDE},t,\mathrm{DepVars}\right)$
 ${u}{}{{v}}_{{t}{,}{t}}{}{{w}}_{{y}}{+}{v}{}{w}{}{{u}}_{{x}{,}{t}}{+}{v}{}{{u}}_{{t}{,}{t}}{}{{w}}_{{y}}{+}{w}{}{{u}}_{{x}}{}{{v}}_{{t}}{+}{2}{}{{u}}_{{t}}{}{{v}}_{{t}}{}{{w}}_{{y}}$ (11)

FromJet can also be used to rewrite expressions involving the ODE jet notation of DEtools[Lie]

 > $\mathrm{JetODE}≔\mathrm{_y2}=f\left(x,y,\mathrm{_y1}\right)$
 ${\mathrm{JetODE}}{≔}{\mathrm{_y2}}{=}{f}{}\left({x}{,}{y}{,}{\mathrm{_y1}}\right)$ (12)
 > $\mathrm{D_Dx}\left(\mathrm{JetODE},x,y\left(x\right)\right)$
 ${\mathrm{_y3}}{=}\frac{{\partial }}{{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{f}{}\left({x}{,}{y}{,}{\mathrm{_y1}}\right){+}\left(\frac{{\partial }}{{\partial }{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{f}{}\left({x}{,}{y}{,}{\mathrm{_y1}}\right)\right){}{\mathrm{_y1}}{+}\left(\frac{{\partial }}{{\partial }{\mathrm{_y1}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{f}{}\left({x}{,}{y}{,}{\mathrm{_y1}}\right)\right){}{\mathrm{_y2}}$ (13)
 > $\mathrm{FromJet}\left(\mathrm{JetODE},y\left(x\right)\right)$
 $\frac{{{ⅆ}}^{{2}}}{{ⅆ}{{x}}^{{2}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{y}{}\left({x}\right){=}{f}{}\left({x}{,}{y}{}\left({x}\right){,}\frac{{ⅆ}}{{ⅆ}{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{y}{}\left({x}\right)\right)$ (14)
 > $\mathrm{ToJet}\left(,y\left(x\right)\right)$
 ${{y}}_{{x}{,}{x}}{=}{f}{}\left({x}{,}{y}{,}{{y}}_{{x}}\right)$ (15)

To have this output expressed using jetODE or jetvariableswithbrackets notation use the optional argument notation = ...

 > $\mathrm{ToJet}\left(,y\left(x\right),\mathrm{notation}=\mathrm{jetODE}\right)$
 ${\mathrm{_y2}}{=}{f}{}\left({x}{,}{y}{,}{\mathrm{_y1}}\right)$ (16)
 > $\mathrm{ToJet}\left(,y\left(x\right),\mathrm{notation}=\mathrm{jetvariableswithbrackets}\right)$
 ${{y}}_{{x}{,}{x}}{=}{f}{}\left({x}{,}{y}\left[\right]{,}{{y}}_{{x}}\right)$ (17)

Note also the conversion directly from ODE jet notation to PDE jet notation:

 > $\mathrm{ToJet}\left(\mathrm{JetODE},y\left(x\right)\right)$
 ${{y}}_{{x}{,}{x}}{=}{f}{}\left({x}{,}{y}{,}{{y}}_{{x}}\right)$ (18)

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\left(x\right)$ and $u\left(x,t\right)$ and various notations appear mixed:

 > $\mathrm{ee}≔\mathrm{_y2}\mathrm{_y1}+uy+y\left[x\right]u\left(x,t\right)+u\left[1\right]y\left(x\right)+u\left[x\right]u\left[t\right]$
 ${\mathrm{ee}}{≔}{\mathrm{_y2}}{}{\mathrm{_y1}}{+}{u}{}{y}{+}{{y}}_{{x}}{}{u}{}\left({x}{,}{t}\right){+}{{u}}_{{1}}{}{y}{}\left({x}\right){+}{{u}}_{{x}}{}{{u}}_{{t}}$ (19)
 > $\mathrm{DepVars}≔\left[y\left(x\right),u\left(x,t\right)\right]$
 ${\mathrm{DepVars}}{≔}\left[{y}{}\left({x}\right){,}{u}{}\left({x}{,}{t}\right)\right]$ (20)
 > $\mathrm{ToJet}\left(\mathrm{ee},\mathrm{DepVars}\right)$
 ${u}{}{y}{+}{u}{}{{y}}_{{x}}{+}{y}{}{{u}}_{{x}}{+}{{u}}_{{x}}{}{{u}}_{{t}}{+}{{y}}_{{x}{,}{x}}{}{{y}}_{{x}}$ (21)
 > $\mathrm{FromJet}\left(\mathrm{ee},\mathrm{DepVars}\right)$
 $\left(\frac{{{ⅆ}}^{{2}}}{{ⅆ}{{x}}^{{2}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{y}{}\left({x}\right)\right){}\left(\frac{{ⅆ}}{{ⅆ}{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{y}{}\left({x}\right)\right){+}{u}{}\left({x}{,}{t}\right){}{y}{}\left({x}\right){+}\left(\frac{{ⅆ}}{{ⅆ}{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{y}{}\left({x}\right)\right){}{u}{}\left({x}{,}{t}\right){+}\left(\frac{{\partial }}{{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}{y}{}\left({x}\right){+}\left(\frac{{\partial }}{{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right){}\left(\frac{{\partial }}{{\partial }{t}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{u}{}\left({x}{,}{t}\right)\right)$ (22)