编辑:TMatrix文档:https://root.cern.ch/root/html224/TMatrix.html
说我有两个矩阵,我想执行以下简单计算:
TMatrix x(2, 2);
TMatrix M(2, 2);
x.T() * M * x
由于x.T()
具有破坏性,现在这显然行不通。如何获得非破坏性转置函数来做到这一点?
第二,说我想用以下计算来求逆矩阵:
TMatrix b(2, 2);
TMatrix A(2, 2);
A(0,0) = A(1,1) = 1e-10;
TMatrix x = A.Invert() * b;
这也失败了,因为A几乎是单数。理想情况下,我想使用线性求解来获得结果Solve(A, b)
(换句话说,就是求解Ax = b
)。有内置的方法可以做到这一点吗?
最后,有没有一种简单的方法可以将TMatrix与标量相乘?
TMatrix A(2, 2);
double x = 2.0;
A * x;
我将这些案例用作简单示例,但我希望将其概括用于大问题。