文件

坡度

数值梯度

句法

FX =梯度(F)
[FX,FY] =梯度(f)
[FX,FY,FZ,...,Fn] =梯度(f)
[___] =梯度(F、h)
[___] =梯度(f,hx,hy,...,hn)

描述

例子

FX.=梯度(F的)返回一维数值梯度矢量图F.输出FX.对应于∂F/∂X,这是不同的X(水平)方向。假设点之间的间隔1

例子

[FX.f] =渐变(F的)返回Xy二维的组成部分数值梯度的矩阵F.额外的输出f对应于∂F/∂y,这是不同的y(垂直)方向。假设每个方向的点之间的间隔1

[FX.fFZ.,......,FN.] =渐变(F的)返回N.组件的数值梯度F, 在哪里F是具有N.维度。

例子

[___] =渐变(FH的)使用H作为每个方向点之间的均匀间隔。您可以在以前的语法中指定任何输出参数。

例子

[___] =渐变(FHX.HY.,......,HN.的)指定N.的每个维度的间距参数F

例子

全部收缩

计算单调增加载体的梯度。

x = 1:10
X =1×101 2 3 4 5 6 7 8 9 10
fx =渐变(x)
fx =1×10111 111 111 111 111

计算的二维梯度在网格上。

x = -2:0.2:2;y = x ';z = x。* exp(-x。^ 2  -  ^ ^ 2);[px,py] =梯度(z);

在同一张图中画出等高线和矢量。

图轮廓(x,y,z)保持QUIVIVE(X,Y,PX,PY)保持

使用特定点的梯度来线性逼近附近点的函数值,并将其与实际值进行比较。

用于函数值的线性近似的方程是

也就是说,如果你知道一个函数的值导数的斜率特定点,那么你可以使用这个信息来近似函数在附近一点的值

计算正弦函数在-1和0.5之间的一些值。然后计算梯度。

Y = SIN(-1:0.25:0.5);yp =梯度(y,0.25);

使用函数的值和导数x = 0.5预测价值罪(0.5005)

Y_GUESS = Y(END)+ YP(END)*(0.5005  -  0.5)
Y_GUESS = 0.4799.

计算实际值以进行比较。

y_actual =罪(0.5005)
y_actual = 0.4799

在指定点找到多变量函数的渐变值。

考虑多变量函数

x = 3:0.2:3;y = x ';F = x ^2 .* y.^3;冲浪(x, y, f)包含('X') ylabel ('是')Zlabel(“z”的)

计算网格上的渐变。

(外汇、财政年度)=梯度(f, 0.2);

提取梯度的值(1,-2).为此,首先获取要与之合作的点的指数。然后,使用索引从中提取相应的梯度值FX.f

x0 = 1;y0 = -2;t =(x == x0)&(y == y0);indt =查找(t);f_grad = [fx(indt)fy(indt)]
f_grad =1×2-16.0000 12.0400

梯度的确切值在点(1,-2)是

输入参数

全部收缩

输入数组,指定为向量,矩阵或多维数组。

数据类型:单身的|双倍的
复数支持:万博1manbetx是的

在所有方向之间的点之间均匀间隔,指定为标量。

例子:[FX,FY] =梯度(F,2)

数据类型:单身的|双倍的
复数支持:万博1manbetx是的

每个方向上的点之间的间距,指定为标量或向量的单独输入。的数组维数必须匹配输入的数F.每个输入都可以是标量或向量:

  • 标量指定该维度上的常数间距。

  • 向量指定值在相应维上的坐标F.在这种情况下,向量的长度必须与相应维度的大小相匹配。

例子:(外汇、财政年度)=梯度(F, 0.1, 2)

例子:[FX,FY] =梯度(F,[0.1 0.3 0.5],2)

例子:[FX,FY] =梯度(F,[0.1 0.3 0.5],[2 3 5])

数据类型:单身的|双倍的
复数支持:万博1manbetx是的

输出参数

全部收缩

数值梯度,作为与相同尺寸的阵列返回F.第一个输出FX.总是沿着二维的梯度吗F,跨栏。第二个输出f始终是第一个维度的梯度F,跨行。对于第三个输出FZ.接下来的输出N.输出是沿着梯度N.th尺寸F

更多关于

全部收缩

数值梯度

数值梯度函数是一种方法,可以使用某些点处的函数的已知值来估计每个维度中的部分导数的值。

对于两个变量的函数,FXy),梯度是

F = F X 一世 ^ + F y j ^

梯度可以被认为是指向值递增方向的向量集合F.在MATLAB®,您可以计算具有任意数量变量的函数的数字渐变。对于一个功能N.变量,FXyZ.,…),梯度为

F = F X 一世 ^ + F y j ^ + F Z. K. ^ + ...... + F N. N. ^

算法

坡度计算中心区别内部数据点。例如,考虑一个具有单位间隔数据的矩阵,一个,具有水平渐变g =渐变(a).内部梯度值,g(:,j), 是

G(:,j) = 0.5*(A(:,j+1) - A(:,j-1)));

下标j之间的不同2N-1, 和n =大小(a,2)

坡度用矩阵边缘计算值单方面差异

g(:,1)= a(:,2) -  a(:,1);g(:,n)= a(:,n) -  a(:,n-1);

如果指定点间距,那么坡度适当地衡量差异。如果指定两个或多个输出,则该函数还以类似的方式计算其他维度上的差异。不像差点功能,坡度返回具有与输入相同元素数量的数组。

扩展能力

C / C ++代码生成
使用MATLAB®Coder™生成C和c++代码。

也可以看看

|

之前介绍过的R2006a

这个话题有用吗?