Next: , Previous: , Up: Top   [Contents][Index]

16 Elliptic Functions


Next: , Up: Top   [Contents][Index]

16.1 Introduction to Elliptic Functions and Integrals

Maxima includes support for Jacobian elliptic functions and for complete and incomplete elliptic integrals. This includes symbolic manipulation of these functions and numerical evaluation as well. Definitions of these functions and many of their properties can by found in Abramowitz and Stegun, Chapter 16–17. As much as possible, we use the definitions and relationships given there.

In particular, all elliptic functions and integrals use the parameter m instead of the modulus k or the modular angle \alpha. This is one area where we differ from Abramowitz and Stegun who use the modular angle for the elliptic functions. The following relationships are true:

The elliptic functions and integrals are primarily intended to support symbolic computation. Therefore, most of derivatives of the functions and integrals are known. However, if floating-point values are given, a floating-point result is returned.

Support for most of the other properties of elliptic functions and integrals other than derivatives has not yet been written.

Some examples of elliptic functions:

(%i1) jacobi_sn (u, m);
(%o1)                    jacobi_sn(u, m)
(%i2) jacobi_sn (u, 1);
(%o2)                        tanh(u)
(%i3) jacobi_sn (u, 0);
(%o3)                        sin(u)
(%i4) diff (jacobi_sn (u, m), u);
(%o4)            jacobi_cn(u, m) jacobi_dn(u, m)
(%i5) diff (jacobi_sn (u, m), m);
(%o5) jacobi_cn(u, m) jacobi_dn(u, m)

      elliptic_e(asin(jacobi_sn(u, m)), m)
 (u - ------------------------------------)/(2 m)
                     1 - m

            2
   jacobi_cn (u, m) jacobi_sn(u, m)
 + --------------------------------
              2 (1 - m)

Some examples of elliptic integrals:

(%i1) elliptic_f (phi, m);
(%o1)                  elliptic_f(phi, m)
(%i2) elliptic_f (phi, 0);
(%o2)                          phi
(%i3) elliptic_f (phi, 1);
                               phi   %pi
(%o3)                  log(tan(--- + ---))
                                2     4
(%i4) elliptic_e (phi, 1);
(%o4)                       sin(phi)
(%i5) elliptic_e (phi, 0);
(%o5)                          phi
(%i6) elliptic_kc (1/2);
                                     1
(%o6)                    elliptic_kc(-)
                                     2
(%i7) makegamma (%);
                                 2 1
                            gamma (-)
                                   4
(%o7)                      -----------
                           4 sqrt(%pi)
(%i8) diff (elliptic_f (phi, m), phi);
                                1
(%o8)                 ---------------------
                                    2
                      sqrt(1 - m sin (phi))
(%i9) diff (elliptic_f (phi, m), m);
       elliptic_e(phi, m) - (1 - m) elliptic_f(phi, m)
(%o9) (-----------------------------------------------
                              m

                                 cos(phi) sin(phi)
                             - ---------------------)/(2 (1 - m))
                                             2
                               sqrt(1 - m sin (phi))

Support for elliptic functions and integrals was written by Raymond Toy. It is placed under the terms of the General Public License (GPL) that governs the distribution of Maxima.

Categories:  Elliptic functions


Next: , Previous: , Up: Top   [Contents][Index]

16.2 Functions and Variables for Elliptic Functions

Function: jacobi_sn (u, m)

The Jacobian elliptic function sn(u,m).

Categories:  Elliptic functions

Function: jacobi_cn (u, m)

The Jacobian elliptic function cn(u,m).

Categories:  Elliptic functions

Function: jacobi_dn (u, m)

The Jacobian elliptic function dn(u,m).

Categories:  Elliptic functions

Function: jacobi_ns (u, m)

The Jacobian elliptic function ns(u,m) = 1/sn(u,m).

Categories:  Elliptic functions

Function: jacobi_sc (u, m)

The Jacobian elliptic function sc(u,m) = sn(u,m)/cn(u,m).

Categories:  Elliptic functions

