QDifferenceEquations
SeriesSolution
return a series solution of a q-difference equation
Calling Sequence
Parameters
Description
Output options
Examples
SeriesSolution(eq, var, inits, output=type, dataname)
eq
-
q-difference equation or a list of such equations (for the system case)
var
function variable to solve for, such as y⁡x, or a list of such function variables (for the system case)
inits
set of initial conditions
output=type
(optional) where type is one of basis[C] or onesol and "C" is a name. The words output, basis and onesol must be used literally.
dataname
(optional) name; if given the name is set to special data needed to extend the series found to higher degree with QDifferenceEquations[ExtendSeries]
The SeriesSolution command returns the series solution of the given linear q-difference equation with polynomial coefficients. If such a solution does not exist, then NULL is returned.
Additionally, if a name given in the dataname parameter, then the command sets the name to special data needed to extend the series found to higher degree with QDifferenceEquations[ExtendSeries] command.
The SeriesSolution command solves the problem with a single q-difference equation and also with a system of such equations. In the latter case the command invokes LinearFunctionalSystems[SeriesSolution] in order to find solutions.
The solution is a series expansion in x, corresponding to var. The order term (for example O⁡x6) is the last term in the series. For the system case the solution is a list of such series expansions.
For a single q-difference equation the function computes some initial terms of the series. The number of the terms is determined in such a way that the process of computing the successive terms does not lead to new arbitrary constants. The successive terms can be computed with the QDifferenceEquations[ExtendSeries].
The parameter q in a scalar q-difference equation can be either a name or a rational number.
Optionally, you can specify output=basis, output=basis[var], output=onesol, output=gensol, or output=anysol.
output=basis[C]
The output is provided as a single algebraic expression that is a C-linear combination of the independent solutions plus any particular solution for the inhomogeneous case. The independent solutions will have indexed coefficients of the form C0,C1,...,Cn, where var is as provided in the output=basis[C] option.
output=onesol
This specifies that only a single solution be provided as output.
The inits argument is in fact ignored and allowed in the calling sequence for compatibility with the other solvers in the package.
with⁡QDifferenceEquations:
eq≔y⁡q⁢x−1+x2⁢y⁡x
eq≔y⁡q⁢x−x2+1⁢y⁡x
var≔y⁡x
sol≔QDifferenceEquationsSeriesSolution⁡eq,var,∅,output=basis_K
sol≔_K1+O⁡x
sol≔QDifferenceEquationsSeriesSolution⁡eq,var,∅,output=onesol
sol≔1+O⁡x
eq≔1−q10−q−q10⁢x⁢y⁡q2⁢x−1−q20−q2−q20⁢x⁢y⁡q⁢x+q10⁢1−q10−q2−q11⁢x⁢y⁡x=q21−q20−q12+q10+q2−q⁢x+x20
eq≔1−q10−−q10+q⁢x⁢y⁡q2⁢x−1−q20−−q20+q2⁢x⁢y⁡q⁢x+q10⁢1−q10−−q11+q2⁢x⁢y⁡x=q21−q20−q12+q10+q2−q⁢x+x20
sol≔QDifferenceEquationsSeriesSolution⁡eq,var,∅,output=basis_C
sol≔_C1+−_C1+1⁢x+_C2⁢x10+O⁡x11
sol≔1+x10+O⁡x11
See Also
LinearFunctionalSystems[ExtendSeries]
LinearFunctionalSystems[SeriesSolution]
QDifferenceEquations[ExtendSeries]
Download Help Document