CANDECOMP/PARAFAC decomposition of a third-order tensor (CP3) 程序中用到的MATLAB函数和语句
226: Pa2=fliplr(pascal(4));
(1)Pascal矩阵是从Pascal三角(国内称为杨辉三角或贾宪三角)提取出来的矩阵,其重要性质包括:对称;正定;而且其逆矩阵的元素也都是整数。
Pascal矩阵的第一行元素和第一列元素都为1,其余位置处的元素是该元素的左边元素加起上一行对应位置相加而得,如元素Ai,j=Ai,j-1+Ai-1,j。Ai,j表示第i行,第j列位置上的元素。
(2)fliplr函数主要的作用是将矩阵进行左右翻转。
230:Pa(n,n:end)=diag(Pa2,n-1).’;
X = diag(v,k):v为向量,X为矩阵
以向量v的元素作为矩阵X的第k条对角线元素,当k=0时,v为X的主对角线;当k>0时,v为上方第k条对角线;当k<0时,v为下方第k条对角线。
v=[1 2 3];
x=diag(v,-1)
x =
0 0 0 0
1 0 0 0
0 2 0 0
0 0 3 0
v=diag(X,k):X为矩阵,v为向量
取矩阵X的第K条对角线元素为向量v
例:
aa=randn(3,3)
aa =
-1.3282 -1.7925 0.4092
-0.3803 0.5858 -0.4684
-0.9560 0.7356 0.8292
diag(aa)
ans =
-1.3282
0.5858
0.8292diag(aa,1)
ans =
-1.7925
-0.4684