26#ifndef dftefeL2ProjectionLinearSolverFunction_h
27#define dftefeL2ProjectionLinearSolverFunction_h
61 template <
typename ValueTypeOperator,
62 typename ValueTypeOperand,
66 :
public linearAlgebra::
67 LinearSolverFunction<ValueTypeOperator, ValueTypeOperand, memorySpace>
88 dim>> cfeBasisManager,
93 cfeBasisDataStorageOverlapMatrix,
96 cfeBasisDataStorageRhs,
106 const linearAlgebra::
107 OperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace> &
110 const linearAlgebra::
111 OperatorContext<ValueTypeOperator, ValueTypeOperand, memorySpace> &
134 FEBasisManager<ValueTypeOperand, ValueTypeOperator, memorySpace, dim>>
149 std::shared_ptr<const utils::mpi::MPIPatternP2P<memorySpace>>
A derived class of linearAlgebra::OperatorContext to encapsulate the action of a discrete operator on...
Definition: CFEOverlapOperatorContext.h:63
An abstract class to store and access data for a given basis, such as the basis function values on a ...
Definition: FEBasisDataStorage.h:53
An abstract class to encapsulate the partitioning of a finite element basis across multiple processor...
Definition: FEBasisManager.h:44
A derived class of linearAlgebra::LinearSolverFunction to encapsulate the L2 Projecton partial differ...
Definition: L2ProjectionLinearSolverFunction.h:68
std::shared_ptr< const utils::mpi::MPIPatternP2P< memorySpace > > d_mpiPatternP2P
Definition: L2ProjectionLinearSolverFunction.h:150
void setSolution(const linearAlgebra::MultiVector< ValueType, memorySpace > &x) override
Definition: L2ProjectionLinearSolverFunction.t.cpp:241
const linearAlgebra::MultiVector< ValueType, memorySpace > d_initial
Definition: L2ProjectionLinearSolverFunction.h:148
linearAlgebra::PreconditionerType d_pcType
Definition: L2ProjectionLinearSolverFunction.h:147
const utils::mpi::MPIComm & getMPIComm() const override
Definition: L2ProjectionLinearSolverFunction.t.cpp:317
const linearAlgebra::MultiVector< ValueType, memorySpace > & getInitialGuess() const override
Definition: L2ProjectionLinearSolverFunction.t.cpp:304
linearAlgebra::blasLapack::scalar_type< ValueTypeOperator, ValueTypeOperand > ValueType
define ValueType as the superior (bigger set) of the ValueTypeOperator and ValueTypeOperand (e....
Definition: L2ProjectionLinearSolverFunction.h:78
const linearAlgebra::OperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace > & getPCContext() const override
Definition: L2ProjectionLinearSolverFunction.t.cpp:227
std::shared_ptr< const CFEOverlapOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace, dim > > d_AxContext
Definition: L2ProjectionLinearSolverFunction.h:140
const linearAlgebra::OperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace > & getAxContext() const override
Definition: L2ProjectionLinearSolverFunction.t.cpp:213
linearAlgebra::MultiVector< ValueType, memorySpace > d_b
Definition: L2ProjectionLinearSolverFunction.h:146
std::shared_ptr< const linearAlgebra::OperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace > > d_PCContext
Definition: L2ProjectionLinearSolverFunction.h:144
const linearAlgebra::MultiVector< ValueTypeOperand, memorySpace > & getRhs() const override
Definition: L2ProjectionLinearSolverFunction.t.cpp:288
void getSolution(linearAlgebra::MultiVector< ValueType, memorySpace > &solution) override
Definition: L2ProjectionLinearSolverFunction.t.cpp:258
linearAlgebra::MultiVector< ValueType, memorySpace > d_x
Definition: L2ProjectionLinearSolverFunction.h:145
std::shared_ptr< const basis::FEBasisManager< ValueTypeOperand, ValueTypeOperator, memorySpace, dim > > d_feBasisManager
Definition: L2ProjectionLinearSolverFunction.h:135
Definition: LinAlgOpContext.h:38
An class template to encapsulate a MultiVector. A MultiVector is a collection of vectors belonging t...
Definition: MultiVector.h:134
Abstract class to encapsulate the action of a discrete operator on vectors, matrices,...
Definition: OperatorContext.h:51
Definition: QuadratureValuesContainer.h:39
blas::scalar_type< ValueType1, ValueType2 > scalar_type
Definition: BlasLapackTypedef.h:70
PreconditionerType
Definition: LinearAlgebraTypes.h:41
int MPIComm
Definition: MPITypes.h:83
MemorySpace
Definition: MemorySpaceType.h:37
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
unsigned int size_type
Definition: TypeConfig.h:8