PolynomialSolution - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


QDifferenceEquations

  

PolynomialSolution

  

return a polynomial solution of a q-difference equation

 

Calling Sequence

Parameters

Description

Output options

Examples

References

Calling Sequence

PolynomialSolution(eq, var, inits, output=type)

Parameters

eq

-

q-difference equation or a list of such equations (for the system case)

var

-

function variable to solve for, such as yx, 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, basis[C], onesol, gensol, or anysol and "C" is a name. The words output, basis, onesol, gensol and anysol must be used literally.

Description

• 

The PolynomialSolution(eq,var) calling sequence returns the polynomial solutions of the given linear q-difference equation with polynomial coefficients. If such a solution does not exist, then NULL is returned.

• 

The PolynomialSolution 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[PolynomialSolution] in order to find solutions.

• 

For the scalar case the command computes an indicial equation corresponding to the given equation. The indicial equation is used to bound the degree of the polynomial solution. Then coefficients of the polynomial solution are found either by the undetermined coefficients method for small equations or successively using the indicial equation and the given equation.

  

The parameter q in a scalar q-difference equation can be either a name or a rational number.

Output options

• 

Optionally, you can specify output=basis, output=basis[var], output=onesol, output=gensol, or output=anysol.

  

output=basis

  

Requests that independent solutions be provided in the form of a list of independent solutions (the basis). If the input recurrence is homogeneous, then the independent solutions are output in a list as [sol1,sol2,...,soln]. If the input recurrence is inhomogeneous, then the output is a list containing the list of independent solutions in the first element, and a particular solution in the second, as [[sol1,sol2,...,soln],part].

  

output=basis[C]

  

This is related to the output=basis form, but rather than providing the output in list form, it 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 C is as provided in the output=basis[C] option.

  

output=onesol

  

This specifies that only a single solution be provided as output.

  

output=gensol

  

This specifies that the fully general solution should be obtained for the problem, and will fail if unable to obtain as many independent solutions as the order of the recurrence (regardless of initial conditions). The initial conditions are applied once the full solution is obtained.

  

output=anysol

  

This specifies that if a solution can be obtained that satisfies the initial conditions, then it should be returned regardless of the number of independent solutions obtained. For example, if no independent solutions can be obtained, but no initial conditions have been specified, then the particular solution is output.

Examples

withQDifferenceEquations:

eq11q10qq10xyq2x1q20q2q20xyqx+q101q10q2q11xyx=q21q20q12+q10+q2qx

eq11q10q10+qxyq2x1q20q20+q2xyqx+q101q10q11+q2xyx=q21q20q12+q10+q2qx

(1)

sol1PolynomialSolutioneq1,yx,,output=basis_K

sol1_K1x10+_K2x_K2+1

(2)

IsSolutionsol1,eq1,yx

true

(3)

PolynomialSolutioneq1,yx,yq10=q10,output=basis

x10,x1,1

(4)

q12

q12

(5)

sol1aPolynomialSolutioneq1,yx,yq10=q10,output=gensol

sol1a1266412660188944021221804081152x10523265+648403282016739338865563689549824x10y1512523265+512xy1512523265+523264x523265512y1512523265+1523265

(6)

IsSolutionsol1a,eq1,yx

true

(7)

simplifyevalsol1a,x=q10q10

0

(8)

qq:

eq2q3qx+1yq2x2q2x+1yqx+yxx+q=q62q3+1x2+xq52q3+q

eq2q3qx+1yq2x2q2x+1yqx+yxx+q=q62q3+1x2+xq52q3+q

(9)

sol2PolynomialSolutioneq2,yx,,output=basis_C

sol2x

(10)

IsSolutionsol2,eq2,yx

true

(11)

sys200y2xqx200y2xq2x200xy1x+200xy1qx+200y1xq2x200y1qxqx,y2qxy1x

sys200y2xqx200y2xq2x200xy1x+200xy1qx+200y1xq2x200y1qxqx,y2qxy1x

(12)

varsy1x,y2x:

sol3PolynomialSolutionsys,vars,,output=basis_K

sol3qx_K2+_K1,x_K2+_K1

(13)

IsSolutionsol3,sys,vars

true

(14)

References

  

Abramov, S.A. "Problems in Computer Algebra Related to Constructing Solutions to Linear Difference Equations with Polynomial Coefficients." Vest. Moskov. University, Ser.15. Vychisl. Mat. Kibern. No. 3. (1989): 56-60.

  

Abramov, S.A.; Bronstein, M.; and Petkovsek, M. "On polynomial solutions of linear operator equations." Proceedings of ISSAC'95, pp. 290-296. ACM Press: New York, 1995.

See Also

LinearFunctionalSystems[PolynomialSolution]

QDifferenceEquations

QDifferenceEquations[RationalSolution]