据我了解,MATLAB的mldivide函数使用各种算法来求解线性系统,对所涉及的矩阵执行各种检查,以查看适用的算法。这些详细信息对用户隐藏。
我记得我已经看到有一些方法可以让MATLAB在运行时输出这个过程的细节,在那里打印出检查的结果和它决定的算法(LU,Cholesky,甚至来自LAPACK的东西)对于稀疏系统?)。尽管我在搜索MATLAB论坛,stackoverflow,文档和Web方面做了最好的尝试,但我再也找不到这些信息。我知道我已经在某处看到了它。我希望有人知道如何做到这一点。
如果没有这个,有人能告诉我mldivide会选择以下算法吗?我在稀疏(2L x 2L)矩阵中有一个五对角系统,对于一些整数L
S = spdiags(myDiagonals,-2:2,2*L,2*L);
一个稀疏的右手边有四个非零的条目。
b = spalloc(2*L,1,4);
两者都包含一般的复杂条目,而且它不是对称的,也不是Hermitian或Toeplitz,但我不确定其他限定符可能会导致MATLAB选择特定的算法。我通过
计算逆S\b
我很欣赏mldivide在这种情况下做了什么,或者如何让MATLAB输出它选择算法的细节。感谢。