Rodin/Solver/SimplicialLLT.h file

Simplicial LLT Cholesky factorization for sparse SPD matrices.

This header provides the SimplicialLLT solver class, which implements Cholesky decomposition using simplicial factorization for symmetric positive definite sparse matrices.

Algorithm

The solver computes:

\[ A = LL^T \]

where $ L $ is a lower triangular matrix. The simplicial algorithm processes the matrix column by column without forming supernodes.

Applicability

  • Symmetric positive definite sparse matrices
  • Problems from elliptic PDEs
  • Structural mechanics
  • Heat transfer problems

Usage Example

Problem problem(u, v);
problem = Integral(Grad(u), Grad(v)) - Integral(f, v);

Solver::SimplicialLLT solver(problem);
solver.solve();

Namespaces

namespace Rodin
The Rodin library for finite element methods and shape optimization.
namespace Rodin::FormLanguage
Module for writing high level abstract expressions.
namespace Rodin::Solver
Module for solving linear and nonlinear systems.

Classes

template<class Scalar>
class Rodin::Solver::SimplicialLLT<Math::LinearSystem<Math::SparseMatrix<Scalar>, Math::Vector<Scalar>>>
Simplicial LLT Cholesky factorization for sparse SPD matrices.