IntegratingFactors - Maple Help

PDEtools

 IntegratingFactors
 computes generalized integrating factors for a system of differential equations (DE)
 IntegratingFactorTest
 tests whether a given list of expressions is a list of generalized integrating factors for the given system of differential equations

 Calling Sequence IntegratingFactors(PDESYS, DepVars, _mu = ..., displayfunctionality = ..., jetnotation = ..., simplifier = ..., split = ...) IntegratingFactorTest(Mu, PDESYS, DepVars)

Parameters

 PDESYS - a system consisting of an equation or a list of equations involving partial and/or ordinary (possibly not) differential equations Mu - a generalized integrating factor returned by IntegratingFactors DepVars - optional - a specification of the unknown(s) in PDESYS _mu = ... - optional - indicates the functional form of the generalized integrating factors displayfunctionality = ... - optional - can be true (default) or false, to display the functionality on the left-hand-side of the mu[k] (generalized integrating factors) functions jetnotation = ... - (optional) can be false (default), jetvariables, jetvariableswithbrackets, jetnumbers or jetODE; to respectively return or not using the different jet notations available order - optional - indicates the maximum differential order of the derivatives entering the dependence of the integrating factors simplifier = ... - optional - indicates the simplifier to be used instead of the default simplify/size split = ... - optional - can be true (default) or false, to split the DE system to be solved in order to compute the J[k] functions typeofintegratingfactor = ... - optional - can be polynomial or functionfield.

Description

 • Given a system $\mathrm{\Delta }=0$ consisting of N equations ${\mathrm{pde}}_{n}$, $n=1..N$, where the independent variables are ${x}_{1},{x}_{2},\mathrm{...}=X$, and the dependent variables are ${u}_{1},{u}_{2},\mathrm{...}=U$, with $\mathrm{dU}$ denoting the set of partial derivatives of $U$, the generalized integrating factors are expressions ${\mathrm{\mu }}_{\mathrm{\alpha },n}\left(X,U,\mathrm{dU}\right)$ such that $\mathrm{\Sigma }{\mathrm{\mu }}_{\mathrm{\alpha },n}{\mathrm{pde}}_{n}=\mathrm{Divergence}\left({J}_{\mathrm{\alpha }}\right)$ = 0, so ${J}_{\mathrm{\alpha }}$ is a conserved current. These generalized integrating factors, also called characteristic functions of conserved currents (see reference [1]), coincide with the traditional integrating factors when there is only one independent variable, so that $\mathrm{\Delta }$ is a system of ODEs.
 • The command IntegratingFactors computes these generalized integrating factors. The command IntegratingFactorTest verifies the result for correctness.
 • Given the system $\mathrm{\Delta }=0$ the output of IntegratingFactors is as a sequence of $\mathrm{\alpha }$ lists, each one containing N ${\mathrm{\mu }}_{\mathrm{\alpha },n}$, where $n=1..N$, satisfying $\mathrm{\Sigma }{\mathrm{\mu }}_{\mathrm{\alpha },n}{\mathrm{pde}}_{n}=\mathrm{Divergence}\left({J}_{\mathrm{\alpha }}\right)$ = 0.
 • The ${\mathrm{\mu }}_{\mathrm{\alpha },n}\left(X,U,\mathrm{dU}\right)$ are computed constructing the PDE system they satisfy by applying Euler's operator to $\mathrm{\Sigma }{\mathrm{\mu }}_{\mathrm{\alpha },n}{\mathrm{pde}}_{n}=0$ , then solving this system for the ${\mathrm{\mu }}_{\mathrm{\alpha },n}$ using pdsolve.
 • By default, the integrating factors are searched as functions depending on the derivatives of the unknowns of the system (specified as DepVars or automatically detected) up to the order d-1, where d is the highest order of derivatives entering PDESYS. This default can be changed by optionally passing the argument order = m, where m is a nonnegative integer.
 • By default, the conserved currents are searched as functions with no pre-specified form, just with the dependency explained in the previous paragraph. This default can be changed with the option typeofconservedcurrent = ... where the right-hand-side can be polynomial or functionfield, respectively indicating a conserved current of polynomial type, or of a functionfield type with the meaning explained in FunctionField.
 • By default, the functionality of ${\mathrm{\mu }}_{\mathrm{\alpha },n}\left(X,U,\mathrm{dU}\right)$, entering the left-hand-sides of each element in the returned lists, is displayed, the output is presented in functional notation instead of jet notation and is simplified with respect to its size. The PDE system solved to compute the ${\mathrm{\mu }}_{\mathrm{\alpha },n}\left(X,U,\mathrm{dU}\right)$ is also split, when that is possible, before being tackled. All these defaults can be changed by passing the optional arguments displayfunctionality = ..., jetnotation = ..., simplifier = ..., split = false.
 • It is also possible to directly specify the functionality expected for the ${\mathrm{\mu }}_{\mathrm{\alpha },n}$ using _mu = .... See the examples for a demonstration of the use of this parameter.
 • 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

