Symbolic Math Toolbox

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

積分

この例では、Symbolic Math Toolbox™ を使って定積分と不定積分を計算する方法を示します。

不定積分

数式 f を積分するということは、F の 1 次導関数が f になるように式 F を求めるということです。積分は微分よりも手順が複雑です。微分とは対照的に、任意の式の積分を計算するための一般的なアルゴリズムは存在しません。たとえば、次の式 f を作成します。

syms x;
f = sin(x)/x
 
f =
 
sin(x)/x
 

プロット コマンドを使用して式を可視化することができます。たとえば、-15 ~ 15 の変数の値で f のプロットを作成します。

ezplot(f, [-15, 15])

積分を計算するには、関数 int を使用します。式を積分すると、元の式で使用している関数よりも複雑な関数が結果に含まれることがしばしばあります。たとえば、単純な三角式 sin(x)/x の積分は特殊な関数 (正弦積分関数) になります。

F = int(f, x)
 
F =
 
sinint(x)
 

また、正弦積分関数を可視化することもできます。

ezplot(F, [-15, 15])

定積分

関数 int でも定積分を計算することができます。定積分を計算するには、積分区間の上限と下限を指定します。たとえば、積分区間 -15 ~ 15 で f = sin(x)/x の積分を計算できます。

int(f, x, -15, 15)
 
ans =
 
2*sinint(15)
 

積分区間の一方の限界または両方の限界を指定して無限大を使用することも可能です。たとえば、0 から正の無限大で関数 f を積分できます。

int(f, x, 0, inf)
 
ans =
 
pi/2
 

負の無限大から 0 で積分すると、同じ結果が得られます。

int(f, x, -inf, 0)
 
ans =
 
pi/2
 

すべての実数のセット全体でも f の積分を計算できます。

int(f, x, -inf, inf)
 
ans =
 
pi