DFT-FE 1.1.0-pre
Density Functional Theory With Finite-Elements
|
dealii linear solver class wrapper More...
#include <dealiiLinearSolver.h>
Public Types | |
enum | solverType { CG = 0 , GMRES } |
Public Member Functions | |
dealiiLinearSolver (const MPI_Comm &mpi_comm_parent, const MPI_Comm &mpi_comm_domain, const solverType type) | |
Constructor. | |
void | solve (dealiiLinearSolverProblem &problem, const double absTolerance, const dftfe::uInt maxNumberIterations, const dftfe::Int debugLevel=0, bool distributeFlag=true) |
Solve linear system, A*x=Rhs. | |
![]() | |
linearSolver () | |
Constructor. | |
Private Attributes | |
const solverType | d_type |
enum denoting the choice of the dealii solver | |
distributedCPUVec< double > | gvec |
define some temporary vectors | |
distributedCPUVec< double > | dvec |
distributedCPUVec< double > | hvec |
const MPI_Comm | d_mpiCommParent |
const MPI_Comm | mpi_communicator |
const dftfe::uInt | n_mpi_processes |
const dftfe::uInt | this_mpi_process |
dealii::ConditionalOStream | pcout |
dealii linear solver class wrapper
dftfe::dealiiLinearSolver::dealiiLinearSolver | ( | const MPI_Comm & | mpi_comm_parent, |
const MPI_Comm & | mpi_comm_domain, | ||
const solverType | type ) |
Constructor.
mpi_comm_parent | parent mpi communicato |
mpi_comm_domain | domain mpi communicator |
type | enum specifying the choice of the dealii linear solver |
|
virtual |
Solve linear system, A*x=Rhs.
problem | linearSolverProblem object (functor) to compute Rhs and A*x, and preconditioning |
relTolerance | Tolerance (relative) required for convergence. |
maxNumberIterations | Maximum number of iterations. |
debugLevel | Debug output level: 0 - no debug output 1 - limited debug output 2 - all debug output. |
Implements dftfe::linearSolver.
|
private |
|
private |
enum denoting the choice of the dealii solver
|
private |
|
private |
define some temporary vectors
|
private |
|
private |
|
private |
|
private |
|
private |