Consider the following PDE "system" consisting of a single pde

 > $\mathrm{with}\left(\mathrm{PDEtools}\right):$
 > $U≔\mathrm{diff_table}\left(u\left(x,t\right)\right):$
 > $\mathrm{declare}\left({U}_{[]}\right)$
 ${u}{}\left({x}{,}{t}\right){}{\mathrm{will now be displayed as}}{}{u}$ (1)
 > ${\mathrm{pde}}_{1}≔{U}_{t,t}+{U}_{x,x}+{U}_{x}{U}_{[]}=0$
 ${{\mathrm{pde}}}_{{1}}{≔}{u}{}{{u}}_{{x}}{+}{{u}}_{{t}{,}{t}}{+}{{u}}_{{x}{,}{x}}{=}{0}$ (2)

Two generalized integrating factors are

 > ${\mathrm{μ}}_{\mathrm{α}}≔\mathrm{IntegratingFactors}\left({\mathrm{pde}}_{1}\right)$
 ${{\mathrm{\mu }}}_{{\mathrm{\alpha }}}{≔}\left[{{\mathrm{_μ}}}_{{1}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}\right){=}{1}\right]{,}\left[{{\mathrm{_μ}}}_{{1}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}\right){=}{t}\right]$ (3)

Note that ${\mathrm{pde}}_{1}$ is already the divergence of a function, so that a constant (the number 1 in the result above) is an integrating factor. To verify for correctness these integrating factors use

 > $\mathrm{map}\left(\mathrm{IntegratingFactorTest},\left[{\mathrm{μ}}_{\mathrm{α}}\right],{\mathrm{pde}}_{1}\right)$
 $\left[\left\{{0}\right\}{,}\left\{{0}\right\}\right]$ (4)

The conserved currents are related to the generalized integrating factors via Sigma mu[alpha, n] pde[n] = Divergence J[alpha] = 0. These are the J[alpha] corresponding to the mu[alpha] computed above; they depend on arbitrary functions

 > ${J}_{\mathrm{α}}≔\mathrm{ConservedCurrents}\left({\mathrm{pde}}_{1}\right)$
 ${{J}}_{{\mathrm{\alpha }}}{≔}\left[{{\mathrm{_J}}}_{{x}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}\right){=}{{\mathrm{D}}}_{{3}}{}\left(\mathrm{f__3}\right){}\left({x}{,}{t}{,}{u}\right){}{{u}}_{{t}}{+}{{\mathrm{D}}}_{{2}}{}\left(\mathrm{f__3}\right){}\left({x}{,}{t}{,}{u}\right){+}{\mathrm{f__5}}_{{t}}{+}\frac{{{u}}^{{2}}}{{2}}{+}{{u}}_{{x}}{,}{{\mathrm{_J}}}_{{t}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}\right){=}{-}{\mathrm{f__5}}_{{x}}{-}{{\mathrm{D}}}_{{3}}{}\left(\mathrm{f__3}\right){}\left({x}{,}{t}{,}{u}\right){}{{u}}_{{x}}{-}{{\mathrm{D}}}_{{1}}{}\left(\mathrm{f__3}\right){}\left({x}{,}{t}{,}{u}\right){+}\mathrm{f__6}{}\left({x}\right){+}{{u}}_{{t}}\right]{,}\left[{{\mathrm{_J}}}_{{x}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}\right){=}{{\mathrm{D}}}_{{3}}{}\left(\mathrm{f__3}\right){}\left({x}{,}{t}{,}{u}\right){}{{u}}_{{t}}{+}{{\mathrm{D}}}_{{2}}{}\left(\mathrm{f__3}\right){}\left({x}{,}{t}{,}{u}\right){+}{\mathrm{f__5}}_{{t}}{+}\frac{{{u}}^{{2}}{}{t}}{{2}}{+}{t}{}{{u}}_{{x}}{,}{{\mathrm{_J}}}_{{t}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}\right){=}{-}{\mathrm{f__5}}_{{x}}{-}{{\mathrm{D}}}_{{3}}{}\left(\mathrm{f__3}\right){}\left({x}{,}{t}{,}{u}\right){}{{u}}_{{x}}{-}{{\mathrm{D}}}_{{1}}{}\left(\mathrm{f__3}\right){}\left({x}{,}{t}{,}{u}\right){+}\mathrm{f__6}{}\left({x}\right){+}{t}{}{{u}}_{{t}}{-}{u}\right]$ (5)

