Maximaは、Jacobiの楕円関数と不完全楕円積分のサポートを含みます。 これは、数値評価はもちろんこれらの関数のシンボル操作を含みます。 これらの関数の定義と、プロパティの多くは Abramowitz and Stegun, 16–17章にあります。 可能な限り、そこれで与えられた定義と関係を使います。
特に、すべての楕円関数と積分は、 法\(k\)や率角\(\alpha\)の代わりにパラメータ\(m\)を使います。
これは、 楕円関数のために率角を使うAbramowitz and Stegunと違っているところです。 以下の関係は真です:
楕円関数と積分は、主としてシンボル計算をサポートするように意図されています。 それ故に、関数と積分の導関数のほとんどが知られています。 しかしながら、もし浮動小数点値が与えられたなら、 浮動小数点の結果が返されます。
楕円関数と積分の他の性質のほとんどのサポートはまだ書かれていません。
楕円関数のいくつかの例:
(%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)
楕円積分のいくつかの例:
(%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))
楕円関数と積分のサポートは、Raymond Toyによって書かれました。 Maximaの配布を管理するGeneral Public License (GPL)の条件のもと置かれています。
Jacobiの楕円関数\(sn(u,m)\)
Jacobiの楕円関数\(cn(u,m)\).
Jacobiの楕円関数\(dn(u,m)\).
Jacobiの楕円関数\(ns(u,m) = 1/sn(u,m)\).
Jacobiの楕円関数\(sc(u,m) = sn(u,m)/cn(u,m)\).
Jacobiの楕円関数\(sd(u,m) = sn(u,m)/dn(u,m)\).
Jacobiの楕円関数\(nc(u,m) = 1/cn(u,m)\).
Jacobiの楕円関数\(cs(u,m) = cn(u,m)/sn(u,m)\).
Jacobiの楕円関数\(cd(u,m) = cn(u,m)/dn(u,m)\).
Jacobiの楕円関数\(nc(u,m) = 1/cn(u,m)\).
Jacobiの楕円関数\(ds(u,m) = dn(u,m)/sn(u,m)\).
Jacobiの楕円関数\(dc(u,m) = dn(u,m)/cn(u,m)\).
Jacobiの楕円関数の逆関数\(sn(u,m)\).
Jacobiの楕円関数の逆関数\(cn(u,m)\).
Jacobiの楕円関数の逆関数\(dn(u,m)\).
Jacobiの楕円関数の逆関数\(ns(u,m)\).
Jacobiの楕円関数の逆関数\(sc(u,m)\).
Jacobiの楕円関数の逆関数\(sd(u,m)\).
Jacobiの楕円関数の逆関数\(nc(u,m)\).
Jacobiの楕円関数の逆関数\(cs(u,m)\).
Jacobiの楕円関数の逆関数\(cd(u,m)\).
Jacobiの楕円関数の逆関数\(nc(u,m)\).
Jacobiの楕円関数の逆関数\(ds(u,m)\).
Jacobiの楕円関数の逆関数\(dc(u,m)\).
以下のように定義された第一種不完全楕円積分
\(integrate(1/sqrt(1 - m*sin(x)^2), x, 0, phi)\)
elliptic_eとelliptic_kcも参照してください。
以下のように定義された第二種不完全楕円積分
\(elliptic_e(phi, m) = integrate(sqrt(1 - m*sin(x)^2), x, 0, phi)\)
elliptic_eとelliptic_ecも参照してください。
以下のように定義された第二種不完全楕円積分
\(integrate(dn(v,m)^2,v,0,u) = integrate(sqrt(1-m*t^2)/sqrt(1-t^2), t, 0, tau)\)
ここで、\(tau = sn(u,m)\).
これは、
\(elliptic_eu(u, m) = elliptic_e(asin(sn(u,m)),m)\) によって\(elliptic_e\)と関連付けられます。
elliptic_eも参照してください。
以下のように定義された第三種不完全楕円積分
\(integrate(1/(1-n*sin(x)^2)/sqrt(1 - m*sin(x)^2), x, 0, phi)\)
Maximaが知っている\(phi\)に関する唯一の導関数
以下のように定義された第一種完全楕円積分
\(integrate(1/sqrt(1 - m*sin(x)^2), x, 0, %pi/2)\)
\(m\)のある値に関して
積分の値は\(Gamma\)関数で表されることが知られています。
それらを評価するにはmakegammaを使ってください。
以下のように定義された第二種完全楕円積分
\(integrate(sqrt(1 - m*sin(x)^2), x, 0, %pi/2)\)
\(m\)のある値に関して
積分の値は\(Gamma\)関数で表されることが知られています。
それらを評価するにはmakegammaを使ってください。