1./diag(A)是什么意思?

时间:2018-11-23 15:48:35

标签: matlab matrix vector diagonal

所以我试图研究用MATLAB编写的代码。还有这两行奇怪的代码行,我似乎无法理解,也许有人可以帮助我?我是MATLAB的新手,大多数时候我都使用C#进行编码。

据我所知,diag(A)表示它接受矩阵A主对角线的成员。但是线的其他部分呢?尤其是1. /操作,它有什么作用?

在下面的代码中

  

A是一个4x4矩阵,存储双精度类型值,b是系数矢量,而alpha是自由选择的矢量(10、5、4、2)。

    23:35:47.059 [main] DEBUG org.hibernate.engine.spi.ActionQueue - Executing identity-insert immediately
23:35:47.062 [main] DEBUG org.hibernate.SQL - 
    insert 
    into
        phone
        (number, person_id) 
    values
        (?, ?)
23:35:47.297 [main] DEBUG org.hibernate.engine.jdbc.spi.SqlExceptionHelper - could not execute statement [n/a]
java.sql.SQLIntegrityConstraintViolationException: Column 'person_id' cannot be null

1 个答案:

答案 0 :(得分:1)

diag(A)返回带有矩阵A的对角元素的向量
./是逐元素除法运算符,因此1./diag(A)会从此向量中反转元素。
diag(1./diag(A))从该向量返回对角矩阵

因此,基本上,diag(1./diag(A))是一个矩阵,其对角线是A的对角线的倒数,其他地方为零。