对matlab中diag函数的补充

diag函数的补充

  • A是矩阵,那么diag(A)得到的是主对角线上的元素构成的列向量,如果A是行列向量,那么得到的是矩阵(A为对角线元素,其他是0)
  • X = diag(v,k)
    其中v是一个含有n个元素的向量,该调用格式可以构造一个n+abs(k)阶的方阵X。并把v作为方阵X的第k条对角线(k大于0,表示主对角线上方的第k条对角线,k小于0表示主对角线下侧的第k条对角线,k等于0表示主对线)。
  • X = diag(v)
    等价于X = diag(v,0)
  • v = diag(X,k)
    以向量形式返回矩阵X中第k条对角线上的元素。
  • v = diag(X)
    等价于v = diag(X, 0)

  • D = diag(v)

  • D = diag(v,k) 如果v为向量,那么当k>0时,D就是v为主对角线以下第k条对角线构成的矩阵,其它元素均为0
  • x = diag(A)
  • x = diag(A,k)如果A为矩阵,那么当k>0时,x就是矩阵A主对角线上第k条对角线上的元素构成的列向量
------ The Happy Ending ------