cuLite v0.3.1
A lite CUDA C++ Interface
Loading...
Searching...
No Matches
culite::LapackLU< T_Matrix > Class Template Reference

The partial pivoting LU linear solver for dense device matrices. More...

Inheritance diagram for culite::LapackLU< T_Matrix >:

Public Member Functions

 LapackLU (CuSolverHandler &cusolver=globalCuSolverHandler())
 Constructor.
 ~LapackLU ()=default
 Destructor.
Public Member Functions inherited from culite::LapackBase< T_Matrix >
void reserve (const T_Matrix &mat)
 Reserves workspace memory for matrix decomposition.
void clear ()
 Clears the solver internal data.
void decompose (const T_Matrix &mat)
 Performs matrix decomposition.
void solve (T_Matrix &rhs) const
 Performs in-place matrix solution.
void solve (T_Vector &rhs) const
 Performs in-place vector solution.

Detailed Description

template<typename T_Matrix>
class culite::LapackLU< T_Matrix >

The partial pivoting LU linear solver for dense device matrices.

Implements the LU decomposition with partial pivoting \( P A = L U \) for general matrices stored in device memory. This is the GPU version using cuSOLVER.

Template Parameters
T_MatrixThe device matrix type (e.g., dns::XxMatrix<T_Scalar>).
Examples
ex05a_solving_linear_systems_lu.cpp.

Constructor & Destructor Documentation

◆ LapackLU()

template<typename T_Matrix>
culite::LapackLU< T_Matrix >::LapackLU ( CuSolverHandler & cusolver = globalCuSolverHandler())
inline

Constructor.

Initializes the LU solver with the specified cuSOLVER handler.

Parameters
[in]cusolverReference to the cuSOLVER handler (defaults to global handler).

◆ ~LapackLU()

template<typename T_Matrix>
culite::LapackLU< T_Matrix >::~LapackLU ( )
default

Destructor.

Destroys the solver and releases allocated resources.