return the formal series solution of a linear functional system of equations
SeriesSolution(sys, vars, method)
SeriesSolution(A, b, x, case, method)
SeriesSolution(A, x, case, method)
list of equations; linear functional system
list of function variables such as [y1(x), y2(x), ...]; variables to solve for
Matrix with rational elements
Vector with rational elements
name indicating the case of the system; one of 'differential', 'difference', or 'qdifference'
(optional) name indicating the version of EG-eliminations to use; one of 'quasimodular' or 'ordinary', the latter being the default
The SeriesSolution function returns the initial terms of the formal series solutions from the specified linear functional system of equations with polynomial coefficients. If such a solution does not exist, then the empty list is returned.
The system parameter is entered either in list form (a list of equations sys and a list of function variables vars to solve for), or in matrix form (matrix A, vector b, and the independent variable x, where the vector b is optional).
The matrix form specifies the system Ly⁡x=Ay⁡x+b, where L is the operator (either differential, difference, or q-difference), y⁡x is the vector of the functions to solve for, A is a rational matrix, and b is a rational vector (right-hand side).
For the matrix from of the calling sequence, the case of the system must be specified as one of 'differential', 'difference', or 'qdifference'. If b is not specified, the system is assumed to be homogeneous.
The function computes the matrix recurrence system corresponding to the given system. This matrix recurrence system is represented by its explicit matrix (the matrix n by n*m, where n is the order of the system, with the leading and trailing matrix being of size n by n). Then, the function triangularizes the leading matrix using LinearFunctionalSystems[MatrixTriangularization] in order to bound the number of the initial terms of the solution in such a way that the recurrences for the rest terms' coefficients have an invertible leading matrix and then builds these initial terms.
The solution is the list of series expansions in x, corresponding to vars. The order term (for example O⁡x6) is the last term in the series.
The solution involves arbitrary constants of the form _c1, _c2, etc.
The solution has an attribute which is a table with the following indices:
the list of initial terms
the formal degree of the initial terms
the corresponding recurrence
the coefficients of the initial terms in a proper basis (depending on the case)
the leading shift of the recurrence
the trailing shift of the recurrence
the independent variable of the given system
'differential', 'difference' or 'qdifference'
true if the given system is homogeneous, false otherwise
the index of the last arbitrary constant
the q parameter used
Note: This data is used by LinearFunctionalSystems[ExtendSeries] in order to extend the number of computed initial terms.
The error conditions associated with SeriesSolution are the same as those which are generated by LinearFunctionalSystems[Properties].
This function is part of the LinearFunctionalSystems package, and so it can be used in the form SeriesSolution(..) only after executing the command with(LinearFunctionalSystems). However, it can always be accessed through the long form of the command by using the form LinearFunctionalSystems[SeriesSolution](..).
sys := [diff(y1(x), x) - y2(x),
diff(y2(x), x) - y3(x) - y4(x),
diff(y3(x), x) - y5(x),
diff(y4(x), x) - 2*y1(x) - 2*x*y2(x) - y5(x),
diff(y5(x), x) - x^2*y1(x) - 2*x*y3(x) - y6(x),
diff(y6(x), x) - x^2*y2(x) + 2*y3(x)]:
vars := [y1(x), y2(x), y3(x), y4(x), y5(x), y6(x)]:
sys := [y2(x)*x^2 + 3*y2(x)*x + 2*y2(x) - 2*y1(x)*x^2 - 4*y1(x)*x +
y1(x + 1)*x^2 + y1(x + 1)*x,
vars := [y1(x), y2(x)]:
Abramov, S. A. "EG-Eliminations." Journal of Difference Equations and Applications, (1999): 393-433.
Download Help Document
What kind of issue would you like to report? (Optional)