Function: jacobi_sd (u, m)

The Jacobian elliptic function sd(u,m) = sn(u,m)/dn(u,m).

Categories:  Elliptic functions

Function: jacobi_nc (u, m)

The Jacobian elliptic function nc(u,m) = 1/cn(u,m).

Categories:  Elliptic functions

Function: jacobi_cs (u, m)

The Jacobian elliptic function cs(u,m) = cn(u,m)/sn(u,m).

Categories:  Elliptic functions

Function: jacobi_cd (u, m)

The Jacobian elliptic function cd(u,m) = cn(u,m)/dn(u,m).

Categories:  Elliptic functions

Function: jacobi_nd (u, m)

The Jacobian elliptic function nd(u,m) = 1/dn(u,m).

Categories:  Elliptic functions

Function: jacobi_ds (u, m)

The Jacobian elliptic function ds(u,m) = dn(u,m)/sn(u,m).

Categories:  Elliptic functions

Function: jacobi_dc (u, m)

The Jacobian elliptic function dc(u,m) = dn(u,m)/cn(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_sn (u, m)

The inverse of the Jacobian elliptic function sn(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_cn (u, m)

The inverse of the Jacobian elliptic function cn(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_dn (u, m)

The inverse of the Jacobian elliptic function dn(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_ns (u, m)

The inverse of the Jacobian elliptic function ns(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_sc (u, m)

The inverse of the Jacobian elliptic function sc(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_sd (u, m)

The inverse of the Jacobian elliptic function sd(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_nc (u, m)

The inverse of the Jacobian elliptic function nc(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_cs (u, m)

The inverse of the Jacobian elliptic function cs(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_cd (u, m)

The inverse of the Jacobian elliptic function cd(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_nd (u, m)

The inverse of the Jacobian elliptic function nd(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_ds (u, m)

The inverse of the Jacobian elliptic function ds(u,m).

Categories:  Elliptic functions

Function: inverse_jacobi_dc (u, m)

The inverse of the Jacobian elliptic function dc(u,m).

Categories:  Elliptic functions


Previous: , Up: Top   [Contents][Index]

16.3 Functions and Variables for Elliptic Integrals

Function: elliptic_f (phi, m)

The incomplete elliptic integral of the first kind, defined as

integrate(1/sqrt(1 - m*sin(x)^2), x, 0, phi)

See also elliptic_e and elliptic_kc.

Categories:  Elliptic integrals

Function: elliptic_e (phi, m)

The incomplete elliptic integral of the second kind, defined as

elliptic_e(phi, m) = integrate(sqrt(1 - m*sin(x)^2), x, 0, phi)

See also elliptic_f and elliptic_ec.

Categories:  Elliptic integrals

Function: elliptic_eu (u, m)

The incomplete elliptic integral of the second kind, defined as

integrate(dn(v,m)^2,v,0,u) = integrate(sqrt(1-m*t^2)/sqrt(1-t^2), t, 0, tau)

where tau = sn(u,m).

This is related to elliptic_e by

elliptic_eu(u, m) = elliptic_e(asin(sn(u,m)),m)

See also elliptic_e.

Function: elliptic_pi (n, phi, m)

The incomplete elliptic integral of the third kind, defined as

integrate(1/(1-n*sin(x)^2)/sqrt(1 - m*sin(x)^2), x, 0, phi)

Categories:  Elliptic integrals

Function: elliptic_kc (m)

The complete elliptic integral of the first kind, defined as

integrate(1/sqrt(1 - m*sin(x)^2), x, 0, %pi/2)

For certain values of m, the value of the integral is known in terms of Gamma functions. Use makegamma to evaluate them.

Categories:  Elliptic integrals

Function: elliptic_ec (m)

The complete elliptic integral of the second kind, defined as

integrate(sqrt(1 - m*sin(x)^2), x, 0, %pi/2)

For certain values of m, the value of the integral is known in terms of Gamma functions. Use makegamma to evaluate them.

Categories:  Elliptic integrals


Previous: , Up: Top   [Contents][Index]