48 #ifndef __INTREPID2_ORIENTATIONTOOLS_HPP__ 49 #define __INTREPID2_ORIENTATIONTOOLS_HPP__ 51 #include "Intrepid2_ConfigDefs.hpp" 55 #include "Shards_CellTopology.hpp" 56 #include "Shards_BasicTopologies.hpp" 104 #include "Teuchos_LAPACK.hpp" 128 template<
typename ValueType>
129 KOKKOS_INLINE_FUNCTION
133 const ordinal_type ort);
143 template<
typename ValueType>
144 KOKKOS_INLINE_FUNCTION
150 const ordinal_type ort);
160 template<
typename ValueType>
161 KOKKOS_INLINE_FUNCTION
167 const ordinal_type ort);
176 template<
typename outPointViewType,
177 typename refPointViewType>
181 const refPointViewType refPoints,
182 const shards::CellTopology cellTopo,
183 const ordinal_type cellOrt = 0);
192 template<
typename outPointViewType,
193 typename refPointViewType>
194 KOKKOS_INLINE_FUNCTION
197 const refPointViewType refPoints,
198 const unsigned cellTopoKey,
199 const ordinal_type cellOrt = 0);
207 template<
typename JacobianViewType>
208 KOKKOS_INLINE_FUNCTION
217 template<
typename JacobianViewType>
218 KOKKOS_INLINE_FUNCTION
227 template<
typename JacobianViewType>
228 KOKKOS_INLINE_FUNCTION
239 template<
typename JacobianViewType>
243 const shards::CellTopology cellTopo,
244 const ordinal_type cellOrt);
252 template<
typename JacobianViewType>
253 KOKKOS_INLINE_FUNCTION
256 const unsigned cellTopoKey,
257 const ordinal_type cellOrt);
267 template<
typename TanViewType,
typename ParamViewType>
268 KOKKOS_INLINE_FUNCTION
270 const ParamViewType subCellParametrization,
271 const unsigned subcellTopoKey,
272 const ordinal_type subCellOrd,
273 const ordinal_type ort);
286 template<
typename TanNormViewType,
typename ParamViewType>
287 KOKKOS_INLINE_FUNCTION
289 const ParamViewType subCellParametrization,
290 const unsigned subcellTopoKey,
291 const ordinal_type subCellOrd,
292 const ordinal_type ort);
304 template<
typename coordsViewType,
typename subcellCoordsViewType,
typename ParamViewType>
305 KOKKOS_INLINE_FUNCTION
307 const subcellCoordsViewType subCellCoords,
308 const ParamViewType subcellParametrization,
309 const unsigned subcellTopoKey,
310 const ordinal_type subCellOrd,
311 const ordinal_type ort);
328 template<
typename OutputViewType,
329 typename subcellBasisHostType,
330 typename cellBasisHostType>
334 const subcellBasisHostType& subcellBasis,
335 const cellBasisHostType& cellBasis,
336 const ordinal_type subcellId,
337 const ordinal_type subcellOrt);
349 template<
typename OutputViewType,
350 typename subcellBasisHostType,
351 typename cellBasisHostType>
355 const subcellBasisHostType& subcellBasis,
356 const cellBasisHostType& cellBasis,
357 const ordinal_type subcellId,
358 const ordinal_type subcellOrt);
371 template<
typename OutputViewType,
372 typename subcellBasisHostType,
373 typename cellBasisHostType>
377 const subcellBasisHostType& subcellBasis,
378 const cellBasisHostType& cellBasis,
379 const ordinal_type subcellId,
380 const ordinal_type subcellOrt);
387 template<
typename DeviceType>
402 template<
typename BasisHostType>
409 template<
typename BasisHostType>
412 BasisHostType
const *cellBasis);
416 template<
typename BasisHostType>
419 BasisHostType
const *cellBasis);
423 template<
typename BasisHostType>
426 BasisHostType
const *cellBasis);
433 template<
typename BasisType>
447 template<
typename elemOrtValueType,
class ...elemOrtProperties,
448 typename elemNodeValueType,
class ...elemNodeProperties>
451 getOrientation(Kokkos::DynRankView<elemOrtValueType,elemOrtProperties...> elemOrts,
452 const Kokkos::DynRankView<elemNodeValueType,elemNodeProperties...> elemNodes,
453 const shards::CellTopology cellTopo);
461 template<
typename outputValueType,
class ...outputProperties,
462 typename inputValueType,
class ...inputProperties,
463 typename OrientationViewType,
468 const Kokkos::DynRankView<inputValueType, inputProperties...> input,
469 const OrientationViewType orts,
470 const BasisType * basis);
481 #include "Intrepid2_OrientationToolsDefCoeffMatrix_HCURL.hpp"
Stateless classes that act as factories for two families of hierarchical bases. HierarchicalBasisFami...
Header file for the Intrepid2::Basis_HGRAD_LINE_Cn_FEM class.
Header file for the Intrepid2::Basis_HDIV_TET_I1_FEM class.
Header file for the Intrepid2::Basis_HCURL_HEX_In_FEM class.
Header file for the Intrepid2::Basis_HDIV_HEX_I1_FEM class.
Header file for the Intrepid2::Basis_HDIV_WEDGE_I1_FEM class.
Header file for the Intrepid2::Basis_HDIV_HEX_In_FEM class.
Header function for Intrepid2::Util class and other utility functions.
Header file for the Intrepid2::Basis_HGRAD_TRI_Cn_FEM class.
Header file for the Intrepid2::Basis_HVOL_LINE_Cn_FEM class.
Header file for the Intrepid2::Basis_HDIV_QUAD_I1_FEM class.
Header file for the Intrepid2::Basis_HCURL_TET_In_FEM class.
Header file for the Intrepid2::Basis_HGRAD_TET_Cn_FEM class.
Header file for the Intrepid2::Basis_HDIV_TRI_I1_FEM class.
Header file for the Intrepid2::Basis_HDIV_QUAD_In_FEM class.
Header file for the Intrepid2::Basis_HCURL_QUAD_In_FEM class.
Header file for the Intrepid2::Basis_HDIV_TRI_In_FEM class.
Contains definitions of custom data types in Intrepid2.
Header file for the Intrepid2::Basis_HGRAD_QUAD_Cn_FEM class.
Header file for the Intrepid2::Basis_HDIV_TET_In_FEM class.
Header file for the Intrepid2::Basis_HCURL_QUAD_I1_FEM class.
Header file for the Intrepid2::Basis_HCURL_WEDGE_I1_FEM class.
Header file for the Intrepid2::Basis_HCURL_TET_I1_FEM class.
Header file for the Intrepid2::Basis_HCURL_HEX_I1_FEM class.
Header file for the Intrepid2::Basis_HCURL_TRI_I1_FEM class.
Header file for the Intrepid2::Basis_HVOL_TRI_Cn_FEM class.
Stateless class that acts as a factory for a family of nodal bases (hypercube topologies only at this...
Header file for the abstract base class Intrepid2::Basis.
Header file for the Intrepid2::Basis_HCURL_TRI_In_FEM class.
Header file for the Intrepid2::Basis_HGRAD_HEX_Cn_FEM class.