MATLAB で関数ハンドルの導関数を見つける

Mehak Mubarik 2022年6月7日
MATLAB で関数ハンドルの導関数を見つける

MATLAB で関数ハンドルの導関数を見つけるさまざまな方法を見ていきます。

さまざまなサンプルコードと関連する出力を使用して、概念を明確にし、MATLAB で関数ハンドルの導関数を見つけるためのメソッドへの完全な洞察を提供します。関数ハンドルは、関数に関する情報を保持する MATLAB データ型であることに注意してください。

関数を間接的に呼び出すと、任意の場所から関数を実行できます。関数ハンドルは通常、次の目的で使用されます。

  1. ある関数を別の関数に渡す場合、それらを関数の関数と呼ぶことがよくあります。integralfzero などの統合および最適化関数に関数を渡すことは、アプリケーションです。
  2. コールバック関数を指定する必要があります。たとえば、UI イベントに応答したり、データ取得ハードウェアと対話したりするコールバック。
  3. ソフトウェアファイルではなくインラインで指定された関数のハンドルを作成します。匿名関数。
  4. ローカル関数はメイン関数の外部から呼び出されます。

MATLAB で関数ハンドルの導関数を取得する方法を理解しましょう。

MATLAB で diff 関数を使用して関数ハンドルの導関数を検索する

関数ハンドルの導関数を計算する方法を調べる前に、MATLAB でそれを作成する方法を理解してください。次のコード行があるとします。

Isa(i,'function handle')

変数 i を関数ハンドルとして定義するために使用できます。

関数のハンドルを作成するには、関数名の前に@記号を使用します。たとえば、my_defining_function という関数を定義して、f というラベルの付いたハンドルを作成する場合、次のように記述します。

f = @my_defining_function

MATLAB には、関数ハンドルのパラメーターが象徴的に意味するものは何でも概念がありません。そもそも、syms で作る必要があります。

次の例を見て、この概念を理解しましょう。

コード:

syms y
func = @(y) y^3 + 5;
diff(func,y)

出力:

ans =

3*y^2

他のいくつかの例を見てみましょう。

最初にシンボリックマトリックス関数をそのマトリックス引数から区別し、次に関数 W(CX)=AXsin(BX*CX) の導関数を決定します。ここで、A は 1 行 3 列のマトリックス、B は 3 行 2 列のマトリックスであり、X は 2 行 1 列のマトリックスです。シンボリックマトリックスパラメータ AB、および X とシンボリックマトリックス関数 W(CX) を生成します。

コード:

syms AX [1 3] matrix
syms BX [3 2] matrix
syms CX [2 1] matrix
syms W(X) [1 1] matrix keepargs
W(CX) = AX*sin(BX*CX)

出力:

W(CX) =

AX*sin(BX*CX)

さて、導関数を取る:

コード:

Dt = diff(W,CX)

出力:

Dt(CX) =

AX*(cos(BX*CX) .* BX)

さらなる練習のために別の例を見てください:

コード:

syms F(Y)
F(Y) = sin (Y ^ 4);
dF = diff (F, Y)

出力:

dF(Y) =

4*Y^3*cos(Y^4)
著者: Mehak Mubarik
Mehak Mubarik avatar Mehak Mubarik avatar

Mehak is an electrical engineer, a technical content writer, a team collaborator and a digital marketing enthusiast. She loves sketching and playing table tennis. Nature is what attracts her the most.

LinkedIn

関連記事 - MATLAB Function