power_equivalent - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


DEtools

  

power_equivalent

  

computes an equivalent ODE with invariants with minimal degrees with respect to power transformations

  

rational_equivalent

  

computes an equivalent ODE with invariants with minimal degrees with respect to rational transformations

 

Calling Sequence

Parameters

Description

Notes

Examples

Calling Sequence

power_equivalent(ODE, y(x), u(t), keep)

rational_equivalent(ODE, y(x), u(t), keep)

Parameters

ODE

-

linear ODE of any differential order or a first order nonlinear ODE of Abel or Riccati type

y(x)

-

dependent variable of the ODE; required only if the given ODE contains more than one function that is differentiated

u(t)

-

(optional); specify new variables t,ut used in the returned rational ODE

keep

-

(optional); specify that the variables used in the returned rational ODE be those of the given ODE.

Description

• 

The power_equivalent and rational_equivalent commands return an ODE (equivalent to the given ODE), with rational coefficients, and the transformation that maps the returned ODE back to the given ODE. The returned ODE has some additional relevant features.

1. 

It is in normal form.

2. 

All its invariants are rational.

3. 

The degree of each invariant with respect to the independent variable is the lowest one achievable using power (power_equivalent) or rational (rational_equivalent) transformations.

• 

The use of a NormalForm where in addition item 3 holds makes it possible to solve equivalence problems under compositions of Mobius and power transformations between a given ODE and ODEs admitting, for instance, hypergeometric solutions (see dsolve/hyper3).

• 

The transformation used to compute the equivalent ODE composes arbitrary powers (for power_equivalent) or rational functions (for rational_equivalent) of the independent variable with the most general linear transformation of the dependent variable, so they are of the form x=ta,yx=Ptut+Qt. In the case of linear homogeneous ODEs, Q=0. In terms of linear ODEs, the rational_equivalent command only handles those with order > 2. The transformations preserve the polynomial degree, the linear or nonlinear type and the homogeneous character in the case of linear equations. For example, second order linear equations are mapped into equations of the same type, the same way as Abel or Riccati type nonlinear equations are mapped into equations of the same type.

• 

By comparing the transformations used by power_equivalent and rational_equivalent with the general transformation x=Ft,yx=Ptut+Qt which defines the equivalence class associated to any polynomial ODE (linear or not), you can see that the restrictions imposed by power_equivalent and rational_equivalent respectively consist of taking Ft=ta and F(t)=rational function of t. Due to these restrictions, for some given ODE, the equivalence with a rational coefficients ODE may not exist. However, if in the given ODE, when written in normal form (see convert/NormalForm), all the nonrational objects are either fractional or abstract powers of the independent variable, then the equivalence problem has a solution, which the power_equivalent command should find. Caveat: Despite the theory behind the algorithm, in the case of abstract powers, the success relies on the ability of the simplification routines to rewrite these powers in a normal form. (This may be a difficult problem; see evala/Normal.)

• 

When the equivalence does not exist power_equivalent and rational_equivalent return NULL. Otherwise, the output sequence consists of a rational ODE and the transformation mapping it into the given ODE. New variables of global type are introduced in the result.

  

Optionally, you can specify that new dependent ut and independent t variables be used in the output by including the option ut in the calling sequence.

  

By using the keep option, you specify that the returned rational ODE should be expressed using the original variables x,yx. In that case, the returned transformation maps the returned rational ODE into the given ODE expressed using the new variables t,ut.

  

Note: The keep option supersedes the u(t) parameter. If superseded by the keep parameter, t,ut represents the original variables in the transformation back to the given ODE. (See the examples.)

Notes

• 

Parts of the code for the command rational_equivalent were written by Austin Roche.

Examples

withDEtools:

Linear ODEs

As the simplest example, consider a first order linear homogeneous ODE.

diffyx,x+fxyx=0

ⅆⅆxyx+fxyx=0

(1)

power_equivalent

ⅆⅆ_a_b_a=0,_a=x,_b_a=yxⅇfxⅆx

(2)

In this output we see the "rational normal form with minimal degrees" followed by the transformation mapping it into the given ODE. To perform this mapping and reobtain the given ODE, use dchange.

factorPDEtoolsdchange2,1,x,yx

ⅇfxⅆxⅆⅆxyx+fxyx=0

(3)

A second order linear ODE with nonrational coefficients:

non_rational_odediffyx,x,x=14231x56+2x23xyx+121+x16xdiffyx,x

non_rational_odeⅆ2ⅆx2yx=23x56+2x23yx4x+1+x16ⅆⅆxyx2x

(4)

rational_ode,trpower_equivalentnon_rational_ode,ut

rational_ode,trⅆ2ⅆt2ut=814+9t+2t2ut,t=x16,ut=yxⅇ1+x164xⅆxx512

(5)

Solve the equivalent rational ODE, and then change variables using the returned transformation to obtain the solution to the given ODE.

sol_rationaldsolverational_ode

sol_rationalut=c__1ⅇ9t2t+c__2ⅇ9t281t218t+2t

(6)

sol_non_rationalevalsol_rational,tr

sol_non_rationalyxⅇ1+x164xⅆxx512=c__1ⅇ9x162x16+c__2ⅇ9x16281x1318x16+2x16

(7)

Isolating yx, obtain the solution in explicit form.

simplifyisolate,yx

yx=ⅇ9x162+1+x16xⅆx4x1481c__2x132x169+281ⅇ9x16+c__1

(8)

odetest,non_rational_ode

