Linear differential systems
function:formal_sols
FUNCTION: formal_sols - compute the formal solutions of a system of linear
differential equations (preliminary version)
CALLING SEQUENCE:
formal_sols(A, x, t)
formal_sols(A, x = x_0, t)
formal_sols(A, x = x_0, t, k)
PARAMETERS:
A - a square matrix containing rational functions with coefficients in
the rationals or an algebraic extension of the rationals
x - a name
x_0 - a rational or an algebraic number or infinity
t - a name
k - (optional) an integer
SYNOPSIS:
This function computes the subset of formal solutions of ramification 1 of a
linear differential system t the point x_0. They are of the form
exp(int(w,x))*z where w is a polynomial in 1/t with coefficients in an
algebraic extension of the coefficient field and z = z_0+z_1 log(t) + ..
+ z_s log^s(t) with the z_i formal power series with coefficients in an
algebraic extension of the coefficient field. It holds t = x-x_0 for x_0 <>
infinity and t = 1/x otherwise.
The name t is used for the parametrization of the output.
The regular formal solutions are represented as general solution involving
constants of the form _C[1], _C[2],...
The optional integer k gives the order to which the series solutions should
be computed. If k is not passed as argument, the global variable Order is
used. See also the comments in the help for the reg_sols function.
The algorithm used is based on the the super-reduction algorithm and a
generalization of the method computing the exponential parts of ramification
1 (see [2]) and the algorithm in [1] for computing the series parts.
REFERENCES:
[1] M. Barkatou, E.Pfluegel "An Algorithm Computing the Regular Formal
Solution of a System of Linear Differential Equations", Technical
Report, IMAG RR-988, available at http://www-lmc.imag.fr/~pfluegel
[2] E. Pfluegel. "An Algorithm for Computing Exponential Solutions of First
Order Linear Differential Systems". In: Proceedings of ISSAC '97,
W.Kuechlin Editor, ACM Press, 1997.
EXAMPLES:
A:=
array(1 .. 4, 1 .. 4,[(1, 1)=(1-3*x)/x^3,(3, 3)=-6/x^3,(2, 2)=6/x^2,(1, 4)=1/
x^3,(1, 2)=0,(2, 4)=0,(4, 1)=0,(1, 3)=0,(2, 3)=-1/x^2,(4, 3)=-3/x^2,(3, 4)=0,(4
, 2)=0,(3, 1)=0,(4, 4)=1,(3, 2)=8/x^2,(2, 1)=9/x^2]):
> formal_sols(A,x,0,t,2);
/
| 6
[[x = t, exp( | - ---- + 4/3 1/t dt)
| 3
/ t
[7/3 t _C[1], - 49/9 t _C[1], - 98/3 _C[1], - 49/3 t _C[1]]],
/
| 3 1
[x = t, exp( | - ---- + ---- dt) [_C[2], 9 t _C[2], 0, 0]], [x = t,
| 2 3
/ t t
/
| 6
exp( | ---- + 14/3 1/t dt) [-t _C[3], - 3/2 _C[3], -2 t _C[3], t _C[3]]],
| 2
/ t
/
|
[x = t, exp( | - 6/t dt)
|
/
[-_C[4] - 4 t _C[4], 3/2 _C[4] + 29/6 t _C[4], 2 t _C[4], _C[4] + t _C[4]]]
]
A:=
array(1 .. 4, 1 .. 4,[(2, 2)=10/x^2,(4, 3)=-6,(4, 1)=9/x,(4, 4)=1/x^2,(3, 4)=-3
,(1, 3)=-7/x,(1, 1)=-1/x,(3, 2)=0,(4, 2)=3,(1, 2)=-7/x^2,(3, 3)=6,(2, 3)=-4/x^2
,(2, 1)=-3,(3, 1)=-2/x,(2, 4)=-4/x^2,(1, 4)=-6/x]);
[ 7 ]
[- 1/x - ---- - 7/x - 6/x ]
[ 2 ]
[ x ]
[ ]
[ 10 4 4 ]
[ -3 ---- - ---- - ----]
A := [ 2 2 2 ]
[ x x x ]
[ ]
[- 2/x 0 6 -3 ]
[ ]
[ 1 ]
[ 9/x 3 -6 ---- ]
[ 2 ]
[ x ]
> formal_sols(A,x,t,2);
/
| 10 56
[[x = t, exp( | ---- + -- 1/t dt)
| 2 25
/ t
[ 818 ]
[-5 _C[1] - 23/6 t _C[1], 50/7 _C[1] + --- t _C[1], t _C[1], -5 t _C[1]]],
[ 105 ]
/
| 1 28 [
[x = t, exp( | ---- - ---- dt) [_C[2] + 4/3 t _C[2],
| 2 t [
/ t
1159 3869 ]
- 1/7 _C[2] + ---- t _C[2], -2 t _C[2], - 9/28 _C[2] + ---- t _C[2]]], [
294 392 ]
/
2 | 1 1213 1
x = 28/5 t , exp( | 5/28 ---- + ---- ---- dt)
| 3 560 2
/ t t
[_C[3] + 14 t _C[3], - 4/5 t _C[3], -2 t _C[3], 0]]]