Updates to Differential Equation (DE) Solvers in Maple 11
Numeric Solutions and related Plotting
The differential equation (DE) theme for Maple 11 is the exploration of the geometrical structure underlying a DE. Thus for 2nd order nonlinear Ordinary Differential Equations (ODEs), new algorithms were developed to solve entire classes in terms of elliptic functions.
For 1st order ODEs, the nonlinear Abel AIR class, as well as those admitting conformal symmetries, are now all entirely solvable in terms of hypergeometric and elliptic functions.
For Partial Differential Equations (PDEs) the geometrical structure is also reflected in their symmetries, which is the subject of this release, together with the related group invariant solutions, representing the most important advancement of the last 5 years in the Maple libraries for the exact solution of PDEs.
Ordinary Differential Equations (ODEs)
New solutions in terms of elliptic functions for 2nd order nonlinear equations
New solving algorithms for various classes of nonlinear 2nd order ODEs admitting solutions expressible in terms of the WeierstrassP or any of the 12 JacobiPQ elliptic functions. These classes of equations admit only one point symmetry and the related reduction of order leads to 1st order nonlinear Abel ODEs, a problem for which Maple 11 also presents new algorithms.
y⁡x⁢will now be displayed as⁢y
derivatives with respect to⁢x⁢of functions of one variable will now be displayed with '
diff(y(x), x, x) = 4/x*diff(y(x), x) + 6/x^2*y(x)^2 - 6/x^2*y(x) - 1/2*x^2*a;
diff(y(x), x, x) = 2/x*a/(x+a)*diff(y(x), x) + 2*k^2/x^2/(x+a)^4*y(x)^3 + (-2*x^3*a+(-k^2-1-6*a^2)*x^2 - 6*a^3*x - 2*a^4)/x^2/(x+a)^4*y(x);
The algorithm underlying the output above can compute solutions free of integrals whenever they are linear in WeierstrassP or any of the 12 JacobiPQ functions.
New option singsol = <none, essential, all> and new elliptic function solutions for high degree 1st order nonlinear ODE
High-degree equations are nonlinear in the highest derivative. In addition to their general solution, these equations admit singular solutions automatically computed by dsolve.
The novelty in Maple 11 is twofold. You can now specify whether to compute all, none, or only the essential singular solutions by passing an extra argument singsol. Also, instead of the standard general solution composing fractional powers with RootOf of elliptic functions or uncomputed integrals, dsolve now computes these general solutions with no RootOfs and no uncomputed integrals but directly as explicit solutions linear in JacobiPQ, WeierstrassP, and WeierstrassPPrime elliptic functions when that is possible.
Two examples quadratic in y'. To see the general solution, pass only singsol=none (it also saves the time dsolve would spend splitting the problem into cases and computing the singular solutions).
(-2/x^3*y(x)+1/x^2*diff(y(x),x))^2-1-b^2/x^8*y(x)^4-(-b^2-1)/x^4*y(x)^2 = 0;
dsolve((6), singsol = none);
The singular solutions for these high-degree ODEs are frequently the roots of some related high-degree polynomial. To see this polynomial representing an implicit singular solution instead of their roots, use the optional argument implicit.
(-2/x^3*y(x)+1/x^2*diff(y(x),x))^2+1/x^2*y(x)*a-4/x^6*y(x)^3+b = 0;
dsolve((8), implicit); # implicit avoids computing the roots of the cube
An example cubic in y' where the solution involves WeierstrassPPrime
-(x+a)^6*(y(x) + x*diff(y(x),x))^3 + 1/2*a^3/b^3 - 27/2*x^4*y(x)^4 - 27*b/c*x^2*y(x)^2 - 27/2*b^2/c^2 - 3/2*a/b*(x+a)^4*(y(x)+x*diff(y(x),x))^2 = 0;
map(odetest, (11), (10)); # verify these results for correctness
New solutions in terms of hypergeometric functions for 1st order Abel equations of the AIR class
The new solving algorithms for first order Abel ODEs of the 3-parameter AIR class can solve the entire class of equations having rational coefficients by resolving an equivalence to the seed representative (see references) under changes of variables of the form x -> F(x), y(x) -> (P(x) y(x) + Q(x))/(R(x) y(x) + S(x)), for rational mappings F, P, Q, R, S. In addition, for restricted subclasses, the algorithms implemented can compute the solution also when these mappings, and the coefficients in the corresponding ODE, are non-rational. The Abel AIR class is presented as entirely solvable for the first time in the literature now with Maple 11.
Two examples involving non-rational coefficients
diff(y(x),x) = y(x)/x/(ln(x)*y(x)+(-ln(x)+b)*(-ln(x)+c));
An example whose implicit solution can be obtained in terms of HeunC
diff(y(x),x) = y(x)*(y(x)-1)*exp(x)/(y(x)*a+exp(2*x)-exp(x)*c);
sol := dsolve((15));
To see this solution in terms of hypergeometric functions enter convert(sol, hypergeom);. For more details, see convert/to_special_function. An example of this class where the solution is expressed directly in terms of hypergeometric functions
diff(y(x),x) = ((3+3*x^4+3*x^2-6*x^3+6*x)*y(x)^2 + (3*x^5+30*x^4-26*x^6-3*x^3-15*x^7+2*x^8)*y(x) - x^7*(29*x^3-31-27*x+x^5+21*x^2+5*x^4))/((x^4+x^2+1)*y(x) + x^3*(x^3+x-3*x^2+x^5-1-x^4))/x;
New solutions for 1st order equations admitting conformal symmetries
In his original symmetry work, Sophus Lie was the first to observe that nonlinear first ODEs with conformal symmetries can have their solutions computed by quadratures. The infinitesimal generators [xi(x, y), eta(x, y)] of a conformal symmetry satisfy the conditions xi[x] = eta[y] and xi[y] = -eta[x], where [x] means differentiation with respect to x. In the framework of the Maple libraries, the key observation is that ODEs possessing this type of symmetry can systematically be transformed into equations admitting infinitesimals separable by product - a problem for which Maple implemented solving algorithms in Maple 6 (see references).
Kamke's example number 1.83
diff(y(x),x) = tan(x*y(x));
Enhanced computation of solutions in terms of hypergeometric functions for 3rd and higher order linear equations
There are improvements in the solving algorithms for third and higher order linear ODEs to compute solutions expressible in terms of hypergeometric functions.
diff(y(x),x,x,x,x) = -15/2*x/(x^4+3)*diff(y(x),x)-45/2*x^2/(x^4+3)*diff(y(x),x,x)-10*x^3/(x^4+3)*diff(y(x),x,x,x)+15/16*y(x)/(x^4+3);