OGS
EigenLisLinearSolver.h
Go to the documentation of this file.
1 
11 #pragma once
12 
13 #include <lis.h>
14 
15 #include <vector>
16 
19 
20 namespace MathLib
21 {
22 class EigenVector;
23 class EigenMatrix;
24 class LisMatrix;
25 class LisVector;
26 
31 {
32 public:
40  EigenLisLinearSolver(std::string const& solver_name,
41  std::string const& lis_options);
47  void setOption(std::string const& lis_options)
48  {
49  lis_options_ = lis_options;
50  }
51 
52  bool solve(EigenMatrix& A, EigenVector& b, EigenVector& x);
53 
54 private:
55  bool solve(LisMatrix& A, LisVector& b, LisVector& x);
56  std::string lis_options_;
57 };
58 
59 } // namespace MathLib
EigenLisLinearSolver(std::string const &solver_name, std::string const &lis_options)
bool solve(EigenMatrix &A, EigenVector &b, EigenVector &x)
void setOption(std::string const &lis_options)
Global vector based on Eigen vector.
Definition: EigenVector.h:28
LisMatrix is a wrapper class for matrix types of the linear iterative solvers library.
Definition: LisMatrix.h:44
Lis vector wrapper class.
Definition: LisVector.h:29