0

(9)

The method works with abstract powers as well. (The keep option specifies that the returned rational ODE be in yx.)

diffyx,x,x=14x1212nn+2xnxyx+121+x12n+12xdiffyx,x

ⅆ2ⅆx2yx=x12n2n+2xnyx4x+1+xn2+12ⅆⅆxyx2x

(10)

power_equivalent,ut,keep

ⅆ2ⅆx2yx=94n12+3n2n12xn22n4n12x2yx,x=tn2+12,yx=t14n4utⅇ1+tn2+124tⅆt

(11)

A higher order linear ODE example:

diffyx,`$`x,5=5xdiffyx,`$`x,41541x2diffyx,`$`x,3+132ayxx152

ⅆ5ⅆx5yx=5ⅆ4ⅆx4yxx15ⅆ3ⅆx3yx4x2+ayx32x152

(12)

power_equivalent,ut,keep

ⅆ5ⅆx5yx=19008625x5+a3125x6yx18504ⅆⅆxyx625x4+72ⅆ2ⅆx2yx5x324ⅆ3ⅆx3yx5x2,x=t52,yx=t3utⅇ1tⅆt

(13)

For the following example, already having rational coefficients, note the difference between its Normal form (see convert/NormalForm) and the Normal form with minimal degrees returned by power_equivalent.

odediffyx,`$`x,5=xyx

odeⅆ5ⅆx5yx=xyx

(14)

convertode,NormalForm,keep

ⅆ5ⅆx5yx=xyx,_ax=c__1yx

(15)

power_equivalentode,keep

ⅆ5ⅆx5yx=17776x4+5005162x5yx4865ⅆⅆxyx162x4+175ⅆ2ⅆx2yx12x3175ⅆ3ⅆx3yx36x2,x=_a6,yx=_a10_b_a

(16)

Recalling the definition, a linear ODE of order n is in normal form when the coefficient of the (n-1)th derivative is zero. For a given ODE, there are many normal forms while the normal form with minimal degrees (one of these possible normal forms) is unique in that all the invariants (the coefficients of yx and its derivative) have the lowest degrees achievable through power transformations. Here, the term degree of a rational expression means the degree of its numerator minus the degree of its denominator.

First order ODEs of Abel type

A first order ODE of Abel type is one that, when written in First Kind form, is of degree 3 in the dependent variable (see odeadvisor,Abel). For example,

diffyx,x=32x12+1xx12+1x112yx3154x134yx2

ⅆⅆxyx=3x+1xx+1yx32x11215yx24x134

(17)

As in the linear ODE case, the Normal form returned by power_equivalent is one of the possible Rational Normal Forms, that is, where the coefficient of yx2 is zero and the independent term is equal to 1 (see convert/Abel_RNF). The Normal form by power_equivalent however always has rational coefficients and is of lowest degree (with respect to power transformations) in the independent variable.

power_equivalent

ⅆⅆ_a_b_a=1252+9_a2_b_a311664_a3_a+13+54_a2+99_a+38_b_a108_a3+132_a2+24_a,_a=x32,_b_a=186yxx3+12yxx32+5x154+5x94+6yx5x349x32+2

(18)

An example where the input Abel ODE is in second kind form (see convert/FirstKind):

diffyx,x=1+12x72+ax52yx

ⅆⅆxyx=1+12x72+ax52yx

(19)

power_equivalent

ⅆⅆ_a_b_a=15044_a9a2_b_a3250047_a212_a+a3+27172_a2+2931_aa+27a2_b_a21_a44_a+9a12_a+a,_a=x72,_b_a=63x12yxx6+432x7+yxx52a+72x72a+3a25yx44x729a

(20)

In the following example, the Abel ODE has rational coefficients, but its Rational Normal Form (see convert/Abel_RNF) is different from the normal form returned from power_equivalent in that the degrees in x of the invariants in the canonical form are significantly lower.

diffyx,x=6x5+Ax4yx3yx2

ⅆⅆxyx=6x5+Ayx3x4yx2

(21)

convert,Abel_RNF,keep

ⅆⅆxyx=116x214x5+9A2yx37296x5+A3+518x10+1479Ax581A2yx27x14x59+A6x5+A,_ax=x356x5+36Ayx54x69Ax276x5+A2

(22)

power_equivalent,keep

ⅆⅆxyx=1614x+9A2yx391125x26x+A3+27A2+1959Ax1526x2yx15x14x+9A6x+A+1,x=_a5,yx=45_a108_a10_b_a+6_a9+36A_a5_b_a+_a4A+3A2_b_a414_a5+9A

(23)

First order ODEs of Riccati type

As an example of Riccati type, consider

diffyx,x=yx2+x5x5

ⅆⅆxyx=yx2+x5x5

(24)

An equivalent Riccati equation in u(t), in normal form with minimal degrees, and the corresponding transformation are

power_equivalent,ut

ⅆⅆtut=ut27t436t3,t=x3,ut=yx3x776x3

(25)

Changing variables back we reobtain the starting equation

PDEtools:-dchange2,1,normal

21x4+2ⅆⅆxyxx14yx18x10=21x814yxx4+2x5+2yx218x14

(26)

normalisolate,diffyx,x

ⅆⅆxyx=yx2+x5x5

(27)

See Also

convert/Abel_RNF

convert/FirstKind

convert/NormalForm

convert/ODE

DEtools

DEtools[Lie]

dsolve

dsolve/hyper3

eval

factor

PDEtools[dchange]

simplify