|
template<typename BasisType > |
static CoeffMatrixDataViewType | createCoeffMatrix (const BasisType *basis) |
| Create coefficient matrix. More...
|
|
template<typename BasisType > |
static CoeffMatrixDataViewType | createInvCoeffMatrix (const BasisType *basis) |
| Create inverse of coefficient matrix. More...
|
|
static void | clearCoeffMatrix () |
| Clear coefficient matrix.
|
|
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, bool isSide=false) |
| 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, const bool transpose=false) |
| Modify basis due to orientation. More...
|
|
template<typename outputValueType , class... outputProperties, typename inputValueType , class... inputProperties, typename OrientationViewType , typename BasisType > |
static void | modifyBasisByOrientationTranspose (Kokkos::DynRankView< outputValueType, outputProperties...> output, const Kokkos::DynRankView< inputValueType, inputProperties...> input, const OrientationViewType orts, const BasisType *basis) |
| Modify basis due to orientation, applying the transpose of the operator applied in modifyBasisByOrientation(). If the input provided represents basis coefficents in the global orientation, then this method will appropriately transform them to the local orientation. More...
|
|
template<typename outputValueType , class... outputProperties, typename inputValueType , class... inputProperties, typename OrientationViewType , typename BasisType > |
static void | modifyBasisByOrientationInverse (Kokkos::DynRankView< outputValueType, outputProperties...> output, const Kokkos::DynRankView< inputValueType, inputProperties...> input, const OrientationViewType orts, const BasisType *basis, const bool transpose=false) |
| Modify basis due to orientation, applying the inverse of the operator applied in modifyBasisByOrientation(). More...
|
|
template<typename outputValueType , class... outputProperties, typename inputValueType , class... inputProperties, typename OrientationViewType , typename BasisTypeLeft , typename BasisTypeRight > |
static void | modifyMatrixByOrientation (Kokkos::DynRankView< outputValueType, outputProperties...> output, const Kokkos::DynRankView< inputValueType, inputProperties...> input, const OrientationViewType orts, const BasisTypeLeft *basisLeft, const BasisTypeRight *basisRight) |
| Modify an assembled (C,F1,F2) matrix according to orientation of the cells. More...
|
|
|
template<typename BasisHostType > |
static CoeffMatrixDataViewType | createCoeffMatrixInternal (const BasisHostType *basis, const bool invTrans=false) |
|
template<typename BasisHostType > |
static void | init_HGRAD (CoeffMatrixDataViewType matData, BasisHostType const *cellBasis, const bool inverse=false) |
| Compute orientation matrix for HGRAD basis.
|
|
template<typename BasisHostType > |
static void | init_HCURL (CoeffMatrixDataViewType matData, BasisHostType const *cellBasis, const bool inverse=false) |
| Compute orientation matrix for HCURL basis.
|
|
template<typename BasisHostType > |
static void | init_HDIV (CoeffMatrixDataViewType matData, BasisHostType const *cellBasis, const bool inverse=false) |
| Compute orientation matrix for HDIV basis.
|
|
template<typename BasisHostType > |
static void | init_HVOL (CoeffMatrixDataViewType matData, BasisHostType const *cellBasis, const bool inverse=false) |
| Compute orientation matrix for HVOL basis.
|
|
template<typename DeviceType>
class Intrepid2::OrientationTools< DeviceType >
Tools to compute orientations for degrees-of-freedom.
Definition at line 378 of file Intrepid2_OrientationTools.hpp.
template<typename DT >
template<typename outputValueType , class... outputProperties, typename inputValueType , class... inputProperties, typename OrientationViewType , typename BasisType >
void Intrepid2::OrientationTools< DT >::modifyBasisByOrientation |
( |
Kokkos::DynRankView< outputValueType, outputProperties...> |
output, |
|
|
const Kokkos::DynRankView< inputValueType, inputProperties...> |
input, |
|
|
const OrientationViewType |
orts, |
|
|
const BasisType * |
basis, |
|
|
const bool |
transpose = false |
|
) |
| |
|
inlinestatic |
Modify basis due to orientation.
- Parameters
-
output | [out] - output array, of shape (C,F,P[,D]) |
input | [in] - input array, of shape (C,F,P[,D]) or (F,P[,D]) |
orts | [in] - orientations, of shape (C) |
basis | [in] - basis of cardinality F |
transpose | [in] - boolean, when true the transpose of the orintation matrix is applied |
Definition at line 250 of file Intrepid2_OrientationToolsDefModifyBasis.hpp.
References Intrepid2::RealSpaceTools< DeviceType >::clone().
Referenced by Intrepid2::ProjectionTools< DeviceType >::projectField().
template<typename DT >
template<typename outputValueType , class... outputProperties, typename inputValueType , class... inputProperties, typename OrientationViewType , typename BasisType >
void Intrepid2::OrientationTools< DT >::modifyBasisByOrientationTranspose |
( |
Kokkos::DynRankView< outputValueType, outputProperties...> |
output, |
|
|
const Kokkos::DynRankView< inputValueType, inputProperties...> |
input, |
|
|
const OrientationViewType |
orts, |
|
|
const BasisType * |
basis |
|
) |
| |
|
inlinestatic |
Modify basis due to orientation, applying the transpose of the operator applied in modifyBasisByOrientation(). If the input provided represents basis coefficents in the global orientation, then this method will appropriately transform them to the local orientation.
- Parameters
-
output | [out] - output array, of shape (C,F,P[,D]) |
input | [in] - input array, of shape (C,F,P[,D]) or (F,P[,D]) |
orts | [in] - orientations, of shape (C) |
basis | [in] - basis of cardinality F |
Definition at line 335 of file Intrepid2_OrientationToolsDefModifyBasis.hpp.
template<typename DT >
template<typename outputValueType , class... outputProperties, typename inputValueType , class... inputProperties, typename OrientationViewType , typename BasisTypeLeft , typename BasisTypeRight >
void Intrepid2::OrientationTools< DT >::modifyMatrixByOrientation |
( |
Kokkos::DynRankView< outputValueType, outputProperties...> |
output, |
|
|
const Kokkos::DynRankView< inputValueType, inputProperties...> |
input, |
|
|
const OrientationViewType |
orts, |
|
|
const BasisTypeLeft * |
basisLeft, |
|
|
const BasisTypeRight * |
basisRight |
|
) |
| |
|
inlinestatic |