所以我正在尝试研究用 MATLAB 编写的代码。还有这两行奇怪的代码,我似乎无法理解,也许有人可以帮助我?我是 MATLAB 的新手,大部分时间都在用 C# 编码。
据我所知 diag(A) 意味着它需要矩阵 A 的主对角线的成员。但是线的其他部分呢?尤其是 1./ 操作,它有什么作用?
在下面的代码中
A 是一个 4x4 矩阵,它存储 double 类型的值,b 是系数向量,alpha 是一个自由选择的向量 (10, 5, 4, 2)。
Atld=diag(1./diag(A))*A-diag(alpha)
btld=diag(1./diag(A))*b
diag(A)
返回一个向量,其中矩阵的对角元素A
./
是逐元素除法运算符,因此1./diag(A)
反转该向量中的元素。
diag(1./diag(A))
从该向量返回对角矩阵
所以,基本上,diag(1./diag(A))
是一个矩阵,A
其对角线上的对角线的倒数,其他地方都是零。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句