Jet  v1.3.3
fdm_linear_system_solver3.h
Go to the documentation of this file.
1 // Copyright (c) 2018 Doyub Kim
2 //
3 // I am making my contributions/submissions to this project solely in my
4 // personal capacity and am not conveying any rights to any intellectual
5 // property of any third parties.
6 
7 #ifndef INCLUDE_JET_FDM_LINEAR_SYSTEM_SOLVER3_H_
8 #define INCLUDE_JET_FDM_LINEAR_SYSTEM_SOLVER3_H_
9 
10 #include <jet/fdm_linear_system3.h>
11 
12 #include <memory>
13 
14 namespace jet {
15 
18  public:
20 
21  virtual ~FdmLinearSystemSolver3() = default;
22 
24  virtual bool solve(FdmLinearSystem3* system) = 0;
25 
27  virtual bool solveCompressed(FdmCompressedLinearSystem3*) { return false; }
28 };
29 
31 typedef std::shared_ptr<FdmLinearSystemSolver3> FdmLinearSystemSolver3Ptr;
32 
33 } // namespace jet
34 
35 #endif // INCLUDE_JET_FDM_LINEAR_SYSTEM_SOLVER3_H_
jet::FdmLinearSystemSolver3::solveCompressed
virtual bool solveCompressed(FdmCompressedLinearSystem3 *)
Solves the given compressed linear system.
Definition: fdm_linear_system_solver3.h:27
jet::FdmLinearSystemSolver3::FdmLinearSystemSolver3
FdmLinearSystemSolver3()=default
jet
Definition: advection_solver2.h:18
jet::FdmLinearSystemSolver3
Abstract base class for 3-D finite difference-type linear system solver.
Definition: fdm_linear_system_solver3.h:17
jet::FdmCompressedLinearSystem3
Compressed linear system (Ax=b) for 3-D finite differencing.
Definition: fdm_linear_system3.h:57
jet::FdmLinearSystemSolver3::~FdmLinearSystemSolver3
virtual ~FdmLinearSystemSolver3()=default
jet::FdmLinearSystem3
Linear system (Ax=b) for 3-D finite differencing.
Definition: fdm_linear_system3.h:39
fdm_linear_system3.h
jet::FdmLinearSystemSolver3Ptr
std::shared_ptr< FdmLinearSystemSolver3 > FdmLinearSystemSolver3Ptr
Shared pointer type for the FdmLinearSystemSolver3.
Definition: fdm_linear_system_solver3.h:31
jet::FdmLinearSystemSolver3::solve
virtual bool solve(FdmLinearSystem3 *system)=0
Solves the given linear system.