19#ifndef DFTFE_MULTIVECTORLINEARSOLVERPROBLEM_H
20#define DFTFE_MULTIVECTORLINEARSOLVERPROBLEM_H
29 template <dftfe::utils::MemorySpace memorySpace>
43 unsigned int blockSizeInput) = 0;
52 unsigned int blockSize) = 0;
69 const double omega)
const = 0;
79 const double omega)
const = 0;
Definition MultiVectorLinearSolverProblem.h:31
virtual void precondition_Jacobi(dftfe::linearAlgebra::MultiVector< double, memorySpace > &dst, const dftfe::linearAlgebra::MultiVector< double, memorySpace > &src, const double omega) const =0
Jacobi preconditioning function.
virtual void distributeX()=0
Apply the constraints to the solution vector.
virtual void vmult(dftfe::linearAlgebra::MultiVector< double, memorySpace > &Ax, dftfe::linearAlgebra::MultiVector< double, memorySpace > &x, unsigned int blockSize)=0
Compute A matrix multipled by x.
virtual dftfe::linearAlgebra::MultiVector< double, memorySpace > & computeRhs(dftfe::linearAlgebra::MultiVector< double, memorySpace > &NDBCVec, dftfe::linearAlgebra::MultiVector< double, memorySpace > &outputVec, unsigned int blockSizeInput)=0
Compute right hand side vector for the problem Ax = rhs.
virtual void precondition_JacobiSqrt(dftfe::linearAlgebra::MultiVector< double, memorySpace > &dst, const dftfe::linearAlgebra::MultiVector< double, memorySpace > &src, const double omega) const =0
Apply square-root of the Jacobi preconditioner function.
An class template to encapsulate a MultiVector. A MultiVector is a collection of vectors belonging t...
Definition MultiVector.h:127
Definition pseudoPotentialToDftfeConverter.cc:34