charstrip - Maple Help

PDEtools

 charstrip
 find the characteristic strip corresponding to a given first order partial differential equation
 splitstrip
 divide the characteristic strip into uncoupled subsets

 Calling Sequence charstrip(PDE, f, simplifyusingpde) charstrip(characteristic_strip, f, reverse) splitstrip(PDE, f, simplifyusingpde)

Parameters

 PDE - partial differential equation f - indeterminate function reverse - used when passing a characterstic strip to be reversed, to get the PDE behind it simplifyusingpde - optional, can be true (default value) or false, to simplify the characteristic strip using the given PDE aiming at removing as much as possible occurrences of derivatives of f.

Description

 • These commands work only on first order PDEs, and return the given PDEs characteristic system depending on a parameter _s. Also, when the first argument is a characteristic strip, by passing the keyword reverse, charstrip returns the PDE behind it.
 • The splitstrip command returns the characteristic system divided into subsets, each one containing equations uncoupled with the ODEs of the other subsets. Depending on the PDE, this splitting of the characteristic system may strongly simplify its solving.
 • The Maple command usually used for solving coupled systems of ODEs (that is, the subsets returned by splitstrip) is dsolve (see dsolve/system).
 • Furthermore, it is possible to use the characteristic strip method for solving first order PDEs, by calling pdsolve with the option HINT = strip (see pdsolve).
 • This function is part of the PDEtools package, and so it can be used in the form charstrip(..) only after executing the command with(PDEtools). However, it can always be accessed through the long form of the command by using PDEtools[charstrip](..).

