函数的方向导数
df = fndir (f, y)
df = fndir (f, y)
是函数的方向导数的形式吗f在f
,在(列-)方向上y
.这意味着df
描述了函数
.
如果y
是矩阵吗n
列和f是d
-值,则返回函数df
是刺激(d) * n
有价值的。它的价值在x的形状[d n]
,在它的j“列”表示的方向导数f在x在那个方向jth列y
.如果你喜欢df
显式地反映…的实际大小f使用,而不是
df = fnchg (fndir (f, y),“暗”,[fnbrk (f,“昏暗”),大小(y, 2)));
自fndir
依赖于功能中的ppformf
,它不适用于有理函数或stform中的函数。
例如,如果f
描述了一个米
变量d
向量值函数和x
那么,对于这个特定的ppform,某个点在它的范围内吗f
它描述了一个标量值双线性多项式,
F = ppmak({0:1,0:1},[1 0;0 1]);x = (0, 0);[d m] = fnbrk (f,“暗”,“var”);雅可比矩阵=重塑(fnval (fndir (f,眼睛(m)), x), d, m)
是这个函数在这一点的雅可比矩阵(对于这个特殊点标量-值函数,是它的梯度,它在原点为零)。
作为一个相关的例子,下面的语句绘制了Franke函数在规则网格上的梯度(一个很好的近似):
xx = linspace(约1.1 13);yy = linspace (0, 1, 11);(x, y) = ndgrid (xx和yy);z =因特网(x, y);pp2dir = fndir (csapi ({xx, yy}, z)、眼睛(2));[x(:) y(:)].'),…[2、长度(xx),长度(yy)]);箭袋(x, y,挤压(毕业生(1::)),挤压(毕业生(2::)))
这是结果图。
中的函数f
将其转换为ppform,并在一次矢量运算中正式地计算出其多项式块的方向导数,再将其组合起来构成f
.