DEtools[odepde] - return the PDE for the coefficients of the symmetry generator
|
Calling Sequence
|
|
odepde(ODE, sym)
odepde(ODE, chi)
odepde(ODE, C)
|
|
Parameters
|
|
ODE
|
-
|
ODE (ordinary differential equation)
|
sym
|
-
|
symmetry from which to build a PDE
|
chi
|
-
|
(optional) different scheme to obtain the coefficients of the infinitesimal that generate the PDE
|
C
|
-
|
obtain the ODE generated by applying a differential operator to C
|
|
|
|
|
Description
|
|
•
|
Given a first order ODE
|
>
|
diff(y(x),x) = F(x, y(x));
|
| (1) |
|
that is assumed to be invariant under the action of the one-parameter Lie group with infinitesimal generator
|
>
|
f -> xi(x, y)*diff(f,x) + eta(x, y) *diff(f,y);
|
| (2) |
>
|
diff(y(x),x,x) = F(x, y(x), diff(y(x),x));
|
| (3) |
|
assumed to be invariant under
|
>
|
f -> xi(x, y, _y1)*diff(f,x) + eta(x, y, _y1) *diff(f,y);
|
| (4) |
|
assumed to be invariant under
|
>
|
f -> xi(x, y, _y1,`...`,_yn)*diff(f,x) + eta(x, y, _y1,`...`,_yn) *diff(f,y);
|
| (5) |
|
the odepde command builds the PDE that must be satisfied by the infinitesimals xi and eta. This command is context sensitive; it returns the appropriate PDE depending on the differential order of the given ODE.
|
•
|
As a convention, represents the first derivative of the indeterminate function of the given ODE, represents the second, and so on.
|
|
Thus, any solution , gives rise to a solution with xi=0, . This means that we can always set xi=0 without any loss of generality. To obtain the PDE for eta when xi=0, call odepde directly with the extra argument chi.
|
•
|
To any nth order ODE, , there is a corresponding differential operator, ,
|
>
|
A := C -> diff(C,x) + _y1*diff(C,y)+ `...` + `_y(n-1)`*diff(C,`_y(n-2)`) + F*diff(C,`_y(n-1)`);
|
| (6) |
•
|
If you are not directly interested in the PDE for xi and eta, but in the PDE for "a restricted form" of these infinitesimals, you can specify this restricted form at first, as an extra argument, and odepde builds the PDE starting from it. This is more efficient than generating the most general PDE and then substituting particular values for xi and eta afterwards, since for ODEs of degree three or higher, the size of the corresponding PDE grows exponentially as the order increases.
|
•
|
This function is part of the DEtools package, and so it can be used in the form odepde(..) only after executing the command with(DEtools). However, it can always be accessed through the long form of the command by using DEtools[odepde](..).
|
|
|
Examples
|
|
>
|
|
>
|
|
| (7) |
>
|
|
| (8) |
>
|
|
| (9) |
A concrete example of a second order ODE
>
|
|
| (10) |
>
|
|
| (11) |
What some of symgen's routines (way=2 and way=5) actually do is to look for particular solutions for and translate the result into an expression for _xi and _eta using xi = F*eta + chi explained above. For example:
>
|
|
| (12) |
The size of the PDE grows exponentially as the order of the ODE increases:
>
|
|
| (13) |
>
|
|
| (14) |
>
|
|
| (15) |
| (16) |
However, the expressions are not so large when you work with a restricted form of the infinitesimals. For example:
>
|
|
| (17) |
|
|