DFT-EFE
 
Loading...
Searching...
No Matches
dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components > Class Template Reference

#include <DealiiFEEvaluationWrapper.h>

Inheritance diagram for dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >:
Collaboration diagram for dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >:

Public Member Functions

 FEEvaluationWrapperDerived (const dealii::MatrixFree< 3, double > &matrixFreeData, const unsigned int matrixFreeVectorComponent, const unsigned int matrixFreeQuadratureComponent)
 
 ~FEEvaluationWrapperDerived ()
 
unsigned int totalNumberofQuadraturePoints () override
 Returns the total number of quadrature points in all 3 directions. More...
 
void reinit (const unsigned int macrocell) override
 reinits the dealii::FEEvaluation object for the macrocellIndex More...
 
void readDoFValues (const distributedCPUVec< double > &tempvec) override
 Calls dealii::FEEvaluation::read_dof_values. More...
 
void readDoFValuesPlain (const distributedCPUVec< double > &tempvec) override
 Calls dealii::FEEvaluation::read_dofs_values_plain. More...
 
void evaluate (dealii::EvaluationFlags::EvaluationFlags evaluateFlags) override
 Calls the dealii::FEEvaluation::evaluate. More...
 
void submitInterpolatedGradientsAndMultiply (dealii::VectorizedArray< double > &alpha) override
 
void submitInterpolatedValuesAndMultiply (dealii::VectorizedArray< double > &alpha) override
 
void submitInterpolatedValuesAndMultiplySquared () override
 
void submitInterpolatedValuesAndMultiply (dealii::AlignedVector< dealii::VectorizedArray< double > > &alpha) override
 
void submitValues (const dealii::VectorizedArray< double > &scaling, dealii::AlignedVector< dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > > &alpha) override
 
void submitGradients (dealii::AlignedVector< dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > > &alpha) override
 
void submitValues (dealii::AlignedVector< dealii::VectorizedArray< double > > &alpha) override
 
dealii::VectorizedArray< double > integrateValue () override
 
void submitValueAtQuadpoint (const unsigned int iQuadPoint, const dealii::VectorizedArray< double > &value) override
 
dealii::Point< 3, dealii::VectorizedArray< double > > getQuadraturePoint (const unsigned int iQuadPoint) override
 
void alphaTimesQuadValuesPlusYFromSubCell (const unsigned int subCellIndex, const double alpha, double *outputVector) override
 
void getQuadGradientsForSubCell (const unsigned int subCellIndex, const double alpha, double *outputVector) override
 
void getQuadHessianForSubCell (const unsigned int subCellIndex, const double alpha, double *outputVector) override
 
void submitInterpolatedValuesSubmitInterpolatedGradients (const dealii::VectorizedArray< double > &scaleValues, const bool scaleValuesFlag, const dealii::VectorizedArray< double > &scaleGradients, const bool scaleGradientsFlag) override
 
void integrate (dealii::EvaluationFlags::EvaluationFlags evaluateFlags) override
 
void getValues (dealii::AlignedVector< dealii::VectorizedArray< double > > &tempVec) override
 
void distributeLocalToGlobal (distributedCPUVec< double > &tempvec) override
 
- Public Member Functions inherited from dftefe::basis::FEEvaluationWrapperBase
virtual ~FEEvaluationWrapperBase ()=0
 
virtual unsigned int totalNumberofQuadraturePoints ()=0
 Returns the total number of quadrature points in all 3 directions. More...
 
virtual void reinit (const unsigned int macrocell)=0
 reinits the dealii::FEEvaluation object for the macrocellIndex More...
 
virtual void readDoFValues (const distributedCPUVec< double > &tempvec)=0
 Calls dealii::FEEvaluation::read_dof_values. More...
 
virtual void readDoFValuesPlain (const distributedCPUVec< double > &tempvec)=0
 Calls dealii::FEEvaluation::read_dofs_values_plain. More...
 
