Builtins - Maple Help

overview of overloaded builtins for LHPDO object.

Description

 • The functionalities of some Maple builtin commands are extended for use on LHPDO object.
 • The following builtins have been overloaded for this purpose: normal, expand, simplify, indets, has, type, hastype
 • The normal, expand, simplify builtin commands accept a LHPDO object and apply their methods onto the coefficients of the differential operator. They return an LHPDO object with the new coefficients.
 • Let Delta be a LHPDO object.
 • (i) The call type(Delta, t) returns true if t is any of the following types: module, object, anything, appliable and LHPDO. See examples below.
 • (ii) The calls type(Delta, dependent(x)) and type(Delta, freeof(x)) respectively return true if the differential operator or the independent variables of Delta contain (respectively don't contain) x. See example below.
 • The indets, has, hastype builtin commands accept a LHPDO object and apply their methods onto the differential operator and the independent variables of the object.
 • These overloaded builtins are associated with the LHPDO object. For more detail, see Overview of the LHPDO object.

Examples

 > $\mathrm{with}\left(\mathrm{LieAlgebrasOfVectorFields}\right):$

Construct an LHPDO object from some differential expressions...

 > $\mathrm{\Delta }≔\mathrm{LHPDO}\left(\left[x\left(x-1\right)\mathrm{diff}\left(u\left(x,t\right),x\right)-{x}^{2}\mathrm{diff}\left(u\left(x,t\right),x\right)-\mathrm{diff}\left(v\left(x,t\right),t\right),\left({\mathrm{cos}\left(a\right)}^{2}+{\mathrm{sin}\left(a\right)}^{2}\right)\mathrm{diff}\left(u\left(x,t\right),t\right)+\mathrm{diff}\left(v\left(x,t\right),x\right)\right]\right)$
 ${\mathrm{\Delta }}{≔}\left({u}{,}{v}\right){→}\left[{-}\left(\frac{{\partial }}{{\partial }{t}}{}{v}\right){+}\left({x}{}\left({x}{-}{1}\right){-}{{x}}^{{2}}\right){}\left(\frac{{\partial }}{{\partial }{x}}{}{u}\right){,}\left({{\mathrm{cos}}{}\left({a}\right)}^{{2}}{+}{{\mathrm{sin}}{}\left({a}\right)}^{{2}}\right){}\left(\frac{{\partial }}{{\partial }{t}}{}{u}\right){+}\frac{{\partial }}{{\partial }{x}}{}{v}\right]$ (1)

normal, expand, simplify

 > $\mathrm{normal}\left(\mathrm{\Delta }\right)$
 $\left({u}{,}{v}\right){→}\left[{-}{x}{}\left(\frac{{\partial }}{{\partial }{x}}{}{u}\right){-}\left(\frac{{\partial }}{{\partial }{t}}{}{v}\right){,}{{\mathrm{cos}}{}\left({a}\right)}^{{2}}{}\left(\frac{{\partial }}{{\partial }{t}}{}{u}\right){+}{{\mathrm{sin}}{}\left({a}\right)}^{{2}}{}\left(\frac{{\partial }}{{\partial }{t}}{}{u}\right){+}\frac{{\partial }}{{\partial }{x}}{}{v}\right]$ (2)
 > $\mathrm{expand}\left(\mathrm{\Delta }\right)$
 $\left({u}{,}{v}\right){→}\left[{-}{x}{}\left(\frac{{\partial }}{{\partial }{x}}{}{u}\right){-}\left(\frac{{\partial }}{{\partial }{t}}{}{v}\right){,}{{\mathrm{cos}}{}\left({a}\right)}^{{2}}{}\left(\frac{{\partial }}{{\partial }{t}}{}{u}\right){+}{{\mathrm{sin}}{}\left({a}\right)}^{{2}}{}\left(\frac{{\partial }}{{\partial }{t}}{}{u}\right){+}\frac{{\partial }}{{\partial }{x}}{}{v}\right]$ (3)
 > $\mathrm{simplify}\left(\mathrm{\Delta },\mathrm{trig}\right)$
 $\left({u}{,}{v}\right){→}\left[{-}{x}{}\left(\frac{{\partial }}{{\partial }{x}}{}{u}\right){-}\left(\frac{{\partial }}{{\partial }{t}}{}{v}\right){,}\frac{{\partial }}{{\partial }{x}}{}{v}{+}\frac{{\partial }}{{\partial }{t}}{}{u}\right]$ (4)

type

 > $\mathrm{type}\left(\mathrm{\Delta },'\mathrm{LHPDO}'\right),\mathrm{type}\left(\mathrm{\Delta },'\mathrm{object}'\right),\mathrm{type}\left(\mathrm{\Delta },'\mathrm{module}'\right),\mathrm{type}\left(\mathrm{\Delta },'\mathrm{appliable}'\right)$
 ${\mathrm{true}}{,}{\mathrm{true}}{,}{\mathrm{true}}{,}{\mathrm{true}}$ (5)

The LHPDO object contains x

 > $\mathrm{type}\left(\mathrm{\Delta },\mathrm{dependent}\left(x\right)\right)$
 ${\mathrm{true}}$ (6)
 > $\mathrm{type}\left(\mathrm{\Delta },\mathrm{freeof}\left(x\right)\right)$
 ${\mathrm{false}}$ (7)

But the object does not contain the dummy "dependent variable" names...

 > $\mathrm{type}\left(\mathrm{\Delta },\mathrm{dependent}\left(\left[u,v\right]\right)\right)$
 ${\mathrm{false}}$ (8)

indets, has, hastype

 > $\mathrm{indets}\left(\mathrm{\Delta }\right)$
 $\left\{{a}{,}{t}{,}{x}{,}{\mathrm{cos}}{}\left({a}\right){,}{\mathrm{sin}}{}\left({a}\right)\right\}$ (9)
 > $\mathrm{has}\left(\mathrm{\Delta },v\right)$
 ${\mathrm{false}}$ (10)
 > $\mathrm{hastype}\left(\mathrm{\Delta },\mathrm{scalar}\right)$
 ${\mathrm{true}}$ (11)
 > $\mathrm{hastype}\left(\mathrm{\Delta },\mathrm{float}\right)$
 ${\mathrm{false}}$ (12)

Compatibility

 • The LHPDO Object Overloaded Builtins command was introduced in Maple 2020.