# 9.44 LinearOrdinaryDifferentialOperator¶

LinearOrdinaryDifferentialOperator(A, diff) is the domain of linear ordinary differential operators with coefficients in a ring A with a given derivation.

## 9.44.1 Differential Operators with Series Coefficients¶

Problem: Find the first few coefficients of exp(x)/x^i of Dop phi where
Dop := D^3 + G/x^2 * D + H/x^3 - 1
phi := sum(s[i]*exp(x)/x^i, i = 0..)

Solution:


Define the differential.

Dx: LODO(EXPR INT, f +-> D(f, x))


Void

Dx := D()


 D

Type: LinearOrdinaryDifferentialOperator(Expression Integer,theMap NIL)

Now define the differential operator Dop.

Dop:= Dx^3 + G/x^2*Dx + H/x^3 - 1


 D3+Gx2D+-x3+Hx3

Type: LinearOrdinaryDifferentialOperator(Expression Integer,theMap NIL)

n == 3


Void

phi == reduce(+,[subscript(s,[i])*exp(x)/x^i for i in 0..n])


Void

phi1 == Dop(phi) / exp x


Void

phi2 == phi1 *x^(n+3)


Void

phi3 == retract(phi2)@(POLY INT)


Void

pans == phi3 ::UP(x,POLY INT)


Void

pans1 == [coefficient(pans, (n+3-i) :: NNI) for i in 2..n+1]


Void

leq == solve(pans1,[subscript(s,[i]) for i in 1..n])


Void

Evaluate this for several values of n.

leq

Compiling body of rule n to compute value of type PositiveInteger
Compiling body of rule phi to compute value of type Expression
Integer
Compiling body of rule phi1 to compute value of type Expression
Integer
Compiling body of rule phi2 to compute value of type Expression
Integer
Compiling body of rule phi3 to compute value of type Polynomial
Integer
Compiling body of rule pans to compute value of type
UnivariatePolynomial(x,Polynomial Integer)
Compiling body of rule pans1 to compute value of type List
Polynomial Integer
Compiling body of rule leq to compute value of type List List
Equation Fraction Polynomial Integer
Compiling function G83347 with type Integer -> Boolean

n==4


 [[s1=s0G3,s2=3s0H+s0G2+6s0G18,s3=(9s0G+54s0)H+s0G3+18s0G2+72s0G162]]

Type: List List Equation Fraction Polynomial Integer

leq


 [[s1=s0G3,s2=3s0H+s0G2+6s0G18,s3=(9s0G+54s0)H+s0G3+18s0G2+72s0G162]]

Type: List List Equation Fraction Polynomial Integer

n==7

Compiled code for n has been cleared.
Compiled code for leq has been cleared.
Compiled code for pans1 has been cleared.
Compiled code for phi2 has been cleared.
Compiled code for phi has been cleared.
Compiled code for phi3 has been cleared.
Compiled code for phi1 has been cleared.
Compiled code for pans has been cleared.
1 old definition(s) deleted for function or rule n


Void

leq

Compiling body of rule n to compute value of type PositiveInteger
+++ |*0;n;1;G82322| redefined
Compiling body of rule phi to compute value of type Expression
Integer
+++ |*0;phi;1;G82322| redefined
Compiling body of rule phi1 to compute value of type Expression
Integer
+++ |*0;phi1;1;G82322| redefined
Compiling body of rule phi2 to compute value of type Expression
Integer
+++ |*0;phi2;1;G82322| redefined
Compiling body of rule phi3 to compute value of type Polynomial
Integer
+++ |*0;phi3;1;G82322| redefined
Compiling body of rule pans to compute value of type
UnivariatePolynomial(x,Polynomial Integer)
+++ |*0;pans;1;G82322| redefined
Compiling body of rule pans1 to compute value of type List
Polynomial Integer
+++ |*0;pans1;1;G82322| redefined
Compiling body of rule leq to compute value of type List List
Equation Fraction Polynomial Integer
+++ |*0;leq;1;G82322| redefined



s7=((2835s0G+91854s0)H3+(945s0G3+81648s0G2+2082996s0G+14171760s0)H2+(63s0G5+7560s0G4+317520s0G3+5554008s0G2+34058880s0G)H+s0G7+126s0G6+4788s0G5+25272s0G4-1744416s0G3-26827200s0G2-97977600s0G)11022480]]

Type: List List Equation Fraction Polynomial Integer