ellipke
第 1 種と第 2 種の完全楕円積分
説明
[
は、第 1 種と第 2 種の完全楕円積分を返します。K
,E
] = ellipke(m
)
例
第 1 種と第 2 種の完全楕円積分の計算
以下の数値について第 1 種と第 2 種の完全楕円積分を計算します。これらの数値はシンボリック オブジェクトではないため、結果は浮動小数点数となります。
[K0, E0] = ellipke(0) [K05, E05] = ellipke(1/2)
K0 = 1.5708 E0 = 1.5708 K05 = 1.8541 E05 = 1.3506
同じ数値をシンボリック オブジェクトに変換して完全楕円積分を計算します。ほとんどのシンボリックな (正確な) 数値に対し、ellipke
は関数 ellipticK
と関数 ellipticE
を使用して結果を返します。
[K0, E0] = ellipke(sym(0)) [K05, E05] = ellipke(sym(1/2))
K0 = pi/2 E0 = pi/2 K05 = ellipticK(1/2) E05 = ellipticE(1/2)
vpa
を使用して、K05
および E05
を浮動小数点数で近似します。
vpa([K05, E05], 10)
ans = [ 1.854074677, 1.350643881]
入力が 0
と 1
の間にない場合の積分の計算
引数が 0 ~ 1 の範囲に該当しない場合は、ellipke
を使用する前にその引数をシンボリック オブジェクトに変換します。
[K, E] = ellipke(sym(pi/2))
K = ellipticK(pi/2) E = ellipticE(pi/2)
あるいは、ellipticK
および ellipticE
を使用して、第 1 種と第 2 種の積分を個別に計算します。
K = ellipticK(sym(pi/2)) E = ellipticE(sym(pi/2))
K = ellipticK(pi/2) E = ellipticE(pi/2)
行列入力に対する積分の計算
このシンボリック行列に対して ellipke
を呼び出します。入力引数が行列である場合、ellipke
は各要素について第 1 種と第 2 種の完全楕円積分を計算します。
[K, E] = ellipke(sym([-1 0; 1/2 1]))
K = [ ellipticK(-1), pi/2] [ ellipticK(1/2), Inf] E = [ ellipticE(-1), pi/2] [ ellipticE(1/2), 1]
入力引数
出力引数
詳細
ヒント
シンボリック オブジェクトではない数値について
ellipke
を呼び出すと、MATLAB® 関数ellipke
が呼び出されます。この関数では、0 <= m <= 1
のみを受け入れます。この範囲外の値について第 1 種と第 2 種の完全楕円積分を計算するには、sym
を使用して数値をシンボリック オブジェクトに変換してから、それらのシンボリック オブジェクトに対しellipke
を呼び出します。あるいは、関数ellipticK
および関数ellipticE
を使用して、積分を個別に計算します。ほとんどのシンボリックな (正確な) 数値に対し、
ellipke
は関数ellipticK
と関数ellipticE
を使用して結果を返します。vpa
を使用して、結果を浮動小数点数で近似することができます。m
がベクトルまたは行列である場合、[K,E] = ellipke(m)
は、m
の各成分について評価された第 1 種と第 2 種の完全楕円積分を返します。
参照
[1] Milne-Thomson, L. M. “Elliptic Integrals.” Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables. (M. Abramowitz and I. A. Stegun, eds.). New York: Dover, 1972.
バージョン履歴
R2013a で導入