在 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