Overview of the DEtools[Lie] Subpackage
The DEtools[Lie] subpackage is a collection of commands and routines for the analytical solving of ODEs using integrating factors and Lie group symmetry methods, based on work by E.S. Cheb-Terrab, A.D. Roche, L.G.S. Duarte, and L.A.C.P. da Mota (see References below).
The set of commands includes routines for the following.
- Classifying ODEs according to standard textbooks
- Explicitly determining the coefficients of the infinitesimal symmetry generator
- Building a concrete solution for the given ODE using these infinitesimals
- Constructing the most general ODE invariant under given symmetries or integrating factors
- Explicitly determining integrating factors and first integrals for given nth order ODEs
- Determining the canonical coordinates of underlying invariant groups
- Testing the returned results.
The following is a list of available commands.
A brief description of these commands is as follows.
buildsol builds a solution for an ODE by using a reduction of order (see dsolve,ODESolStruc) and a solution for the reduced ODE.
By using the solution of an ODE and the dependent variable, buildsym looks for a pair of infinitesimals for the "unknown" ODE that generated the problem. At present, buildsym is able to look for symmetries of solutions of first and second order ODEs only.
canoni looks for a set of transformations from the original coordinates of the ODE to the canonical coordinates of the underlying invariance group, by using the coefficients of the symmetry generator (infinitesimals). These are the transformations that reduce the ODE to a quadrature.
convert/ODEs converts to either a Riccati or a second order linear ODE.
equinv returns, within the possibilities of the system, the most general ODE invariant under a one-parameter Lie group or groups by using a pair or a list of pairs of infinitesimals corresponding to that group or groups.
eta_k returns the k-prolongation of eta by using a pair of infinitesimals related to point or dynamical symmetries and the required extension, say k.
firint returns a first integral, that is, an ODE of order n−1, by using an exact nth order ODE -- typically an ODE times an integrating factor.
firtest tests whether or not a given expression is a first integral of a given ODE.
Given an ODE, gensys returns the determining PDE system related to either its symmetries or its integrating factors, depending on the second argument. This command is typically used together with other commands to determine symmetries and integrating factors for ODEs.
infgen returns a k-extended infinitesimal generator (a Maple mapping), by using a pair of infinitesimals and the required extension, say k.
intfactor looks for the integrating factor for a given first order ODE.
invariants returns a sequence of differential invariants, starting with the one of order zero and finishing with the one of order k, by using a pair of infinitesimals (and optionally k).
line_int computes the solution to the equation ∇⁡F=G as a line integral when the partial derivatives of F are given.
muchange returns an integrating factor in the new variables for the transformed ODE, given a change of variables, an integrating factor of an ODE, and the dependent variable, say y⁡x.
mutest tests whether or not a given expression is an integrating factor of a given ODE.
normalG2 returns a sequence of infinitesimals Y1,Y2, such that Y1 and Y2 are built using linear combinations of a given pair of infinitesimals X1 and X2 and satisfy Y1,Y2=Y1, where Y1,Y2 is the commutator of Y1 and Y2.
odeadvisor's main goal is to classify ODEs, and it pops up a Help page giving some advice for solving them when the word help is given as an extra argument. The Help pages available concern ODEs of the types frequently found in the literature (see for instance dsolve,references) .
odepde builds the PDE that must be satisfied by the infinitesimals xi and eta of a one-parameter Lie group of invariance of a given ODE. This command is context sensitive; it returns the appropriate PDE depending on the differential order of the received ODE.
power_equivalent receives a linear ODE of any order, or a Riccati or Abel first order nonlinear equation, and returns an equivalent ODE and a power transformation, x -> x^k, relating the two ODEs, such that the returned ODE has invariants with minimal degrees with respect to power transformations.
rational_equivalent receives a linear ODE of any order, or a Riccati or Abel first order nonlinear equation, and returns an equivalent ODE and a rational transformation, x -> R(x), relating the two ODEs, such that the returned ODE has invariants with minimal degrees with respect to rational transformations.
redode returns the most general ODE of order n admitting an expression mu⁡x,y,... as an integrating factor, given mu.
reduce_order computes a sequence of changes of variable that reduce the order of a given ODE by using the symmetries provided.
remove_RootOf removes an algebraic expression containing a RootOf by rewriting the expression. In general, this command is used to directly and naturally convey the mathematical meaning of algebraic expressions that contain RootOfs.
solve_group returns a representation of the derived algebras by using a list of infinitesimals of Lie symmetry group generators; it also determines if the group is solvable.
symgen looks for the infinitesimals xi and eta of a one-parameter Lie group that make the given ODE invariant. This command can also find, in principle, dynamical symmetries.
symtest checks whether a pair of infinitesimals are a symmetry for a given ODE by simplifying the associated PDE for the infinitesimals with respect to the given pair. This command can, in principle, test both point and dynamical symmetries.
transinv looks for the set of transformations of variables that make an ODE invariant, by using the coefficients of a symmetry generator (infinitesimals) for it. These transformations are actually the finite form of a one-parameter Lie group of invariance of the ODE.
Xchange performs a change of variables on an ODE point symmetry generator by using a set of transformation equations and a pair of infinitesimals ξ,η, representing the coefficients of a point symmetry generator of an ODE, and the dependent variable, say y⁡x. This change of variables takes into account that ξ⁡x,y,η⁡x,y are the coefficients of a differential operator.
Xcommutator returns the commutator of two generators of one-parameter Lie groups by receiving these generators (either in the form of a pair of infinitesimals ξ,η or in the form of differential operators) and the dependent variable, say y⁡x.
Xgauge performs a transformation on a given generator of a one-parameter Lie group based on the dependent variable and an optional "gauge" in the form ξ=expr or η=expr.
Cheb-Terrab, E.S.; Duarte, L.G.S.; and da Mota, L.A.C.P. "Computer Algebra Solving of Second Order ODEs Using Symmetry Methods." Computer Physics Communications, Vol. 108. (1998): 90.
Cheb-Terrab, E.S., and Roche, A.D. "Integrating Factors for Second Order ODEs." Journal of Symbolic Computation, Vol. 27, No. 5. (1999): 501-519.
For the methods implemented in this subpackage, see
Bluman, G.W., and Kumei, S. "Symmetries and Differential Equations." Applied Mathematical Sciences, Vol. 81. Springer-Verlag. (1989)
Stephani, H. Differential Equations: Their Solution Using Symmetries. Edited by M.A.H. MacCallum. New York and London: Cambridge University Press.
For a general reference concerning the implementation of symmetry methods in Computer Algebra Systems, see
Hereman, W. "Review of Symbolic Software for Lie Symmetry Analysis." Mathematical and Computer Modeling, Vol. 20, Special Issue on Algorithms for Nonlinear Systems. (1995)
Download Help Document