DEtools
ratsols
find rational function solutions of a linear ODE
Calling Sequence
Parameters
Description
Examples
ratsols(lode, v)
ratsols(coeff_list, g, x)
lode
-
linear differential equation
v
dependent variable of the lode
coeff_list
list of coefficients of a linear ode
g
right-hand side of the equation
x
independent variable of the lode
The ratsols command returns a basis of the rational function solutions of a linear differential equation having rational function coefficients.
The first calling sequence has a linear differential equation in diff or D form as the first argument, and the variable in the differential equation as the second argument. A system of differential equations can be given as a list of the equations as the first argument and a list of the variables as the second argument.
A second calling sequence accepts the following.
- For the first argument, the list of coefficients of a linear ode
- For the second, the right-hand side of such an equation
- For the third argument, the independent variable of the lode
A system of differential equations can be given as a list of lists of list of coefficients of a linear odes as the first argument, a list of the right-hand sides of such equations as the second argument and the independent variable as the third argument. Each equation is represented as the sum of lodes in one variable. Each is given as a list of coefficients, so one equation is given as a list of lists of coefficients and a system as a list of lists of lists. This input sequence is convenient for programming with the ratsols routine.
The list of coefficients is given in order from low differential order to high differential order and does not include the nonhomogeneous term.
In the case of a homogeneous equation, a basis is returned (as a list in the scalar case and as a list of lists in the system case). In the nonhomogeneous case, the return value is a two-element list, with the first element a basis for the homogeneous case and the second element a particular rational solution (if it exists).
In the system case, the function invokes LinearFunctionalSystems[RationalSolution] to find solutions.
with⁡DEtools:
Homogeneous case
ode≔t2+t⁢diff⁡z⁡t,`$`⁡t,3−t2+3⁢t+1⁢diff⁡z⁡t,`$`⁡t,2+t+4+2t⁢diff⁡z⁡t,t−1+4t+2t2⁢z⁡t=0:
ratsols⁡ode,z⁡t
t
ode≔D2⁡z⁡t−3t⁢D⁡z⁡t+3t2⁢z⁡t:
t,t3
ode≔3t2,−3t,1:
ratsols⁡ode,0,t
Nonhomogeneous case
ode≔diff⁡z⁡t,`$`⁡t,2+2t⁢diff⁡z⁡t,t+1t4⁢z⁡t=2⁢t2+1t6:
,1t2
System case
sys≔x3⁢diff⁡y1⁡x,x+y2⁡x,diff⁡y2⁡x,x−x⁢y1⁡x=x:
vars≔y1⁡x,y2⁡x:
ratsols⁡sys,vars,∅
1x,x,−1,0
sysp≔0,x3,1,−x,0,1:
ratsols⁡sysp,0,x,x
See Also
dcoeffs
dsolve
LinearFunctionalSystems[RationalSolution]
Download Help Document