The current implementation uses Eigenvalue.Generalised<Double> generalisedEvD = Eigenvalue.R064.makeGeneralised(matrix); for eigenvalue decomposition, which is intended for generalised eigenvalue problems. To properly handle symmetric and non-symmetric matrices, update the code to use Eigenvalue.R064.make(matrix, symmetric) (with symmetric set appropriately).
Acceptance Criteria:
- Code no longer uses
makeGeneralised(matrix) unless actually solving a generalised eigenproblem.
- Use
Eigenvalue.R064.make(matrix, true) for symmetric matrices and Eigenvalue.R064.make(matrix, false) for non-symmetric matrices.
- Add relevant unit tests for both symmetric and non-symmetric cases.
Parent: #29
The current implementation uses
Eigenvalue.Generalised<Double> generalisedEvD = Eigenvalue.R064.makeGeneralised(matrix);for eigenvalue decomposition, which is intended for generalised eigenvalue problems. To properly handle symmetric and non-symmetric matrices, update the code to useEigenvalue.R064.make(matrix, symmetric)(withsymmetricset appropriately).Acceptance Criteria:
makeGeneralised(matrix)unless actually solving a generalised eigenproblem.Eigenvalue.R064.make(matrix, true)for symmetric matrices andEigenvalue.R064.make(matrix, false)for non-symmetric matrices.Parent: #29