virtual void evaluate (dealii::EvaluationFlags::EvaluationFlags evaluateFlags)=0
 Calls the dealii::FEEvaluation::evaluate. More...
 
virtual void submitInterpolatedGradientsAndMultiply (dealii::VectorizedArray< double > &alpha)=0
 
virtual void submitInterpolatedValuesAndMultiply (dealii::VectorizedArray< double > &alpha)=0
 
virtual void submitInterpolatedValuesAndMultiplySquared ()=0
 
virtual void submitInterpolatedValuesAndMultiply (dealii::AlignedVector< dealii::VectorizedArray< double > > &alpha)=0
 
virtual void submitValues (const dealii::VectorizedArray< double > &scaling, dealii::AlignedVector< dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > > &alpha)=0
 
virtual void submitGradients (dealii::AlignedVector< dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > > &alpha)=0
 
virtual void submitValues (dealii::AlignedVector< dealii::VectorizedArray< double > > &alpha)=0
 
virtual dealii::VectorizedArray< double > integrateValue ()=0
 
virtual void submitValueAtQuadpoint (const unsigned int iQuadPoint, const dealii::VectorizedArray< double > &value)=0
 
virtual void alphaTimesQuadValuesPlusYFromSubCell (const unsigned int subCellIndex, const double alpha, double *outputVector)=0
 
virtual void getQuadGradientsForSubCell (const unsigned int subCellIndex, const double alpha, double *outputVector)=0
 
virtual void getQuadHessianForSubCell (const unsigned int subCellIndex, const double alpha, double *outputVector)=0
 
virtual void submitInterpolatedValuesSubmitInterpolatedGradients (const dealii::VectorizedArray< double > &scaleValues, const bool scaleValuesFlag, const dealii::VectorizedArray< double > &scaleGradients, const bool scaleGradientsFlag)=0
 
virtual void integrate (dealii::EvaluationFlags::EvaluationFlags evaluateFlags)=0
 
virtual dealii::Point< 3, dealii::VectorizedArray< double > > getQuadraturePoint (const unsigned int iQuadPoint)=0
 
virtual void getValues (dealii::AlignedVector< dealii::VectorizedArray< double > > &tempVec)=0
 
virtual void distributeLocalToGlobal (distributedCPUVec< double > &tempvec)=0
 

Public Attributes

std::unique_ptr< dealii::FEEvaluation< 3, FEOrder, num_1d_quadPoints, n_components > > d_dealiiFEEvaluation
 

Additional Inherited Members

- Public Types inherited from dftefe::basis::FEEvaluationWrapperBase
template<typename T >
using distributedCPUVec = dealii::LinearAlgebra::distributed::Vector< T, dealii::MemorySpace::Host >
 

Constructor & Destructor Documentation

◆ FEEvaluationWrapperDerived()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::FEEvaluationWrapperDerived ( const dealii::MatrixFree< 3, double > &  matrixFreeData,
const unsigned int  matrixFreeVectorComponent,
const unsigned int  matrixFreeQuadratureComponent 
)

◆ ~FEEvaluationWrapperDerived()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::~FEEvaluationWrapperDerived

Member Function Documentation

◆ alphaTimesQuadValuesPlusYFromSubCell()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::alphaTimesQuadValuesPlusYFromSubCell ( const unsigned int  subCellIndex,
const double  alpha,
double *  outputVector 
)
overridevirtual

◆ distributeLocalToGlobal()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::distributeLocalToGlobal ( distributedCPUVec< double > &  tempvec)
overridevirtual

◆ evaluate()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::evaluate ( dealii::EvaluationFlags::EvaluationFlags  evaluateFlags)
overridevirtual

Calls the dealii::FEEvaluation::evaluate.

Implements dftefe::basis::FEEvaluationWrapperBase.

◆ getQuadGradientsForSubCell()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::getQuadGradientsForSubCell ( const unsigned int  subCellIndex,
const double  alpha,
double *  outputVector 
)
overridevirtual

