DEtools
FindODE
find a linear ODE for a holonomic function
Calling Sequence
Parameters
Description
Examples
Compatibility
FindODE(f, v, maxorder)
f
-
expression
v
either the dependent variable, of the form y⁡x, or a list of two names Dx,x
maxorder
(optional) posint; maximal order of the ODE. Default value: 6
The input f should be a holonomic function, in other words, a function that satisfies a linear ODE with rational function coefficients. The FindODE function tries to find such an ODE.
If FindODE fails to find a linear ODE, then FAIL is returned.
When using the FindODE⁡f,y⁡x calling sequence, the ODE will be returned in terms of the dependent variable y⁡x, where x is the independent variable.
When using the FindODE⁡f,Dx,x calling sequence, the result will be given in differential operator form, that is, as a polynomial in the differential operator Dx whose coefficients are polynomials in the independent variable x.
The second argument v can be omitted if the environment variable _Envdiffopdomain is assigned a list of two names, in which case the result will be given in differential operator notation.
The resulting ODE will be cleared of denominators, that is, its coefficients are polynomials in the independent variable x without common factors.
By default, FindODE incrementally searches for an ODE up to order 6. This maximal order can be overridden by specifying the optional third argument, maxorder.
with⁡DEtools:
FindODE⁡cos⁡sqrt⁡x,y⁡x
y⁡x+2⁢ⅆⅆxy⁡x+4⁢x⁢ⅆ2ⅆx2y⁡x
FindODE⁡exp⁡x+sqrt⁡x,y⁡x
2⁢x+1⁢y⁡x+−4⁢x2−1⁢ⅆⅆxy⁡x+4⁢x2−2⁢x⁢ⅆ2ⅆx2y⁡x
The hypergeometric 2F1 equation.
FindODE⁡hypergeom⁡a,b,c,x,y⁡x
a⁢b⁢y⁡x+x⁢a+x⁢b−c+x⁢ⅆⅆxy⁡x+x2−x⁢ⅆ2ⅆx2y⁡x
The tangent function is not holonomic, so the result is FAIL.
FindODE⁡tan⁡x,y⁡x
FAIL
Operator notation.
FindODE⁡cos⁡sqrt⁡x,Dx,x
4⁢x⁢Dx2+2⁢Dx+1
The following example is a generating function from the Online Encyclopedia of Integer Sequences (http://oeis.org/A151357).
ogf≔x−2⁢Int⁡Int⁡2⁢hypergeom⁡34,54,2,64⁢x3⁢1+x1−4⁢x221−4⁢x232,x,x
ogf≔∫∫2⁢hypergeom⁡34,54,2,64⁢x3⁢x+1−4⁢x2+12−4⁢x2+132ⅆxⅆxx2
L≔FindODE⁡ogf,Dx,x
L≔192⁢x10+640⁢x9+880⁢x8+656⁢x7+244⁢x6+16⁢x5−7⁢x4−3⁢x3⁢Dx4+3072⁢x9+9792⁢x8+13344⁢x7+10016⁢x6+3632⁢x5+244⁢x4−86⁢x3−36⁢x2⁢Dx3+13824⁢x8+42048⁢x7+56832⁢x6+42816⁢x5+15072⁢x4+1068⁢x3−264⁢x2−108⁢x⁢Dx2+18432⁢x7+53376⁢x6+71616⁢x5+53952⁢x4+18336⁢x3+1416⁢x2−180⁢x−72⁢Dx+4608⁢x6+12672⁢x5+16896⁢x4+12672⁢x3+4128⁢x2+360⁢x
DFactor⁡L,Dx,x
192⁢x10+640⁢x9+880⁢x8+656⁢x7+244⁢x6+16⁢x5−7⁢x4−3⁢x3⁢Dx2+2⁢1152⁢x7+3616⁢x6+4912⁢x5+3696⁢x4+1328⁢x3+90⁢x2−29⁢x−12⁢Dxx⁢192⁢x7+640⁢x6+880⁢x5+656⁢x4+244⁢x3+16⁢x2−7⁢x−3+2⁢2880⁢x7+8480⁢x6+11408⁢x5+8592⁢x4+2956⁢x3+222⁢x2−37⁢x−15x2⁢192⁢x7+640⁢x6+880⁢x5+656⁢x4+244⁢x3+16⁢x2−7⁢x−3,Dx+2x,Dx+2x
map⁡degree,,Dx
2,1,1
The first order factors of L come from the integrals. The second order factor comes from the hypergeometric 2F1 function.
Summing special functions preserves the order if they are contiguous (parameter differences are integers).
FindODE⁡BesselI⁡0,x+x⁢BesselI⁡2,x,y⁡x
−x4−2⁢x3−4⁢x2−3⁢x⁢y⁡x+−x3+x+4⁢ⅆⅆxy⁡x+x4+2⁢x3+x2+2⁢x⁢ⅆ2ⅆx2y⁡x
Products of two contiguous second-order special functions satisfy third order equations.
FindODE⁡BesselI⁡0,sqrt⁡x⁢BesselI⁡3,sqrt⁡x,Dx,x
24⁢x4+64⁢x3⁢Dx3+84⁢x3+288⁢x2⁢Dx2+−24⁢x3−130⁢x2+16⁢x⁢Dx−24⁢x2−179⁢x−216
FindODE⁡hypergeom⁡13,23,1,x2−hypergeom⁡13,−13,1,x⁢hypergeom⁡43,23,1,x,Dx,x
9⁢x5−27⁢x3+18⁢x2⁢Dx3+45⁢x4+54⁢x3−135⁢x2+36⁢x⁢Dx2+38⁢x3+110⁢x2−94⁢x⁢Dx+2⁢x2+18⁢x−2
Non-contiguous examples:
FindODE⁡KummerM⁡14,1,x+KummerM⁡−14,1,x,Dx,x
16⁢x2⁢Dx4+−32⁢x2+64⁢x⁢Dx3+16⁢x2−80⁢x+32⁢Dx2+16⁢x−16⁢Dx−1
FindODE⁡LegendreP⁡14,x⁢LegendreP⁡12,x,y⁡x
−495⁢y⁡x+1440⁢x⁢ⅆⅆxy⁡x+5600⁢x2−1504⁢ⅆ2ⅆx2y⁡x+2560⁢x3−2560⁢x⁢ⅆ3ⅆx3y⁡x+256⁢x4−512⁢x2+256⁢ⅆ4ⅆx4y⁡x
dsolve⁡
y⁡x=_C1⁢LegendreP⁡12,x⁢LegendreQ⁡14,x+_C2⁢LegendreP⁡14,x⁢LegendreP⁡12,x+_C3⁢LegendreQ⁡12,x⁢LegendreP⁡14,x+_C4⁢LegendreQ⁡12,x⁢LegendreQ⁡14,x
The DEtools[FindODE] command was introduced in Maple 2019.
For more information on Maple 2019 changes, see Updates in Maple 2019.
See Also
gfun[holexprtodiffeq]
LinearOperators
PDEtools[dpolyform]
Download Help Document
What kind of issue would you like to report? (Optional)