NeoN
A framework for CFD software
Loading...
Searching...
No Matches
Public Member Functions | List of all members
NeoN::la::Solver Class Reference

#include <solver.hpp>

Public Member Functions

 Solver (const Solver &solver)
 
 Solver (Solver &&solver)
 
 Solver (const Executor &exec, std::unique_ptr< SolverFactory > solverInstance)
 
 Solver (const Executor &exec, const Dictionary &dict)
 
SolverStats solve (const LinearSystem< scalar, scalar, CSRMatrix< scalar, localIdx > > &ls, Vector< scalar > &field) const
 
SolverStats solve (const LinearSystem< Vec3, Vec3, CSRMatrix< Vec3, localIdx > > &ls, Vector< Vec3 > &field) const
 
SolverStats solve (const LinearSystem< scalar, Vec3, CSRMatrix< scalar, localIdx >, COOMatrix< scalar, localIdx > > &ls, Vector< Vec3 > &field) const
 Solve a system with a scalar matrix and Vec3 right-hand side (segregated vector solve). Dispatches to the distributed backend when the linear system carries a non-empty communication pattern, otherwise solves locally.
 

Detailed Description

Definition at line 99 of file solver.hpp.

Constructor & Destructor Documentation

◆ Solver() [1/4]

NeoN::la::Solver::Solver ( const Solver solver)
inline

Definition at line 104 of file solver.hpp.

◆ Solver() [2/4]

NeoN::la::Solver::Solver ( Solver &&  solver)
inline

Definition at line 107 of file solver.hpp.

◆ Solver() [3/4]

NeoN::la::Solver::Solver ( const Executor exec,
std::unique_ptr< SolverFactory solverInstance 
)
inline

Definition at line 110 of file solver.hpp.

◆ Solver() [4/4]

NeoN::la::Solver::Solver ( const Executor exec,
const Dictionary dict 
)
inline

Definition at line 113 of file solver.hpp.

Member Function Documentation

◆ solve() [1/3]

SolverStats NeoN::la::Solver::solve ( const LinearSystem< scalar, scalar, CSRMatrix< scalar, localIdx > > &  ls,
Vector< scalar > &  field 
) const
inline

Definition at line 116 of file solver.hpp.

◆ solve() [2/3]

SolverStats NeoN::la::Solver::solve ( const LinearSystem< scalar, Vec3, CSRMatrix< scalar, localIdx >, COOMatrix< scalar, localIdx > > &  ls,
Vector< Vec3 > &  field 
) const
inline

Solve a system with a scalar matrix and Vec3 right-hand side (segregated vector solve). Dispatches to the distributed backend when the linear system carries a non-empty communication pattern, otherwise solves locally.

Definition at line 138 of file solver.hpp.

◆ solve() [3/3]

SolverStats NeoN::la::Solver::solve ( const LinearSystem< Vec3, Vec3, CSRMatrix< Vec3, localIdx > > &  ls,
Vector< Vec3 > &  field 
) const
inline

Definition at line 127 of file solver.hpp.


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