NeoN
WIP Prototype of a modern OpenFOAM core
Loading...
Searching...
No Matches
Public Member Functions | List of all members
NeoN::la::LinearSystem< ValueType, IndexType > Class Template Reference

A class representing a linear system of equations. More...

#include <linearSystem.hpp>

Public Member Functions

 LinearSystem (const CSRMatrix< ValueType, IndexType > &matrix, const Vector< ValueType > &rhs)
 
 LinearSystem (const LinearSystem &ls)
 
 LinearSystem (const Executor exec)
 
 ~LinearSystem ()=default
 
CSRMatrix< ValueType, IndexType > & matrix ()
 
Vector< ValueType > & rhs ()
 
const CSRMatrix< ValueType, IndexType > & matrix () const
 
const Vector< ValueType > & rhs () const
 
LinearSystem copyToHost () const
 
void reset ()
 
LinearSystemView< ValueType, IndexType > view () &&=delete
 
LinearSystemView< ValueType, IndexType > view () const &&=delete
 
LinearSystemView< ValueType, IndexType > view () &
 
LinearSystemView< const ValueType, const IndexType > view () const &
 
const Executorexec () const
 

Detailed Description

template<typename ValueType, typename IndexType>
class NeoN::la::LinearSystem< ValueType, IndexType >

A class representing a linear system of equations.

The LinearSystem class provides functionality to store and manipulate a linear system of equations. It supports the storage of the coefficient matrix and the right-hand side vector, as well as the solution vector.

Definition at line 42 of file linearSystem.hpp.

Constructor & Destructor Documentation

◆ LinearSystem() [1/3]

template<typename ValueType , typename IndexType >
NeoN::la::LinearSystem< ValueType, IndexType >::LinearSystem ( const CSRMatrix< ValueType, IndexType > &  matrix,
const Vector< ValueType > &  rhs 
)
inline

Definition at line 46 of file linearSystem.hpp.

◆ LinearSystem() [2/3]

template<typename ValueType , typename IndexType >
NeoN::la::LinearSystem< ValueType, IndexType >::LinearSystem ( const LinearSystem< ValueType, IndexType > &  ls)
inline

Definition at line 53 of file linearSystem.hpp.

◆ LinearSystem() [3/3]

template<typename ValueType , typename IndexType >
NeoN::la::LinearSystem< ValueType, IndexType >::LinearSystem ( const Executor  exec)
inline

Definition at line 55 of file linearSystem.hpp.

◆ ~LinearSystem()

template<typename ValueType , typename IndexType >
NeoN::la::LinearSystem< ValueType, IndexType >::~LinearSystem ( )
default

Member Function Documentation

◆ copyToHost()

template<typename ValueType , typename IndexType >
LinearSystem NeoN::la::LinearSystem< ValueType, IndexType >::copyToHost ( ) const
inline

Definition at line 67 of file linearSystem.hpp.

◆ exec()

template<typename ValueType , typename IndexType >
const Executor & NeoN::la::LinearSystem< ValueType, IndexType >::exec ( ) const
inline

Definition at line 92 of file linearSystem.hpp.

◆ matrix() [1/2]

template<typename ValueType , typename IndexType >
CSRMatrix< ValueType, IndexType > & NeoN::la::LinearSystem< ValueType, IndexType >::matrix ( )
inline

Definition at line 59 of file linearSystem.hpp.

◆ matrix() [2/2]

template<typename ValueType , typename IndexType >
const CSRMatrix< ValueType, IndexType > & NeoN::la::LinearSystem< ValueType, IndexType >::matrix ( ) const
inline

Definition at line 63 of file linearSystem.hpp.

◆ reset()

template<typename ValueType , typename IndexType >
void NeoN::la::LinearSystem< ValueType, IndexType >::reset ( )
inline

Definition at line 72 of file linearSystem.hpp.

◆ rhs() [1/2]

template<typename ValueType , typename IndexType >
Vector< ValueType > & NeoN::la::LinearSystem< ValueType, IndexType >::rhs ( )
inline

Definition at line 61 of file linearSystem.hpp.

◆ rhs() [2/2]

template<typename ValueType , typename IndexType >
const Vector< ValueType > & NeoN::la::LinearSystem< ValueType, IndexType >::rhs ( ) const
inline

Definition at line 65 of file linearSystem.hpp.

◆ view() [1/4]

template<typename ValueType , typename IndexType >
LinearSystemView< ValueType, IndexType > NeoN::la::LinearSystem< ValueType, IndexType >::view ( ) &
inline

Definition at line 82 of file linearSystem.hpp.

◆ view() [2/4]

template<typename ValueType , typename IndexType >
LinearSystemView< ValueType, IndexType > NeoN::la::LinearSystem< ValueType, IndexType >::view ( ) &&
delete

◆ view() [3/4]

template<typename ValueType , typename IndexType >
LinearSystemView< const ValueType, const IndexType > NeoN::la::LinearSystem< ValueType, IndexType >::view ( ) const &
inline

Definition at line 87 of file linearSystem.hpp.

◆ view() [4/4]

template<typename ValueType , typename IndexType >
LinearSystemView< ValueType, IndexType > NeoN::la::LinearSystem< ValueType, IndexType >::view ( ) const &&
delete

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