Ознакомьтесь с библиотекой Math Matrices , в которой есть различные поддерживаемые функции для матриц.
Например, метод eigenValues(...)
может быть вам интересен:
(eval,evec) = eigenValues(A)
- возвращает собственные значения "eval" и собственные векторы "evec" для вещественной несимметричной матрицы A в вещественном представлении.
Прямо из документации приведен пример использования метода eigenValues()
:
Example
Real A[3,3] = [1,2,3;
3,4,5;
2,1,4];
Real eval[3,2];
algorithm
eval := Matrices.eigenValues(A); // eval = [-0.618, 0;
// 8.0 , 0;
// 1.618, 0];
i.e., matrix A has the 3 real eigenvalues -0.618, 8, 1.618.
Надеюсь, это поможет!