isDerogatoryMatrix method
Checks if the matrix is a derogatory matrix.
Example:
Matrix M = Matrix([
[2, 1],
[1, 2]
]);
print(M.isDerogatoryMatrix()); // Output: false
Implementation
bool isDerogatoryMatrix() {
List eigenvalues = this.eigenvalues();
Map<dynamic, dynamic> eigenvalueCounts = {};
for (dynamic eigenvalue in eigenvalues) {
eigenvalueCounts[eigenvalue] =
((eigenvalueCounts[eigenvalue] ?? Complex(0))) + Complex.one();
}
for (dynamic eigenvalue in eigenvalueCounts.keys) {
if (eigenvalueCounts[eigenvalue]! > Complex.one()) {
return true;
}
}
return false;
}