MoCSI API Reference
Loading...
Searching...
No Matches
Public Member Functions | List of all members
TridiagonalMatrixSolver< T > Class Template Reference

Implementation of the Tridiagonal Matrix Algorithm (TDMA) to solve 1D cases. More...

#include <TridiagonalMatrixSolver.h>

Inheritance diagram for TridiagonalMatrixSolver< T >:
Inheritance graph
Collaboration diagram for TridiagonalMatrixSolver< T >:
Collaboration graph

Public Member Functions

 TridiagonalMatrixSolver (SimulationClassBase< T > *sim_ptr, std::shared_ptr< MatrixManager< T > > matrix_manager_ptr)
 Constructor of the TDMA algorithm implementation.
 
void solveMatrixSystem (std::string_view field_name) override
 Standard serialized implementation of the TDMA. Solves a tridiagonal linear system of equations in O(n) time.
 
- Public Member Functions inherited from SolverInterface< T >
 SolverInterface (SimulationClassBase< T > *sim, std::shared_ptr< MatrixManager< T > > matrix_manager_ptr)
 
virtual ~SolverInterface ()=default
 

Additional Inherited Members

- Protected Attributes inherited from SolverInterface< T >
SimulationClassBase< T > * sim {}
 
std::shared_ptr< MatrixManager< T > > m_matrix_manager {}
 

Detailed Description

template<typename T>
class TridiagonalMatrixSolver< T >

Implementation of the Tridiagonal Matrix Algorithm (TDMA) to solve 1D cases.

Constructor & Destructor Documentation

◆ TridiagonalMatrixSolver()

template<typename T >
TridiagonalMatrixSolver< T >::TridiagonalMatrixSolver ( SimulationClassBase< T > *  sim_ptr,
std::shared_ptr< MatrixManager< T > >  matrix_manager_ptr 
)

Constructor of the TDMA algorithm implementation.

Parameters
sim_ptrPointer to the sim class.

Member Function Documentation

◆ solveMatrixSystem()

template<typename T >
void TridiagonalMatrixSolver< T >::solveMatrixSystem ( std::string_view  field_name)
overridevirtual

Standard serialized implementation of the TDMA. Solves a tridiagonal linear system of equations in O(n) time.

Implements SolverInterface< T >.


The documentation for this class was generated from the following file: