Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

ライブ エディターでの対話的の微積分

この例では、対話型コントロールを追加して、ライブ スクリプトで微積分問題を解決する方法を示します。

スクリプトへの対話型コントロールの追加

対話型コントロールを使用して、ライブ スクリプトの変数の値を変更できます。数値スライダーを追加するには、[挿入] タブで、[コントロール] ボタンをクリックし、[数値スライダー] を選択します。詳細については、ライブ スクリプトへの対話型コントロールの追加を参照してください。

変数と関数の初期化

次の積分を評価します。

0xMaxcx2dx

これには、リーマン和による近似を使用しています。

リーマン和は、四角形領域の有限和による解析積分の数値近似です。対話的なスライダー バーを使用して、積分の上限、四角形の数、および関数の定数係数を設定します。

syms x;
xMax = 4;
numRectangles = 30;
c = 2.5;
f(x) = c*x^2;
yMax = double(f(xMax));

リーマン和を使用して曲線の下部領域を可視化

被積分 f をプロットします。

fplot(f);
xlim([0 xMax]); ylim([0 yMax]);
legend({}, 'Location', 'north', 'FontSize', 20);
title('Riemann Sum', 'FontSize', 20);

積分曲線の下部の面積に最も近づく四角形の面積を計算します。四角形をプロットします。

width = xMax/numRectangles;
sum = 0;
for i = 0:numRectangles-1
    xval = i*width;
    height = double(f(xval));
    rectangle('Position', [xval 0 width height], 'EdgeColor', 'r');
    sum = sum + width*height;
end
text(xMax/10, yMax/3, ['Area = ' num2str(sum)], 'FontSize', 20);

Figure contains an axes. The axes with title Riemann Sum contains 32 objects of type functionline, rectangle, text.

積分の解析的な計算

積分を解析的に計算します。vpa を使用して、シンボリック厳密解を有効桁数 32 桁まで数値的に近似します。

fInt = int(f,0,xMax)
fInt = 

1603sym(160/3)

vpa(fInt)
ans = 53.333333333333333333333333333333vpa('53.333333333333333333333333333333')