WPILibC++ 2027.0.0-alpha-4
Loading...
Searching...
No Matches
slp::RegularizedLDLT< Scalar > Class Template Reference

Solves systems of linear equations using a regularized LDLT factorization. More...

#include </home/runner/work/allwpilib/allwpilib/wpimath/src/main/native/thirdparty/sleipnir/include/sleipnir/optimization/solver/util/regularized_ldlt.hpp>

Public Types

using DenseMatrix = Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic>
 Type alias for dense matrix.
using DenseVector = Eigen::Vector<Scalar, Eigen::Dynamic>
 Type alias for dense vector.
using SparseMatrix = Eigen::SparseMatrix<Scalar>
 Type alias for sparse matrix.

Public Member Functions

 RegularizedLDLT (int num_decision_variables, int num_equality_constraints)
 Constructs a RegularizedLDLT instance.
Eigen::ComputationInfo info () const
 Reports whether previous computation was successful.
RegularizedLDLTcompute (const SparseMatrix &lhs)
 Computes the regularized LDLT factorization of a matrix.
template<typename Rhs>
DenseVector solve (const Eigen::MatrixBase< Rhs > &rhs)
 Solves the system of equations using a regularized LDLT factorization.
template<typename Rhs>
DenseVector solve (const Eigen::SparseMatrixBase< Rhs > &rhs)
 Solves the system of equations using a regularized LDLT factorization.
Scalar hessian_regularization () const
 Returns the Hessian regularization factor.

Detailed Description

template<typename Scalar>
class slp::RegularizedLDLT< Scalar >

Solves systems of linear equations using a regularized LDLT factorization.

Template Parameters
ScalarScalar type.

Member Typedef Documentation

◆ DenseMatrix

template<typename Scalar>
using slp::RegularizedLDLT< Scalar >::DenseMatrix = Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic>

Type alias for dense matrix.

◆ DenseVector

template<typename Scalar>
using slp::RegularizedLDLT< Scalar >::DenseVector = Eigen::Vector<Scalar, Eigen::Dynamic>

Type alias for dense vector.

◆ SparseMatrix

template<typename Scalar>
using slp::RegularizedLDLT< Scalar >::SparseMatrix = Eigen::SparseMatrix<Scalar>

Type alias for sparse matrix.

Constructor & Destructor Documentation

◆ RegularizedLDLT()

template<typename Scalar>
slp::RegularizedLDLT< Scalar >::RegularizedLDLT ( int num_decision_variables,
int num_equality_constraints )
inline

Constructs a RegularizedLDLT instance.

Parameters
num_decision_variablesThe number of decision variables in the system.
num_equality_constraintsThe number of equality constraints in the system.

Member Function Documentation

◆ compute()

template<typename Scalar>
RegularizedLDLT & slp::RegularizedLDLT< Scalar >::compute ( const SparseMatrix & lhs)
inline

Computes the regularized LDLT factorization of a matrix.

Parameters
lhsLeft-hand side of the system.
Returns
The factorization.

◆ hessian_regularization()

template<typename Scalar>
Scalar slp::RegularizedLDLT< Scalar >::hessian_regularization ( ) const
inline

Returns the Hessian regularization factor.

Returns
Hessian regularization factor.

◆ info()

template<typename Scalar>
Eigen::ComputationInfo slp::RegularizedLDLT< Scalar >::info ( ) const
inline

Reports whether previous computation was successful.

Returns
Whether previous computation was successful.

◆ solve() [1/2]

template<typename Scalar>
template<typename Rhs>
DenseVector slp::RegularizedLDLT< Scalar >::solve ( const Eigen::MatrixBase< Rhs > & rhs)
inline

Solves the system of equations using a regularized LDLT factorization.

Parameters
rhsRight-hand side of the system.
Returns
The solution.

◆ solve() [2/2]

template<typename Scalar>
template<typename Rhs>
DenseVector slp::RegularizedLDLT< Scalar >::solve ( const Eigen::SparseMatrixBase< Rhs > & rhs)
inline

Solves the system of equations using a regularized LDLT factorization.

Parameters
rhsRight-hand side of the system.
Returns
The solution.

The documentation for this class was generated from the following file:
  • /home/runner/work/allwpilib/allwpilib/wpimath/src/main/native/thirdparty/sleipnir/include/sleipnir/optimization/solver/util/regularized_ldlt.hpp