Cholesky 分解类型错误 Matlab
Cholesky factorization type error Matlab
我没有做任何复杂的尝试,但无法理解为什么会触发此错误(使用 Matlab 的 R2016a 版本)。
我想在 my_matrix
上计算 Matlab's Cholesky factorization chol()
,这是一个 [2x2x3 double]
my_matrix(:,:,1) = [ 4.2534 0.4791; 0.4791 0.3522];
my_matrix(:,:,2) = [ 0.9729 0.8723; 0.8723 2.6317];
my_matrix(:,:,3) = [ 0.9886 -1.2244; -1.2244 3.0187];
chol(my_matrix)
但是这会引发以下错误:
Undefined function 'chol' for input arguments of type 'double' and
attributes 'full 3d real'.
正如@Eli Sadoff 所指出的,cholesky 分解采用 2D 矩阵。所以这个错误意味着我使用的是 3D 矩阵而不是 2D 矩阵。所以我将 chol()
应用于最后一个维度。
我没有做任何复杂的尝试,但无法理解为什么会触发此错误(使用 Matlab 的 R2016a 版本)。
我想在 my_matrix
上计算 Matlab's Cholesky factorization chol()
,这是一个 [2x2x3 double]
my_matrix(:,:,1) = [ 4.2534 0.4791; 0.4791 0.3522];
my_matrix(:,:,2) = [ 0.9729 0.8723; 0.8723 2.6317];
my_matrix(:,:,3) = [ 0.9886 -1.2244; -1.2244 3.0187];
chol(my_matrix)
但是这会引发以下错误:
Undefined function 'chol' for input arguments of type 'double' and attributes 'full 3d real'.
正如@Eli Sadoff 所指出的,cholesky 分解采用 2D 矩阵。所以这个错误意味着我使用的是 3D 矩阵而不是 2D 矩阵。所以我将 chol()
应用于最后一个维度。