工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> MATLAB

MATLABで微積分:微分方程式、積分、極限を解く

MATLABには、微分積分学の問題、任意の次数の微分方程式の解法、極限の計算のためのさまざまな方法が用意されています。何よりも、複雑な関数のグラフを簡単にプロットし、元の関数とその導関数を解くことで、グラフ上の極大値、極小値、その他の定常点を確認できます。

この章では微積分の問題を扱います。この章では、関数の極限計算と極限の性質の検証など、微積分準備の概念について説明します。

次の章微分では、式の導関数を計算し、グラフ上の局所的な極大値と極小値を見つけます。また、微分方程式の解法についても説明します。

最後に、積分の章では積分学について説明します。

極限の計算

MATLABには、極限を計算するlimit関数があります。最も基本的な形式では、limit関数は式を引数として受け取り、独立変数が0に近づくときの式の極限を求めます。

例えば、xが0に近づくときの関数f(x) = (x3 + 5)/(x4 + 7)の極限を計算してみましょう。

 syms x limit((x^3 + 5)/(x^4 + 7)) 

MATLABは上記のステートメントを実行し、以下の結果を返します。

 ans = 5/7 

limit関数はシンボリック計算の領域に属します。syms関数を使用して、どのシンボリック変数を使用するかをMATLABに伝える必要があります。変数が0以外の数に近づくときの関数の極限も計算できます。lim x→a(f(x))を計算するには、引数付きでlimitコマンドを使用します。最初の引数が式、2番目がxが近づく数(ここではa)です。

例えば、xが1に近づくときの関数f(x) = (x-3)/(x-1)の極限を計算します。

 limit((x - 3)/(x-1),1) 

MATLABは上記のステートメントを実行し、以下の結果を返します。

 ans = NaN 

もう一つ例を示します。

 limit(x^2 + 5, 3) 

MATLABは上記のステートメントを実行し、以下の結果を返します。

 ans = 14 

Octaveでの極限計算

以下は、上記の例のOctave版で、symbolicパッケージを使用しています。実行して結果を比較してください。

 pkg load symbolic symbols x = sym("x"); subs((x^3+5)/(x^4+7),x,0) 

Octaveは上記のステートメントを実行し、以下の結果を返します。

 ans = 0.7142857142857142857 

極限の基本性質の検証

代数的極限定理は、極限の基本的な性質を提供します。これらは以下の通りです。

MATLABで微積分:微分方程式、積分、極限を解く

以下の2つの関数を考えます。

xが5に近づくときの両関数の極限を計算し、これら2つの関数とMATLABを使用して極限の基本性質を検証します。

例

スクリプトファイルを作成し、以下のコードを入力します。

 syms x f = (3*x + 5)/(x-3); g = x^2 + 1; l1 = limit(f, 4) l2 = limit (g, 4) lAdd = limit(f + g, 4) lSub = limit(f - g, 4) lMult = limit(f*g, 4) lDiv = limit (f/g, 4) 

ファイルを実行すると、以下が表示されます。

 l1 = 17 l2 = 17 lAdd = 34 lSub = 0 lMult = 289 lDiv = 1 

Octaveでの極限の基本性質の検証

以下は、上記の例のOctave版で、symbolicパッケージを使用しています。実行して結果を比較してください。

 pkg load symbolic symbols x = sym("x"); f = (3*x + 5)/(x-3); g = x^2 + 1; l1 = subs(f, x, 4) l2 = subs (g, x, 4) lAdd = subs (f+g, x, 4) lSub = subs (f-g, x, 4) lMult = subs (f*g, x, 4) lDiv = subs (f/g, x, 4) 

Octaveは上記のステートメントを実行し、以下の結果を返します。

 l1 = 17.0 l2 = 17.0 lAdd = 34.0 lSub = 0.0 lMult = 289.0 lDiv = 1.0 

左側極限と右側極限

関数が変数の特定の値で不連続性を持つ場合、その点では極限は存在しません。つまり、関数f(x)の極限がx = aで不連続になるのは、xが左側からaに近づくときの極限値が、xが右側からaに近づくときの極限値と等しくない場合です。

これにより、左側極限と右側極限の概念が導かれます。左側極限は、x → a(左から)、つまりx < aの値でxがaに近づくときの極限として定義されます。右側極限は、x → a(右から)、つまりx > aの値でxがaに近づくときの極限として定義されます。左側極限と右側極限が等しくない場合、極限は存在しません。

以下の関数を考えます。

f(x) = (x - 3)/|x - 3|

limx→3 f(x)が存在しないことを示します。MATLABは以下の2つの方法でこの事実を確認できます。

左側極限と右側極限は、limitコマンドの最後の引数として文字列'left'と'right'を渡すことで計算します。

例

スクリプトファイルを作成し、以下のコードを入力します。

 f = (x - 3)/abs(x-3); ezplot(f,[-1,5]) l = limit(f,x,3,'left') r = limit(f,x,3,'right') 

ファイルを実行すると、MATLABは以下のプロットを描画します。

MATLABで微積分:微分方程式、積分、極限を解く

その後、以下の出力が表示されます。

 l = -1 r = 1 

MATLAB

  1. MATLAB徹底解説:数値計算環境の決定版
  2. MATLAB基礎マスター:必須構文とコマンド完全ガイド
  3. MATLAB変数の理解:基礎から実例まで徹底解説
  4. MATLAB必須コマンドリファレンス:効率的な計算のための完全ガイド
  5. MATLABデータ型完全ガイド:15種類の基本型と変換・判定関数
  6. MATLAB演算子完全ガイド:算術・論理・ビット演算・集合操作
  7. MATLABベクトル完全マスター:行/列ベクトルの基礎と操作
  8. MATLAB行列完全マスター:作成・参照・操作・削除の基礎
  9. MATLAB:多次元配列と特殊配列をマスターする
  10. MATLABコロン演算子をマスター:ベクトル作成と効率的な反復処理
  11. MATLABの数値型:型、格納、変換