Class GoldfeldQuandtTrotter
- java.lang.Object
-
- dev.nm.algebra.linear.matrix.doubles.matrixtype.dense.DenseMatrix
-
- dev.nm.algebra.linear.matrix.doubles.operation.positivedefinite.GoldfeldQuandtTrotter
-
- All Implemented Interfaces:
Matrix
,MatrixAccess
,MatrixRing
,MatrixTable
,Densifiable
,AbelianGroup<Matrix>
,Monoid<Matrix>
,Ring<Matrix>
,Table
,DeepCopyable
public class GoldfeldQuandtTrotter extends DenseMatrix
Goldfeld, Quandt and Trotter propose the following way to coerce a non-positive definite Hessian matrix to become symmetric, positive definite. For a non-positive definite Hessian matrix H, we compute \[ \widehat{H} = \frac{H + \beta I}{1 + \beta} \]
-
-
Constructor Summary
Constructors Constructor Description GoldfeldQuandtTrotter(Matrix H, double beta)
Constructs a symmetric, positive definite matrix using the Goldfeld-Quandt-Trotter algorithm.
-
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
-
GoldfeldQuandtTrotter
public GoldfeldQuandtTrotter(Matrix H, double beta)
Constructs a symmetric, positive definite matrix using the Goldfeld-Quandt-Trotter algorithm.- Parameters:
H
- a non-positive definite matrixbeta
- a positive number. The bigger beta is, the closer H^ is to I. Ifbeta == Double.POSITIVE_INFINITY
, then H^ = I.
-
-