找回密码
 注册
关于网站域名变更的通知
查看: 456|回复: 1
打印 上一主题 下一主题

了解一下Matlab梯度函数gradient吧

[复制链接]
  • TA的每日心情

    2019-11-20 15:22
  • 签到天数: 2 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2020-3-21 13:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    $ M4 ?3 P4 c6 Y$ z, O. v
    梯度:变化/参考量
    8 K9 |: }8 r: [- Z% k2 n7 O; |) P) ^0 D

    ( V1 u) T1 a6 h( s5 ]
    / D2 g$ I" z7 O  K1。如果F是一维矩阵,则FX=gradient(F,H)返回F的一维数值梯度。H是F中相邻两点间的间距。
    : a) `! p  Y7 _( m) V1 B9 T+ K3 k1 V# I- o0 e* A

    9 |( Z) t( K% w" ], g& Z& M, L' j' R) i1 }, u2 v9 x9 z
    2。如果F是二维矩阵,返回F的二维数值梯度。' K$ W! k- g' c- S- t& M. ?

    : B5 h; [' r- J- k[FX,FY]=gradient(F,HX,HY)。HX,HY参数表示各方向相邻两点的距离。. X! Z0 ?, M0 O) @. D- a* b* |

    8 j4 |9 d/ d* ]9 t/ z
    1 q, W5 p  z' \
    1 _# w$ @/ j$ P2 W" h7 [6 H4 ^8 Z3。如果F是三维矩阵,返回F的三维数值梯度。
    9 f; L1 j6 {2 a. J4 |) N6 G
    : [; q7 z: r* k9 x1 D# ?[FX,FY,FZ]=gradient(F,HX,HY,HZ)。
    ( {9 I- ^; N- L! U1 Q
    % N7 K$ L+ ?1 BHX,HY,HZ参数表示各方向相邻两点的距离。
    9 B- Q% n, N* d4 W7 c8 j
    4 y3 Y5 p  \$ v& I* ?9 C
    # L/ R2 x7 W3 |) w3 A例:
    6 |/ Y5 f9 w, W5 C>> x=[6,9,3,4,0;5,4,1,2,5;6,7,7,8,0;7,8,9,10,0]" J4 W9 O* z$ S; N2 H0 K% @+ H  r
    x =
    6 B9 Y& {8 t$ u0 D8 @  ?    6     9     3     4     0
    : G9 s/ k- x* u    5     4     1     2     57 ]- ~, H" M( Z; Q' D( ]7 G$ M6 {( @
        6     7     7     8     0
    % H$ u9 I" x: u, e    7     8     9 10     0' s7 I# h# w  t- m  {( j+ ]
    >> [Fx,Fy]=gradient(x)
    2 t) b9 j& ?9 i! c; ?9 X  O) @Fx =, ?+ p9 W2 w0 D- F* @
    3.0000 -1.5000 -2.5000 -1.5000 -4.0000$ D# [* T! s, M, o5 b5 a% i
    -1.0000 -2.0000 -1.0000 2.0000 3.00008 e- L/ A; R4 Y" |2 j8 |
    1.0000 0.5000 0.5000 -3.5000 -8.0000) P1 h% }; e' a! n; H' X* \8 q/ U
    1.0000 1.0000 1.0000 -4.5000   -10.0000) `6 G- U1 o/ k4 y
    # _) u* z: ^" L1 s) D
    Fy =0 r) k, }% v/ N1 a
    -1.0000 -5.0000 -2.0000 -2.0000 5.0000
    * w. X3 Y+ e- Y. H      0 -1.0000 2.0000 2.0000       00 a; L% J& e  ~1 Q$ M; w9 B9 d
    1.0000 2.0000 4.0000 4.0000 -2.5000' J% i* h* z7 r& G6 F3 v6 N* v
    1.0000 1.0000 2.0000 2.0000       0
    6 R% L. ?6 q( F! k$ o, U, z* k6 b
    6 p" O, N1 _9 p) X) Z' u/ kgradient()是求数值梯度函数的命令。[Fx,Fy]=gradient(x),其中Fx为其水平方向上的梯度,Fy为其垂直方向上的梯度,Fx的第一列元素为原矩阵第二列与第一列元素之差,Fx的第二列元素为原矩阵第三列与第一列元素之差除以2,以此类推:Fx(i,j)=(F(i,j+1)-F(i,j-1))/2。最后一列则为最后两列之差。同理,可以得到Fy。

    该用户从未签到

    2#
    发表于 2020-3-21 15:22 | 只看该作者
    Matlab梯度函数gradient
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-24 01:46 , Processed in 0.156250 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表