在 MATLAB 中求函式控制代碼的導數
我們將研究在 MATLAB 中查詢函式控制代碼導數的不同方法。
我們將使用不同的示例程式碼和相關輸出來清除你的概念,並讓你全面瞭解在 MATLAB 中查詢函式控制代碼的導數的方法。請注意,函式控制代碼是一種 MATLAB 資料型別,其中包含有關函式的資訊。
間接呼叫函式允許你從任意點執行該函式。函式控制代碼通常用於以下目的:
- 將一個函式傳遞給另一個函式,我們通常稱它們為函式的函式。將函式傳遞給整合和優化函式,例如
integral
和fzero
,是一個應用程式。
2、必須指定回撥函式;例如,響應 UI 事件或與資料採集硬體互動的回撥。 - 為內聯而不是在軟體檔案中指定的函式建立控制代碼;匿名函式。
- 區域性函式從主函式外部呼叫。
讓我們瞭解在 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
是一個三乘二矩陣,而 X
是一個二乘一矩陣。生成符號矩陣引數 A
、B
和 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 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