eigen_assert(m_factorizationIsOk&&"The decomposition is not in a valid state for solving, you must first call either compute() or symbolic()/numeric()");
constIndexsize=m_cholmodFactor->n;
EIGEN_UNUSED_VARIABLE(size);
eigen_assert(size==b.rows());
// Cholmod needs column-major storage without inner-stride, which corresponds to the default behavior of Ref.
eigen_assert(m_factorizationIsOk&&"The decomposition is not in a valid state for solving, you must first call either compute() or symbolic()/numeric()");
/** Sets the shift parameter that will be used to adjust the diagonal coefficients during the numerical factorization.
*
* During the numerical factorization, an offset term is added to the diagonal coefficients:\n
* \c d_ii = \a offset + \c d_ii
*
* The default is \a offset=0.
*
* \returns a reference to \c *this.
*/
Derived&setShift(constRealScalar&offset)
{
m_shiftOffset[0]=double(offset);
returnderived();
}
/** \returns the determinant of the underlying matrix from the current factorization */
Scalardeterminant()const
{
usingstd::exp;
returnexp(logDeterminant());
}
/** \returns the log determinant of the underlying matrix from the current factorization */
ScalarlogDeterminant()const
{
usingstd::log;
usingnumext::real;
eigen_assert(m_factorizationIsOk&&"The decomposition is not in a valid state for solving, you must first call either compute() or symbolic()/numeric()");