|
| MultiVectorPoissonLinearSolverProblem (const MPI_Comm &mpi_comm_parent, const MPI_Comm &mpi_comm_domain) |
|
| ~MultiVectorPoissonLinearSolverProblem () |
|
void | reinit (std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< memorySpace > > BLASWrapperPtr, std::shared_ptr< dftfe::basis::FEBasisOperations< double, double, memorySpace > > basisOperationsPtr, const dealii::AffineConstraints< double > &constraintMatrix, const unsigned int matrixFreeVectorComponent, const unsigned int matrixFreeQuadratureComponentRhs, const unsigned int matrixFreeQuadratureComponentAX, bool isComputeMeanValueConstraint) |
|
dftfe::linearAlgebra::MultiVector< double, memorySpace > & | computeRhs (dftfe::linearAlgebra::MultiVector< double, memorySpace > &NDBCVec, dftfe::linearAlgebra::MultiVector< double, memorySpace > &outputVec, unsigned int blockSizeInput) override |
| Compute right hand side vector for the problem Ax = rhs.
|
|
void | vmult (dftfe::linearAlgebra::MultiVector< double, memorySpace > &Ax, dftfe::linearAlgebra::MultiVector< double, memorySpace > &x, unsigned int blockSize) override |
| Compute A matrix multipled by x.
|
|
void | distributeX () override |
| Apply the constraints to the solution vector.
|
|
void | precondition_Jacobi (dftfe::linearAlgebra::MultiVector< double, memorySpace > &dst, const dftfe::linearAlgebra::MultiVector< double, memorySpace > &src, const double omega) const override |
| Jacobi preconditioning function.
|
|
void | precondition_JacobiSqrt (dftfe::linearAlgebra::MultiVector< double, memorySpace > &dst, const dftfe::linearAlgebra::MultiVector< double, memorySpace > &src, const double omega) const override |
| Apply square-root of the Jacobi preconditioner function.
|
|
void | setDataForRhsVec (dftfe::utils::MemoryStorage< double, memorySpace > &inputQuadData) |
| function to set data for Rhs Vec.
|
|
void | clear () |
|
|
bool | d_isComputeDiagonalA |
|
bool | d_isMeanValueConstraintComputed |
|
const dealii::AffineConstraints< double > * | d_constraintMatrixPtr |
| pointer to dealii dealii::AffineConstraints<double> object
|
|
dftfe::linearAlgebra::MultiVector< double, memorySpace > * | d_blockedXPtr |
|
dftfe::linearAlgebra::MultiVector< double, memorySpace > * | d_blockedNDBCPtr |
|
dftfe::linearAlgebra::MultiVector< double, memorySpace > | d_rhsVec |
|
unsigned int | d_matrixFreeQuadratureComponentRhs |
|
unsigned int | d_matrixFreeVectorComponent |
|
unsigned int | d_blockSize |
|
dftfe::utils::MemoryStorage< double, memorySpace > | d_diagonalA |
|
dftfe::utils::MemoryStorage< double, memorySpace > | d_diagonalSqrtA |
|
std::shared_ptr< dftfe::linearAlgebra::BLASWrapper< memorySpace > > | d_BLASWrapperPtr |
|
std::shared_ptr< dftfe::basis::FEBasisOperations< double, double, memorySpace > > | d_basisOperationsPtr |
|
const dealii::MatrixFree< 3, double > * | d_matrixFreeDataPtr |
| pointer to dealii MatrixFree object
|
|
const dftfe::utils::MemoryStorage< double, memorySpace > * | d_cellStiffnessMatrixPtr |
|
dftUtils::constraintMatrixInfo< memorySpace > | d_constraintsInfo |
|
const MPI_Comm | mpi_communicator |
| data members for the mpi implementation
|
|
const MPI_Comm | d_mpi_parent |
|
const unsigned int | n_mpi_processes |
|
const unsigned int | this_mpi_process |
|
dealii::ConditionalOStream | pcout |
|
size_type | d_locallyOwnedSize |
|
size_type | d_numberDofsPerElement |
|
size_type | d_numCells |
|
size_type | d_inc |
|
double | d_negScalarCoeffAlpha |
|
double | d_scalarCoeffAlpha |
|
double | d_beta |
|
double | d_alpha |
|
char | d_transA |
|
char | d_transB |
|
dftfe::utils::MemoryStorage< dftfe::global_size_type, memorySpace > | d_mapNodeIdToProcId |
|
dftfe::utils::MemoryStorage< dftfe::global_size_type, memorySpace > | d_mapQuadIdToProcId |
|
dftfe::utils::MemoryStorage< double, memorySpace > | d_xCellLLevelNodalData |
|
dftfe::utils::MemoryStorage< double, memorySpace > | d_AxCellLLevelNodalData |
|
dftfe::utils::MemoryStorage< double, memorySpace > * | d_rhsQuadDataPtr |
|
unsigned int | d_matrixFreeQuadratureComponentAX |
|
unsigned int | d_nQuadsPerCell |
|
const dealii::DoFHandler< 3 > * | d_dofHandler |
|
std::vector< double > | d_cellShapeFunctionGradientIntegral |
| finite-element cell level matrix to store dot product between shapeFunction gradients (\int(\nabla N_i \cdot \nabla N_j)) with first dimension traversing the macro cell id and second dimension storing the matrix of size numberNodesPerElement x numberNodesPerElement in a flattened 1D dealii Vectorized array
|
|
std::vector< double > | d_cellShapeFunctionJxW |
| finite-element cell level matrix to store dot product between shapeFunction gradients (\int(\nabla N_i )) with first dimension traversing the macro cell id and second dimension storing the matrix of size numberNodesPerElement in a flattened 1D dealii Vectorized array
|
|
std::vector< double > | d_shapeFunctionValue |
| storage for shapefunctions
|
|
unsigned int | d_cellBlockSize |
|