An abstract class to store and access data for a given basis, such as the basis function values on a quadrature grid, the overlap matrix of the basis, etc. More...
#include <BasisDataStorage.h>
Public Types | |
using | Storage = dftefe::utils::MemoryStorage< ValueTypeBasisData, memorySpace > |
using | pointer = typename Storage::pointer |
using | reference = typename Storage::reference |
using | const_reference = typename Storage::const_reference |
using | iterator = typename Storage::iterator |
using | const_iterator = typename Storage::const_iterator |
using | QuadraturePointAttributes = quadrature::QuadraturePointAttributes |
using | QuadratureRuleAttributes = quadrature::QuadratureRuleAttributes |
Public Member Functions | |
virtual | ~BasisDataStorage ()=default |
virtual std::shared_ptr< const BasisDofHandler > | getBasisDofHandler () const =0 |
virtual void | evaluateBasisData (const quadrature::QuadratureRuleAttributes &quadratureRuleAttributes, const BasisStorageAttributesBoolMap basisStorageAttributesBoolMap)=0 |
virtual void | evaluateBasisData (const quadrature::QuadratureRuleAttributes &quadratureRuleAttributes, std::shared_ptr< const quadrature::QuadratureRuleContainer > quadratureRuleContainer, const BasisStorageAttributesBoolMap basisStorageAttributesBoolMap)=0 |
virtual void | evaluateBasisData (const quadrature::QuadratureRuleAttributes &quadratureRuleAttributes, std::vector< std::shared_ptr< const quadrature::QuadratureRule > > quadratureRuleVec, const BasisStorageAttributesBoolMap basisStorageAttributesBoolMap)=0 |
virtual void | evaluateBasisData (const quadrature::QuadratureRuleAttributes &quadratureRuleAttributes, std::shared_ptr< const quadrature::QuadratureRule > baseQuadratureRuleAdaptive, std::vector< std::shared_ptr< const utils::ScalarSpatialFunctionReal > > &functions, const std::vector< double > &absoluteTolerances, const std::vector< double > &relativeTolerances, const std::vector< double > &integralThresholds, const double smallestCellVolume, const unsigned int maxRecursion, const BasisStorageAttributesBoolMap basisStorageAttributesBoolMap)=0 |
virtual void | deleteBasisData ()=0 |
virtual Storage | getBasisData (const QuadraturePointAttributes &attributes, const size_type basisId) const =0 |
virtual Storage | getBasisGradientData (const QuadraturePointAttributes &attributes, const size_type basisId) const =0 |
virtual Storage | getBasisHessianData (const QuadraturePointAttributes &attributes, const size_type basisId) const =0 |
virtual Storage | getBasisDataInCell (const size_type cellId, const size_type basisId) const =0 |
virtual Storage | getBasisGradientDataInCell (const size_type cellId, const size_type basisId) const =0 |
virtual Storage | getBasisHessianDataInCell (const size_type cellId, const size_type basisId) const =0 |
virtual Storage | getBasisDataInCell (const size_type cellId) const =0 |
virtual Storage | getBasisGradientDataInCell (const size_type cellId) const =0 |
virtual Storage | getBasisHessianDataInCell (const size_type cellId) const =0 |
virtual Storage | getJxWInCell (const size_type cellId) const =0 |
virtual const Storage & | getBasisDataInAllCells () const =0 |
virtual const Storage & | getBasisGradientDataInAllCells () const =0 |
virtual const Storage & | getBasisHessianDataInAllCells () const =0 |
virtual const Storage & | getJxWInAllCells () const =0 |
virtual Storage | getBasisOverlap (const size_type cellId, const size_type basisId1, const size_type basisId2) const =0 |
virtual Storage | getBasisOverlapInCell (const size_type cellId) const =0 |
virtual Storage | getBasisGradNiGradNjInCell (const size_type cellId) const =0 |
virtual const Storage & | getBasisGradNiGradNjInAllCells () const =0 |
virtual const Storage & | getBasisOverlapInAllCells () const =0 |
virtual std::shared_ptr< const quadrature::QuadratureRuleContainer > | getQuadratureRuleContainer () const =0 |
An abstract class to store and access data for a given basis, such as the basis function values on a quadrature grid, the overlap matrix of the basis, etc.
using dftefe::basis::BasisDataStorage< ValueTypeBasisData, memorySpace >::const_iterator = typename Storage::const_iterator |
using dftefe::basis::BasisDataStorage< ValueTypeBasisData, memorySpace >::const_reference = typename Storage::const_reference |
using dftefe::basis::BasisDataStorage< ValueTypeBasisData, memorySpace >::iterator = typename Storage::iterator |
using dftefe::basis::BasisDataStorage< ValueTypeBasisData, memorySpace >::pointer = typename Storage::pointer |
using dftefe::basis::BasisDataStorage< ValueTypeBasisData, memorySpace >::QuadraturePointAttributes = quadrature::QuadraturePointAttributes |
using dftefe::basis::BasisDataStorage< ValueTypeBasisData, memorySpace >::QuadratureRuleAttributes = quadrature::QuadratureRuleAttributes |
using dftefe::basis::BasisDataStorage< ValueTypeBasisData, memorySpace >::reference = typename Storage::reference |
using dftefe::basis::BasisDataStorage< ValueTypeBasisData, memorySpace >::Storage = dftefe::utils::MemoryStorage<ValueTypeBasisData, memorySpace> |
|
virtualdefault |
|
pure virtual |
Implemented in dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, and dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >.
|
pure virtual |
Implemented in dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, and dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >.
|
pure virtual |
Implemented in dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, and dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >.
|
pure virtual |
Implemented in dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, and dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >.
|
pure virtual |
Implemented in dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, and dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.
|
pure virtual |
Implemented in dftefe::basis::EFEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::FEBasisDataStorage< ValueTypeBasisData, memorySpace >, dftefe::basis::CFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >, and dftefe::basis::EFEBasisDataStorageDealii< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpace, dim >.