Eigensystem Sort in Wolfram Mathematica
我正在尝试在 Mathematica 中实现一种反应动力学分析解的方法。
在数值上这不是问题,但在符号形式中,必须手动重新排列特征向量列以获得"正确"结果。
例如,请查看 www.biokin.com/tools/pdf/Koro11-Kinetics-Maple-Chap2.pdf,第 41-44 页。
我正在使用矩阵
1 | K={{-k1 - k2, 0, 0, 0}, {k1, 0, 0, 0}, {k2, 0, -k3, k4}, {0, 0, k3, -k4}} |
如第 43 页示例中所指出的那样。
因此,我的最终解决方案
当答案是符号形式时,有没有办法对答案进行排序?或者如何"强制" Mathematica,而不是排列特征值和特征向量?
特征值和特征向量的排序完全是任意的,重要的是你把正确的放在一起。
您的代码的问题是
1 2 3 4 | randsamp = RandomSample[Range[4]]; vals[[randsamp]] Transpose@vect[[randsamp]].DiagonalMatrix[Exp[vals[[randsamp]] t]].Inverse[ Transpose@vect[[randsamp]]] // Simplify |
还有一个特定的 Mathematica 堆栈交换站点:http://mathematica.stackexchange.com