Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 如何比较choleskiSol函数?_Matlab - Fatal编程技术网

Matlab 如何比较choleskiSol函数?

Matlab 如何比较choleskiSol函数?,matlab,Matlab,在Cholesky方法的求解阶段,我如何前后推导出替换算法 如何比较choleskiSol函数 这是我给choleskisol的代码 function x = choleskiSol(L,b) % Solves [L][L’]{x} = {b} % USAGE: x = choleskiSol(L,b) n = length(b); if size(b,2) > 1 b = b’; end % {b} must be column vector for k = 1:n % S

在Cholesky方法的求解阶段,我如何前后推导出替换算法

如何比较choleskiSol函数

这是我给choleskisol的代码

function x = choleskiSol(L,b)
% Solves [L][L’]{x} = {b}
% USAGE: x = choleskiSol(L,b)

n = length(b);

if size(b,2) > 1
    b = b’;
end % {b} must be column vector

for k = 1:n % Solution of [L]{y} = {b}
    b(k) = (b(k) - dot(L(k,1:k-1),b(1:k-1)’))/L(k,k);
end

for k = n:-1:1 % Solution of {L}’{x} = {y}
    b(k) = (b(k) - dot(L(k+1:n,k),b(k+1:n)))/L(k,k);
end
x = b;

matlab中的标准Cholesky分解(chol(A))将对称(正定)矩阵A分解为上三角形式。要求解线性方程组,必须采用上三角形式,并通过向后代换进行求解。这将产生系统的可变值

要在matlab中使用参数矩阵A和输出向量B完成求解,请执行以下操作:

L = chol(A); % A must be sym and det(A) > 0
x = (L \ (L' \ b)); % L' is lower-triangular