Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

contrib_ode


bessel_simplify (expr) — Function

Simplifies expressions containing Bessel functions bessel_j, bessel_y, bessel_i, bessel_k, hankel_1, hankel_2, struve_h and struve_005fl. Recurrence relations https://personal.math.ubc.ca/~cbm/aands/page_361.htmA&S eqn 9.1.27 and https://dlmf.nist.gov/10.6#iDLMF 10.6#i

are used to replace functions of highest order n by functions of order n-1 and n-2.

This process is repeated until all the orders differ by less than 2.

(%i1) load("contrib_ode")$

(%i2) bessel_simplify(4*bessel_j(n,x^2)*(x^2-n^2/x^2)
  +x*((bessel_j(n-2,x^2)-bessel_j(n,x^2))*x
  -(bessel_j(n,x^2)-bessel_j(n+2,x^2))*x)
  -2*bessel_j(n+1,x^2)+2*bessel_j(n-1,x^2));
(%o2)                           0


(%i3) bessel_simplify( -2*bessel_j(1,z)*z^3 - 10*bessel_j(2,z)*z^2
 + 15*%pi*bessel_j(1,z)*struve_h(3,z)*z - 15*%pi*struve_h(1,z)
   *bessel_j(3,z)*z - 15*%pi*bessel_j(0,z)*struve_h(2,z)*z
 + 15*%pi*struve_h(0,z)*bessel_j(2,z)*z - 30*%pi*bessel_j(1,z)
   *struve_h(2,z) + 30*%pi*struve_h(1,z)*bessel_j(2,z));
(%o3)                           0

See also: bessel_j, bessel_y, bessel_i, bessel_k, hankel_1, hankel_2, struve_h, struve_l.


contrib_ode (eqn, y, x) — Function

Returns a list of solutions of the ODE eqn with independent variable x and dependent variable y.


dgauss_a (a, b, c, x) — Function

The derivative with respect to x of gauss_a``(a, b, c, x).

See also: gauss_a.


dgauss_b (a, b, c, x) — Function

The derivative with respect to x of gauss_b``(a, b, c, x).

See also: gauss_b.


dkummer_m (a, b, x) — Function

The derivative with respect to x of kummer_m``(a, b, x).

See also: kummer_m.


dkummer_u (a, b, x) — Function

The derivative with respect to x of kummer_u``(a, b, x).

See also: kummer_u.


expintegral_e_simplify (expr) — Function

Simplify expressions containing exponential integral expintegral_e using the recurrence https://personal.math.ubc.ca/~cbm/aands/page_229.htmA&S eqn 5.1.14.

expintegral_e(n+1,z) = (1/n) * (exp(-z)-z*expintegral_e(n,z)) n = 1,2,3 ….

See also: expintegral_e.


gauss_a (a, b, c, x) — Function

gauss_a(a,b,c,x) and gauss_b(a,b,c,x) are 2F1 hypergeometric functions. They represent any two independent solutions of the hypergeometric differential equation x*(1-x) diff(y,x,2) + [c-(a+b+1)x] diff(y,x) - a*b*y = 0 See https://personal.math.ubc.ca/~cbm/aands/page_562.htmA&S eqn 15.5.1 and https://dlmf.nist.gov/15.10DLMF 15.10.

The only use of these functions is in solutions of ODEs returned by odelin and contrib_ode. The definition and use of these functions may change in future releases of Maxima.

See also gauss_b, dgauss_a and gauss_005fb.

See also: odelin, contrib_ode, gauss_b, dgauss_a.


gauss_b (a, b, c, x) — Function

See gauss_005fa.

See also: gauss_a.


kummer_m (a, b, x) — Function

Kummer’s M function, see https://personal.math.ubc.ca/~cbm/aands/page_504.htmA&S eqn 13.1.2 and https://dlmf.nist.gov/13.2DLMF 13.2.

The only use of this function is in solutions of ODEs returned by odelin and contrib_ode. The definition and use of this function may change in future releases of Maxima.

See also kummer_u, dkummer_m, and dkummer_005fu.

See also: odelin, contrib_ode, kummer_u, dkummer_m, dkummer_u.


kummer_u (a, b, x) — Function

Kummer’s U function, see https://personal.math.ubc.ca/~cbm/aands/page_504.htmA&S eqn 13.1.3 and https://dlmf.nist.gov/13.2.6DLMF 13.2.6.

See kummer_005fm.

See also: kummer_m.


ode_check (eqn, soln) — Function

Returns the value of ODE eqn after substituting a possible solution soln. The value is equivalent to zero if soln is a solution of eqn.

(%i1) load("contrib_ode")$

(%i2) eqn:'diff(y,x,2)+(a*x+b)*y;
                         2
                        d y
(%o2)                   --- + (b + a x) y
                          2
                        dx

(%i3) ans:[y = bessel_y(1/3,2*(a*x+b)^(3/2)/(3*a))*%k2*sqrt(a*x+b)
         +bessel_j(1/3,2*(a*x+b)^(3/2)/(3*a))*%k1*sqrt(a*x+b)];
                                  3/2
                    1  2 (b + a x)
(%o3) [y = bessel_y(-, --------------) %k2 sqrt(a x + b)
                    3       3 a
                                          3/2
                            1  2 (b + a x)
                 + bessel_j(-, --------------) %k1 sqrt(a x + b)]
                            3       3 a

(%i4) ode_check(eqn,ans[1]);
(%o4)                           0

odelin (eqn, y, x) — Function

odelin solves linear homogeneous ODEs of first and second order with independent variable x and dependent variable y.
It returns a fundamental solution set of the ODE.

For second order ODEs, odelin uses a method, due to Bronstein and Lafaille, that searches for solutions in terms of given special functions.

(%i1) load("contrib_ode")$

(%i2) odelin(x*(x+1)*'diff(y,x,2)+(x+5)*'diff(y,x,1)+(-4)*y,y,x);
       gauss_a(- 6, - 2, - 3, - x)  gauss_b(- 6, - 2, - 3, - x)
(%o2) {---------------------------, ---------------------------}
                    4                            4
                   x                            x