|
Intrepid2
|
Tools to compute orientations for degrees-of-freedom. More...
#include <Intrepid2_OrientationTools.hpp>
Public Types | |
| typedef Kokkos::View< double ****, DeviceType > | CoeffMatrixDataViewType |
| subcell ordinal, orientation, matrix m x n More... | |
Public Member Functions | |
| template<typename BasisHostType > | |
| void | init_HGRAD (typename OrientationTools< DT >::CoeffMatrixDataViewType matData, BasisHostType const *cellBasis) |
| template<typename BasisHostType > | |
| void | init_HCURL (typename OrientationTools< DT >::CoeffMatrixDataViewType matData, BasisHostType const *cellBasis) |
| template<typename BasisHostType > | |
| void | init_HDIV (typename OrientationTools< DT >::CoeffMatrixDataViewType matData, BasisHostType const *cellBasis) |
Static Public Member Functions | |
| template<typename BasisType > | |
| static CoeffMatrixDataViewType | createCoeffMatrix (const BasisType *basis) |
| Create coefficient matrix. More... | |
| static void | clearCoeffMatrix () |
| Clear coefficient matrix. More... | |
| template<typename elemOrtValueType , class ... elemOrtProperties, typename elemNodeValueType , class ... elemNodeProperties> | |
| static void | getOrientation (Kokkos::DynRankView< elemOrtValueType, elemOrtProperties... > elemOrts, const Kokkos::DynRankView< elemNodeValueType, elemNodeProperties... > elemNodes, const shards::CellTopology cellTopo) |
| Compute orientations of cells in a workset. More... | |
| template<typename outputValueType , class ... outputProperties, typename inputValueType , class ... inputProperties, typename OrientationViewType , typename BasisType > | |
| static void | modifyBasisByOrientation (Kokkos::DynRankView< outputValueType, outputProperties... > output, const Kokkos::DynRankView< inputValueType, inputProperties... > input, const OrientationViewType orts, const BasisType *basis) |
| Modify basis due to orientation. More... | |
Static Public Attributes | |
| static std::map< std::pair< std::string, ordinal_type >, CoeffMatrixDataViewType > | ortCoeffData |
| key :: basis name, order, value :: matrix data view type More... | |
Static Private Member Functions | |
| template<typename BasisHostType > | |
| static CoeffMatrixDataViewType | createCoeffMatrixInternal (const BasisHostType *basis) |
| template<typename BasisHostType > | |
| static void | init_HGRAD (CoeffMatrixDataViewType matData, BasisHostType const *cellBasis) |
| Compute orientation matrix for HGRAD basis. | |
| template<typename BasisHostType > | |
| static void | init_HCURL (CoeffMatrixDataViewType matData, BasisHostType const *cellBasis) |
| Compute orientation matrix for HCURL basis. | |
| template<typename BasisHostType > | |
| static void | init_HDIV (CoeffMatrixDataViewType matData, BasisHostType const *cellBasis) |
| Compute orientation matrix for HDIV basis. | |
Tools to compute orientations for degrees-of-freedom.
Definition at line 388 of file Intrepid2_OrientationTools.hpp.
| typedef Kokkos::View<double****,DeviceType> Intrepid2::OrientationTools< DeviceType >::CoeffMatrixDataViewType |
subcell ordinal, orientation, matrix m x n
Definition at line 393 of file Intrepid2_OrientationTools.hpp.
|
inlinestatic |
Clear coefficient matrix.
Definition at line 258 of file Intrepid2_OrientationToolsDefMatrixData.hpp.
|
inlinestatic |
Create coefficient matrix.
| basis | [in] - basis type |
Definition at line 231 of file Intrepid2_OrientationToolsDefMatrixData.hpp.
|
inlinestaticprivate |
Definition at line 61 of file Intrepid2_OrientationToolsDefMatrixData.hpp.
|
inlinestatic |
Compute orientations of cells in a workset.
| elemOrts | [out] - cell orientations |
| elemNodes | [in] - node coordinates |
| cellTopo | [in] - shards cell topology |
Definition at line 64 of file Intrepid2_OrientationToolsDefModifyBasis.hpp.
Referenced by Intrepid2::CellGeometry< PointScalar, spaceDim, DeviceType >::initializeOrientations().
| void Intrepid2::OrientationTools< DeviceType >::init_HCURL | ( | typename OrientationTools< DT >::CoeffMatrixDataViewType | matData, |
| BasisHostType const * | cellBasis | ||
| ) |
Definition at line 160 of file Intrepid2_OrientationToolsDefMatrixData.hpp.
| void Intrepid2::OrientationTools< DeviceType >::init_HDIV | ( | typename OrientationTools< DT >::CoeffMatrixDataViewType | matData, |
| BasisHostType const * | cellBasis | ||
| ) |
Definition at line 205 of file Intrepid2_OrientationToolsDefMatrixData.hpp.
| void Intrepid2::OrientationTools< DeviceType >::init_HGRAD | ( | typename OrientationTools< DT >::CoeffMatrixDataViewType | matData, |
| BasisHostType const * | cellBasis | ||
| ) |
KK: mauro, this is an expensive construction for high order elements and we repeat this for all possible orientation combinations we need to address this later
KK: mauro, this is an expensive construction for high order elements and we repeat this for all possible orientation combinations we need to address this later
Definition at line 106 of file Intrepid2_OrientationToolsDefMatrixData.hpp.
References Intrepid2::Impl::OrientationTools::getCoeffMatrix_HGRAD().
|
inlinestatic |
Modify basis due to orientation.
| output | [out] - output array |
| input | [in] - input array |
| orts | [in] - orientations |
| basis | [in] - basis type |
Definition at line 229 of file Intrepid2_OrientationToolsDefModifyBasis.hpp.
Referenced by Intrepid2::Experimental::ProjectionTools< DeviceType >::getHCurlBasisCoeffs(), Intrepid2::Experimental::ProjectionTools< DeviceType >::getHDivBasisCoeffs(), Intrepid2::Experimental::ProjectionTools< DeviceType >::getHGradBasisCoeffs(), Intrepid2::Experimental::ProjectionTools< DeviceType >::getL2BasisCoeffs(), and Intrepid2::Experimental::ProjectionTools< DeviceType >::getL2DGBasisCoeffs().
|
static |
key :: basis name, order, value :: matrix data view type
Definition at line 398 of file Intrepid2_OrientationTools.hpp.