Examples

 > $\mathrm{with}\left(\mathrm{PDEtools}\right):$
 > $\mathrm{PDE}≔x\mathrm{diff}\left(f\left(x,y,z\right),z\right)-f\left(x,y,z\right)+{y}^{2}\mathrm{diff}\left(f\left(x,y,z\right),y\right)=0$
 ${\mathrm{PDE}}{≔}{x}{}\left(\frac{{\partial }}{{\partial }{z}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{f}{}\left({x}{,}{y}{,}{z}\right)\right){-}{f}{}\left({x}{,}{y}{,}{z}\right){+}{{y}}^{{2}}{}\left(\frac{{\partial }}{{\partial }{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{f}{}\left({x}{,}{y}{,}{z}\right)\right){=}{0}$ (1)
 > $\mathrm{sys0}≔\mathrm{charstrip}\left(\mathrm{PDE},f\left(x,y,z\right)\right)$
 ${\mathrm{sys0}}{≔}\left\{\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{f}{}\left({\mathrm{_s}}\right){=}{f}{}\left({\mathrm{_s}}\right){,}\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{x}{}\left({\mathrm{_s}}\right){=}{0}{,}\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{y}{}\left({\mathrm{_s}}\right){=}{{y}{}\left({\mathrm{_s}}\right)}^{{2}}{,}\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{z}{}\left({\mathrm{_s}}\right){=}{x}{}\left({\mathrm{_s}}\right)\right\}$ (2)

This system can now be solved using dsolve.

 > $\mathrm{dsolve}\left(\mathrm{sys0},\left\{f\left(\mathrm{_s}\right),x\left(\mathrm{_s}\right),y\left(\mathrm{_s}\right),z\left(\mathrm{_s}\right)\right\},\mathrm{explicit}\right)$
 $\left\{{f}{}\left({\mathrm{_s}}\right){=}{\mathrm{_C4}}{}{{ⅇ}}^{{\mathrm{_s}}}{,}{x}{}\left({\mathrm{_s}}\right){=}{\mathrm{_C2}}{,}{y}{}\left({\mathrm{_s}}\right){=}\frac{{1}}{{-}{\mathrm{_s}}{+}{\mathrm{_C3}}}{,}{z}{}\left({\mathrm{_s}}\right){=}{\mathrm{_C2}}{}{\mathrm{_s}}{+}{\mathrm{_C1}}\right\}$ (3)

The system was solved by coupling the ODEs above and splitting the set into three subsets, which are mutually uncoupled.

 > $\mathrm{sys1}≔\mathrm{splitstrip}\left(\mathrm{PDE},f\left(x,y,z\right)\right)$
 ${\mathrm{sys1}}{≔}\left\{\left\{\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{f}{}\left({\mathrm{_s}}\right){=}{f}{}\left({\mathrm{_s}}\right)\right\}{,}\left\{\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{y}{}\left({\mathrm{_s}}\right){=}{{y}{}\left({\mathrm{_s}}\right)}^{{2}}\right\}{,}\left\{\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{x}{}\left({\mathrm{_s}}\right){=}{0}{,}\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{z}{}\left({\mathrm{_s}}\right){=}{x}{}\left({\mathrm{_s}}\right)\right\}\right\}$ (4)

This makes it possible to solve each ODE separately.

 > $\mathrm{ans}≔\mathrm{map}\left(u↦\mathrm{dsolve}\left(u,\mathrm{indets}\left(u,\mathrm{Function}\right),\mathrm{explicit}\right),\mathrm{sys1}\right)$
 ${\mathrm{ans}}{≔}\left\{\left\{{f}{}\left({\mathrm{_s}}\right){=}{\mathrm{_C1}}{}{{ⅇ}}^{{\mathrm{_s}}}\right\}{,}\left\{{y}{}\left({\mathrm{_s}}\right){=}\frac{{1}}{{-}{\mathrm{_s}}{+}{\mathrm{_C1}}}\right\}{,}\left\{{x}{}\left({\mathrm{_s}}\right){=}{\mathrm{_C2}}{,}{z}{}\left({\mathrm{_s}}\right){=}{\mathrm{_C2}}{}{\mathrm{_s}}{+}{\mathrm{_C1}}\right\}\right\}$ (5)

When computing the characteristic strip, by default the strip is simplified taking the PDE itself into account, aiming at diminishing occurrences of derivatives of the unknown of the problem. This is useful in that it makes easier the integration of the resulting ODE system. On the other hand, there are situations in which this simplification is undesired, for example: when deriving the PDE behind a given characteristic strip. Consider for instance

 > $\mathrm{PDE}≔\mathrm{diff}\left(z\left(x,y\right),x\right)\mathrm{diff}\left(z\left(x,y\right),y\right)-z\left(x,y\right)=0$
 ${\mathrm{PDE}}{≔}\left(\frac{{\partial }}{{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{z}{}\left({x}{,}{y}\right)\right){}\left(\frac{{\partial }}{{\partial }{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{z}{}\left({x}{,}{y}\right)\right){-}{z}{}\left({x}{,}{y}\right){=}{0}$ (6)

The corresponding characteristic strip without simplifying it taking PDE into account is given by

 > $\mathrm{charstrip}\left(\mathrm{PDE},z\left(x,y\right),\mathrm{simplifyusingpde}=\mathrm{false}\right)$
 $\left\{\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{x}{}\left({\mathrm{_s}}\right){=}{{\mathrm{_p}}}_{{2}}{}\left({\mathrm{_s}}\right){,}\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{y}{}\left({\mathrm{_s}}\right){=}{{\mathrm{_p}}}_{{1}}{}\left({\mathrm{_s}}\right){,}\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{z}{}\left({\mathrm{_s}}\right){=}{2}{}{{\mathrm{_p}}}_{{1}}{}\left({\mathrm{_s}}\right){}{{\mathrm{_p}}}_{{2}}{}\left({\mathrm{_s}}\right){,}\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{{\mathrm{_p}}}_{{1}}{}\left({\mathrm{_s}}\right){=}{{\mathrm{_p}}}_{{1}}{}\left({\mathrm{_s}}\right){,}\frac{{ⅆ}}{{ⅆ}{\mathrm{_s}}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{{\mathrm{_p}}}_{{2}}{}\left({\mathrm{_s}}\right){=}{{\mathrm{_p}}}_{{2}}{}\left({\mathrm{_s}}\right)\right\}\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}{&where}\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}\left\{{{\mathrm{_p}}}_{{1}}{=}\frac{{\partial }}{{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{z}{}\left({x}{,}{y}\right){,}{{\mathrm{_p}}}_{{2}}{=}\frac{{\partial }}{{\partial }{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{z}{}\left({x}{,}{y}\right)\right\}$ (7)

Departing from this result it is possible to re-obtain PDE (this is possible only when the characteristic strip was constructed without simplifying using the PDE itself, as it is the case above). For that purpose, pass the characteristic strip as first argument and the keyword reverse

 > $\mathrm{charstrip}\left(,z\left(x,y\right),\mathrm{reverse}\right)$
 $\left(\frac{{\partial }}{{\partial }{x}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{z}{}\left({x}{,}{y}\right)\right){}\left(\frac{{\partial }}{{\partial }{y}}\phantom{\rule[-0.0ex]{0.4em}{0.0ex}}{z}{}\left({x}{,}{y}\right)\right){+}{\mathrm{_C1}}{-}{z}{}\left({x}{,}{y}\right)$ (8)

Note the arbitrary constant that appears in this result: for any value of this constant, the characteristic strip is the same.