PartialPivLU.h file
Dense LU factorization solver with partial pivoting.
This header provides the PartialPivLU solver class, which implements dense LU factorization for general square matrices using Eigen's PartialPivLU solver.
Algorithm
The solver computes
or equivalently
where is a permutation matrix, is unit lower triangular, and is upper triangular.
Applicability
- General dense square matrices
- Non-symmetric systems
- Newton systems with dense Jacobians
Notes
- This solver does not assume symmetry.
- Eigen's PartialPivLU assumes the matrix is square and invertible.
- If rank deficiency is possible and must be handled robustly, FullPivLU is safer.
Namespaces
- namespace Rodin
- The Rodin library for finite element methods and shape optimization.
- namespace Rodin::FormLanguage
- Namespace Rodin::
FormLanguage. - namespace Rodin::Solver
- Namespace Rodin::
Solver.
Classes
-
template<class LinearSystem>struct Rodin::FormLanguage::Traits<Solver::PartialPivLU<LinearSystem>>
- Form-language traits for PartialPivLU solvers.
-
template<class Scalar>class Rodin::Solver::PartialPivLU<Math::LinearSystem<Math::Matrix<Scalar>, Math::Vector<Scalar>>>
- Dense LU factorization solver with partial pivoting for general matrices.