To verify these results use

 > $\mathrm{map}\left(\mathrm{ConservedCurrentTest},\left[{J}_{\mathrm{α}}\right],{\mathrm{pde}}_{1}\right)$
 $\left[\left\{{0}\right\}{,}\left\{{0}\right\}\right]$ (6)

An example where the integrating factor depends on an arbitrary function

 > ${\mathrm{pde}}_{2}≔{U}_{x,t}+{U}_{x,x,x}+{U}_{x}{U}_{[]}=0$
 ${{\mathrm{pde}}}_{{2}}{≔}{u}{}{{u}}_{{x}}{+}{{u}}_{{t}{,}{x}}{+}{{u}}_{{x}{,}{x}{,}{x}}{=}{0}$ (7)
 > $\mathrm{IntegratingFactors}\left({\mathrm{pde}}_{2}\right)$
 $\left[{{\mathrm{_μ}}}_{{1}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}{,}{{u}}_{{x}{,}{x}}{,}{{u}}_{{t}{,}{x}}{,}{{u}}_{{t}{,}{t}}\right){=}\mathrm{f__1}{}\left({t}{,}\frac{{{u}}^{{2}}}{{2}}{+}{{u}}_{{t}}{+}{{u}}_{{x}{,}{x}}\right)\right]$ (8)

For this example, integrating factors up to order 1, that is, depending at most on first order derivatives, are

 > $\mathrm{IntegratingFactors}\left({\mathrm{pde}}_{2},\mathrm{order}=1\right)$
 $\left[{{\mathrm{_μ}}}_{{1}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}\right){=}\mathrm{f__1}{}\left({t}\right)\right]$ (9)

which is in agreement with the general result obtained first. This is a related conserved current of order 1

 > $\mathrm{ConservedCurrents}\left({\mathrm{pde}}_{2},\mathrm{order}=1\right)$
 $\left[{{\mathrm{_J}}}_{{x}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}\right){=}{{\mathrm{D}}}_{{3}}{}\left(\mathrm{f__1}\right){}\left({x}{,}{t}{,}{u}\right){}{{u}}_{{t}}{+}{{\mathrm{D}}}_{{2}}{}\left(\mathrm{f__1}\right){}\left({x}{,}{t}{,}{u}\right){+}{\mathrm{f__3}}_{{t}}{,}{{\mathrm{_J}}}_{{t}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}\right){=}{-}{{\mathrm{D}}}_{{3}}{}\left(\mathrm{f__1}\right){}\left({x}{,}{t}{,}{u}\right){}{{u}}_{{x}}{-}{{\mathrm{D}}}_{{1}}{}\left(\mathrm{f__1}\right){}\left({x}{,}{t}{,}{u}\right){-}{\mathrm{f__3}}_{{x}}{+}\mathrm{f__4}{}\left({x}\right)\right]$ (10)

