Maple Professionel
Maple Académique
Maple Edition Étudiant
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professionel
MapleSim Académique
Maple T.A. - Suite d'examens de classement
Maple T.A. MAA Placement Test Suite
Möbius - Didacticiels de mathématiques en ligne
Machine Design / Industrial Automation
Aéronautique
Ingénierie des véhicules
Robotics
Energie
System Simulation and Analysis
Model development for HIL
Modélisation du procédé pour la conception de systèmes de contrôle
Robotics/Motion Control/Mechatronics
Other Application Areas
Enseignement des mathématiques
Enseignement de l’ingénierie
Enseignement secondaire et supérieur (CPGE, BTS)
Tests et évaluations
Etudiants
Modélisation financière
Recherche opérationnelle
Calcul haute performance
Physique
Webinaires en direct
Webinaires enregistrés
Agenda des évènements
Forum MaplePrimes
Blog Maplesoft
Membres Maplesoft
Maple Ambassador Program
MapleCloud
Livres blancs techniques
Bulletin électronique
Livres Maple
Math Matters
Portail des applications
Galerie de modèles MapleSim
Cas d'Etudes Utilisateur
Exploring Engineering Fundamentals
Concepts d’enseignement avec Maple
Centre d’accueil utilisateur Maplesoft
Centre de ressources pour enseignants
Centre d’assistance aux étudiants
QDifferenceEquations[RationalSolution] - return a rational solution of a q-difference equation
Calling Sequence
RationalSolution(eq, var, inits, output=type, 'minimize')
Parameters
eq
-
q-difference equation or a list of such equations (for the system case)
var
function variable to solve for, such as , 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.
'minimize'
(optional) indicates the universal denominator minimization algorithm must be used
Description
The RationalSolution(eq, var) calling sequence returns the rational solutions of the given linear q-difference equation with polynomial coefficients. If such a solution does not exist, then NULL is returned.
The RationalSolution 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[RationalSolution] in order to find solutions.
For the scalar case, the command computes a universal denominator and reduces the problem given to the problem of searching for polynomial solution, which is solved by PolynomialSolution.
If the option 'minimize' is specified, the command applies the universal denominator minimization algorithm by D.E. Khmelnov to try to lower the degree of the universal denominator found by the algorithm by S.A. Abramov. The goal is not always achieved, but if the degree of the universal denominator is lowered, then the problem of searching for numerator of the rational solution is simplified. This could lead to an overall gain in efficiency for finding the solution.
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 . 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 .
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 -linear combination of the independent solutions plus any particular solution for the inhomogeneous case. The independent solutions will have indexed coefficients of the form , where 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
See Also
LinearFunctionalSystems[RationalSolution], QDifferenceEquations, QDifferenceEquations[PolynomialSolution], QDifferenceEquations[UniversalDenominator]
References
Abramov, S.A. "Rational Solutions to Linear Difference and q-Difference Equations with Polynomial Coefficients." Programmirovanie. No. 6. (1995): 3-11.
Khmelnov, D.E. "Improved Algorithms for Solving Difference and q-Difference Equations." Programming and Computer Software. Vol. 26 No. 2. (2000): 107-115. Translated from Programmirovanie. No. 2. 2000.
Download Help Document