21#ifndef dealiiLinearSolver_H_
22# define dealiiLinearSolver_H_
48 const MPI_Comm & mpi_comm_domain,
64 const double absTolerance,
65 const unsigned int maxNumberIterations,
66 const int debugLevel = 0,
67 bool distributeFlag =
true);
80 dealii::ConditionalOStream
pcout;
dealii::ConditionalOStream pcout
Definition dealiiLinearSolver.h:80
distributedCPUVec< double > gvec
define some temporary vectors
Definition dealiiLinearSolver.h:74
solverType
Definition dealiiLinearSolver.h:35
@ GMRES
Definition dealiiLinearSolver.h:37
@ CG
Definition dealiiLinearSolver.h:36
const unsigned int n_mpi_processes
Definition dealiiLinearSolver.h:78
const MPI_Comm d_mpiCommParent
Definition dealiiLinearSolver.h:76
const MPI_Comm mpi_communicator
Definition dealiiLinearSolver.h:77
const solverType d_type
enum denoting the choice of the dealii solver
Definition dealiiLinearSolver.h:71
dealiiLinearSolver(const MPI_Comm &mpi_comm_parent, const MPI_Comm &mpi_comm_domain, const solverType type)
Constructor.
const unsigned int this_mpi_process
Definition dealiiLinearSolver.h:79
distributedCPUVec< double > hvec
Definition dealiiLinearSolver.h:74
distributedCPUVec< double > dvec
Definition dealiiLinearSolver.h:74
void solve(dealiiLinearSolverProblem &problem, const double absTolerance, const unsigned int maxNumberIterations, const int debugLevel=0, bool distributeFlag=true)
Solve linear system, A*x=Rhs.
Abstract class for linear solve problems to be used with the dealiiLinearSolver interface.
Definition dealiiLinearSolverProblem.h:31
linearSolver()
Constructor.
Definition pseudoPotentialToDftfeConverter.cc:34
dealii::LinearAlgebra::distributed::Vector< elem_type, dealii::MemorySpace::Host > distributedCPUVec
Definition headers.h:92