◆ getQuadHessianForSubCell()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::getQuadHessianForSubCell ( const unsigned int  subCellIndex,
const double  alpha,
double *  outputVector 
)
overridevirtual

◆ getQuadraturePoint()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
dealii::Point< 3, dealii::VectorizedArray< double > > dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::getQuadraturePoint ( const unsigned int  iQuadPoint)
overridevirtual

◆ getValues()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::getValues ( dealii::AlignedVector< dealii::VectorizedArray< double > > &  tempVec)
overridevirtual

◆ integrate()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::integrate ( dealii::EvaluationFlags::EvaluationFlags  evaluateFlags)
overridevirtual

◆ integrateValue()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
dealii::VectorizedArray< double > dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::integrateValue
overridevirtual

◆ readDoFValues()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::readDoFValues ( const distributedCPUVec< double > &  tempvec)
overridevirtual

Calls dealii::FEEvaluation::read_dof_values.

Implements dftefe::basis::FEEvaluationWrapperBase.

◆ readDoFValuesPlain()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::readDoFValuesPlain ( const distributedCPUVec< double > &  tempvec)
overridevirtual

Calls dealii::FEEvaluation::read_dofs_values_plain.

Implements dftefe::basis::FEEvaluationWrapperBase.

◆ reinit()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::reinit ( const unsigned int  macrocell)
overridevirtual

reinits the dealii::FEEvaluation object for the macrocellIndex

Implements dftefe::basis::FEEvaluationWrapperBase.

◆ submitGradients()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::submitGradients ( dealii::AlignedVector< dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > > &  alpha)
overridevirtual

◆ submitInterpolatedGradientsAndMultiply()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::submitInterpolatedGradientsAndMultiply ( dealii::VectorizedArray< double > &  alpha)
overridevirtual

◆ submitInterpolatedValuesAndMultiply() [1/2]

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::submitInterpolatedValuesAndMultiply ( dealii::AlignedVector< dealii::VectorizedArray< double > > &  alpha)
overridevirtual

◆ submitInterpolatedValuesAndMultiply() [2/2]

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::submitInterpolatedValuesAndMultiply ( dealii::VectorizedArray< double > &  alpha)
overridevirtual

◆ submitInterpolatedValuesAndMultiplySquared()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::submitInterpolatedValuesAndMultiplySquared
overridevirtual

◆ submitInterpolatedValuesSubmitInterpolatedGradients()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::submitInterpolatedValuesSubmitInterpolatedGradients ( const dealii::VectorizedArray< double > &  scaleValues,
const bool  scaleValuesFlag,
const dealii::VectorizedArray< double > &  scaleGradients,
const bool  scaleGradientsFlag 
)
overridevirtual

◆ submitValueAtQuadpoint()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::submitValueAtQuadpoint ( const unsigned int  iQuadPoint,
const dealii::VectorizedArray< double > &  value 
)
overridevirtual

◆ submitValues() [1/2]

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::submitValues ( const dealii::VectorizedArray< double > &  scaling,
dealii::AlignedVector< dealii::Tensor< 1, 3, dealii::VectorizedArray< double > > > &  alpha 
)
overridevirtual

◆ submitValues() [2/2]

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
void dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::submitValues ( dealii::AlignedVector< dealii::VectorizedArray< double > > &  alpha)
overridevirtual

◆ totalNumberofQuadraturePoints()

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
unsigned int dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::totalNumberofQuadraturePoints ( )
overridevirtual

Returns the total number of quadrature points in all 3 directions.

Implements dftefe::basis::FEEvaluationWrapperBase.

Member Data Documentation

◆ d_dealiiFEEvaluation

template<int FEOrder, unsigned int num_1d_quadPoints, unsigned int n_components>
std::unique_ptr< dealii::FEEvaluation<3, FEOrder, num_1d_quadPoints, n_components> > dftefe::basis::FEEvaluationWrapperDerived< FEOrder, num_1d_quadPoints, n_components >::d_dealiiFEEvaluation

The documentation for this class was generated from the following files: