FDMLinearSystemSolver3.h
Go to the documentation of this file.
1 /*************************************************************************
2 > File Name: FDMLinearSystemSolver3.h
3 > Project Name: CubbyFlow
4 > Author: Chan-Ho Chris Ohk
5 > Purpose: Abstract base class for 3-D finite difference-type linear system solver.
6 > Created Time: 2017/08/12
7 > Copyright (c) 2018, Chan-Ho Chris Ohk
8 *************************************************************************/
9 #ifndef CUBBYFLOW_FDM_LINEAR_SYSTEM_SOLVER3_H
10 #define CUBBYFLOW_FDM_LINEAR_SYSTEM_SOLVER3_H
11 
13 
14 namespace CubbyFlow
15 {
18  {
19  public:
20  virtual ~FDMLinearSystemSolver3() = default;
21 
23  virtual bool Solve(FDMLinearSystem3* system) = 0;
24 
27  {
28  return false;
29  }
30  };
31 
33  using FDMLinearSystemSolver3Ptr = std::shared_ptr<FDMLinearSystemSolver3>;
34 }
35 
36 #endif
Abstract base class for 3-D finite difference-type linear system solver.
Definition: FDMLinearSystemSolver3.h:17
std::shared_ptr< FDMLinearSystemSolver3 > FDMLinearSystemSolver3Ptr
Shared pointer type for the FDMLinearSystemSolver3.
Definition: FDMLinearSystemSolver3.h:33
virtual bool SolveCompressed(FDMCompressedLinearSystem3 *)
Solves the given compressed linear system.
Definition: FDMLinearSystemSolver3.h:26
virtual ~FDMLinearSystemSolver3()=default
Definition: pybind11Utils.h:24
virtual bool Solve(FDMLinearSystem3 *system)=0
Solves the given linear system.
Compressed linear system (Ax=b) for 3-D finite differencing.
Definition: FDMLinearSystem3.h:61
Linear system (Ax=b) for 3-D finite differencing.
Definition: FDMLinearSystem3.h:42