|
Calling Sequence
|
|
IsLinearizable(DEs, V)
|
|
Parameters
|
|
DEs
|
-
|
an equation or a list of differential equations
|
V
|
-
|
a VectorField object
|
|
|
|
|
Description
|
|
•
|
The command IsLinearizable(...) checks if an ordinary differential equations (ODEs) system can be transformed to a linear ODE by a point transformation. In other words, let S be a single ODE system with a single dependent variable and independent variable . Then the method returns true if there exists an invertible transformation to a single linear ODE, for some smooth function and , and return false otherwise.
|
•
|
The second input argument is a VectorField object where the first argument ODEs is associated with. For more detail about how to construct a VectorField object, see LieAlgebrasOfVectorFields[VectorField]
|
•
|
This command can be used in the form IsLinearizable(...) only after executing the command with(LieAlgebrasOfVectorFields), but can always be used in the form :-LieAlgebrasOfVectorFields:-IsLinearizable(...).
|
>
|
with(LieAlgebrasOfVectorFields);
|
| (1) |
>
|
Typesetting:-Settings(userep=true);
|
>
|
Typesetting:-Suppress([xi(x,y),eta(x,y)]);
|
>
|
V := VectorField(xi(x,u)*D[x] + eta(x,u)*D[u], space = [x,u]);
|
| (3) |
>
|
ODE[1] := diff(u(x),x,x,x) + u(x)*diff(u(x),x,x)^2 + 2*u(x) = 0;
|
| (4) |
>
|
L := IsLinearizable(ODE[1], V);
|
>
|
ODE[2] := 2*x^2*u(x)*diff(u(x),x,x,x,x) + x^2*u(x)^2 + 8*x^2*diff(u(x),x)*diff(u(x),x,x,x) + 16*x*u(x)*diff(u(x),x,x,x) + 6*x^2*diff(u(x),x,x)^2 + 48*x*diff(u(x),x)*diff(u(x),x,x) + 24*u(x)*diff(u(x),x,x) + 24*diff(u(x),x)^2 = 0;
|
| (6) |
>
|
IsLinearizable(ODE[2], V);
|
>
|
ODE[3] := diff(u(x), x, x, x) + 3*diff(u(x), x)*(diff(u(x), x, x) - diff(u(x), x))/u(x) - 3*diff(u(x), x, x) + 2*diff(u(x), x) - u(x) = 0;
|
| (8) |
>
|
IsLinearizable(ODE[3], V);
|
>
|
FalknerEq := diff(u(x), x, x, x) + u(x)*diff(u(x), x, x) + beta*(1 - diff(u(x), x, x)^2) = 0;
|
| (10) |
>
|
IsLinearizable(FalknerEq, V);
|
|
|
|