Class PositiveSemiDefiniteMatrixNonNegativeDiagonal
- java.lang.Object
-
- dev.nm.algebra.linear.matrix.doubles.matrixtype.dense.DenseMatrix
-
- dev.nm.algebra.linear.matrix.doubles.operation.positivedefinite.PositiveDefiniteMatrixByPositiveDiagonal
-
- dev.nm.algebra.linear.matrix.doubles.operation.positivedefinite.PositiveSemiDefiniteMatrixNonNegativeDiagonal
-
- All Implemented Interfaces:
Matrix,MatrixAccess,MatrixRing,MatrixTable,Densifiable,AbelianGroup<Matrix>,Monoid<Matrix>,Ring<Matrix>,Table,DeepCopyable
public class PositiveSemiDefiniteMatrixNonNegativeDiagonal extends PositiveDefiniteMatrixByPositiveDiagonal
This class "converts" a matrix into a symmetric, positive semi-definite matrix, if it is not already so, by forcing the negative diagonal entries in the eigen decomposition to 0.
-
-
Constructor Summary
Constructors Constructor Description PositiveSemiDefiniteMatrixNonNegativeDiagonal(Matrix A, double epsilon)Constructs a positive semi-definite matrix by forcing the negative diagonal entries in the eigen decomposition to 0.
-
Method Summary
-
Methods inherited from class dev.nm.algebra.linear.matrix.doubles.matrixtype.dense.DenseMatrix
add, deepCopy, equals, get, getColumn, getColumn, getRow, getRow, hashCode, minus, multiply, multiply, nCols, nRows, ONE, opposite, scaled, set, setColumn, setRow, t, toDense, toString, ZERO
-
-
-
-
Constructor Detail
-
PositiveSemiDefiniteMatrixNonNegativeDiagonal
public PositiveSemiDefiniteMatrixNonNegativeDiagonal(Matrix A, double epsilon)
Constructs a positive semi-definite matrix by forcing the negative diagonal entries in the eigen decomposition to 0.- Parameters:
A- a matrixepsilon- a precision parameter: when a number |x| ≤ ε, it is considered 0; used in the eigen decomposition (don't make it 0)
-
-