Specifying directly the functionality expected also confirms that there is no non-trivial integrating factor depending only on ${u}_{x}$ and ${u}_{t}$ but there is one depending on an arbitrary function of $u$, ${u}_{t}$ and ${u}_{x,x}$

 > $\mathrm{IntegratingFactors}\left({\mathrm{pde}}_{2},\mathrm{_μ}=f\left({U}_{x},{U}_{t}\right)\right)$
 $\left[{{\mathrm{_μ}}}_{{1}}{}\left({{u}}_{{x}}{,}{{u}}_{{t}}\right){=}{1}\right]$ (11)
 > $\mathrm{IntegratingFactors}\left({\mathrm{pde}}_{2},\mathrm{_μ}=f\left({U}_{x,x},{U}_{t},{U}_{[]}\right)\right)$
 $\left[{{\mathrm{_μ}}}_{{1}}{}\left({{u}}_{{x}{,}{x}}{,}{{u}}_{{t}}{,}{u}\right){=}\mathrm{f__1}{}\left({{u}}^{{2}}{+}{2}{}{{u}}_{{t}}{+}{2}{}{{u}}_{{x}{,}{x}}\right)\right]$ (12)

In various cases it is simpler, or of more use, to compute integrating factors of polynomial type, or with a mathematical function dependency on the field of functions of the input system. For these purposes use the option typeofintegratingfactor = ... where the right-hand-side can be polynomial or functionfield. For example, for ${\mathrm{pde}}_{2}$, a polynomial integrating factor, presented without specializing the arbitrary constants (option split = false) is

 > $\mathrm{IntegratingFactors}\left({\mathrm{pde}}_{2},\mathrm{type}=\mathrm{polynomial},\mathrm{split}=\mathrm{false}\right)$
 ${\mathrm{* Partial match of \text{'}type\text{'} against keyword \text{'}typeofintegratingfactor\text{'}}}$
 $\left[{{\mathrm{_μ}}}_{{1}}{}\left({x}{,}{t}{,}{u}{,}{{u}}_{{x}}{,}{{u}}_{{t}}{,}{{u}}_{{x}{,}{x}}{,}{{u}}_{{t}{,}{x}}{,}{{u}}_{{t}{,}{t}}\right){=}\left({{u}}^{{2}}{+}{2}{}{{u}}_{{t}}{+}{2}{}{{u}}_{{x}{,}{x}}\right){}\mathrm{c__3}{+}\mathrm{c__4}{}{{t}}^{{2}}{+}\mathrm{c__2}{}{t}{+}\mathrm{c__1}\right]$ (13)
 > $\mathrm{IntegratingFactorTest}\left(,{\mathrm{pde}}_{2}\right)$
 $\left\{{0}\right\}$ (14)

The following application of Euler's operator to ${\mathrm{pde}}_{2}$ shows that ${\mathrm{pde}}_{2}$ is already a divergence of a function

 > $\mathrm{Euler}\left({\mathrm{pde}}_{2}\right)$
 $\left\{{0}\right\}$ (15)

This is a conserved current with the same functionality of the last integrating factor computed and a verification of the result

 > ${J}_{\mathrm{α}}≔\mathrm{ConservedCurrents}\left({\mathrm{pde}}_{2},\mathrm{_J}=f\left({U}_{x,x},{U}_{t},{U}_{[]}\right)\right)$
 ${{J}}_{{\mathrm{\alpha }}}{≔}\left[{{\mathrm{_J}}}_{{x}}{}\left({{u}}_{{x}{,}{x}}{,}{{u}}_{{t}}{,}{u}\right){=}\mathrm{f__1}{}\left({{u}}^{{2}}{+}{2}{}{{u}}_{{t}}{+}{2}{}{{u}}_{{x}{,}{x}}\right){,}{{\mathrm{_J}}}_{{t}}{}\left({{u}}_{{x}{,}{x}}{,}{{u}}_{{t}}{,}{u}\right){=}{1}\right]$ (16)
 > $\mathrm{ConservedCurrentTest}\left({J}_{\mathrm{α}},{\mathrm{pde}}_{2}\right)$
 $\left\{{0}\right\}$ (17)

References

 [1] Olver, P.J. Applications of Lie Groups to Differential Equations. Graduate Texts in Mathematics. Springer-Verlag, 1993.