Intrepid2
Functions
Intrepid2_PyramidCoords.hpp File Reference

Defines several coordinates and their gradients on the pyramid; maps from Intrepid2 (shards) pyramid to the ESEAS pyramid and back. More...

#include <Kokkos_DynRankView.hpp>
#include <Intrepid2_config.h>

Go to the source code of this file.

Functions

template<class PointScalar >
KOKKOS_INLINE_FUNCTION void Intrepid2::affinePyramid (Kokkos::Array< PointScalar, 5 > &lambda, Kokkos::Array< Kokkos::Array< PointScalar, 3 >, 5 > &lambdaGrad, Kokkos::Array< Kokkos::Array< PointScalar, 3 >, 2 > &mu, Kokkos::Array< Kokkos::Array< Kokkos::Array< PointScalar, 3 >, 3 >, 2 > &muGrad, Kokkos::Array< Kokkos::Array< PointScalar, 2 >, 3 > &nu, Kokkos::Array< Kokkos::Array< Kokkos::Array< PointScalar, 3 >, 2 >, 3 > &nuGrad, Kokkos::Array< PointScalar, 3 > &coords)
 Compute various affine-like coordinates on the pyramid. See Fuentes et al, Appendix E.9 for definitions.
 
template<class PointScalar >
KOKKOS_INLINE_FUNCTION void Intrepid2::transformToESEASPyramid (PointScalar &x_eseas, PointScalar &y_eseas, PointScalar &z_eseas, const PointScalar &x_int2, const PointScalar &y_int2, const PointScalar &z_int2)
 Transforms from the Intrepid2 pyramid, centered at the origin with base [-1,1]^2 and height 1, to ESEAS pyramid, with base [0,1]^2, height 1, with its top vertex at (0,0,1).
 
template<class OutputScalar >
KOKKOS_INLINE_FUNCTION void Intrepid2::transformFromESEASPyramidGradient (OutputScalar &dx_int2, OutputScalar &dy_int2, OutputScalar &dz_int2, const OutputScalar &dx_eseas, const OutputScalar &dy_eseas, const OutputScalar &dz_eseas)
 Transforms gradients computed on the ESEAS pyramid to gradients on the Intrepid2 pyramid.
 

Detailed Description

Defines several coordinates and their gradients on the pyramid; maps from Intrepid2 (shards) pyramid to the ESEAS pyramid and back.

Author
Created by N.V. Roberts.

Definition in file Intrepid2_PyramidCoords.hpp.

Function Documentation

◆ affinePyramid()

template<class PointScalar >
KOKKOS_INLINE_FUNCTION void Intrepid2::affinePyramid ( Kokkos::Array< PointScalar, 5 > &  lambda,
Kokkos::Array< Kokkos::Array< PointScalar, 3 >, 5 > &  lambdaGrad,
Kokkos::Array< Kokkos::Array< PointScalar, 3 >, 2 > &  mu,
Kokkos::Array< Kokkos::Array< Kokkos::Array< PointScalar, 3 >, 3 >, 2 > &  muGrad,
Kokkos::Array< Kokkos::Array< PointScalar, 2 >, 3 > &  nu,
Kokkos::Array< Kokkos::Array< Kokkos::Array< PointScalar, 3 >, 2 >, 3 > &  nuGrad,
Kokkos::Array< PointScalar, 3 > &  coords 
)

Compute various affine-like coordinates on the pyramid. See Fuentes et al, Appendix E.9 for definitions.

Definition at line 27 of file Intrepid2_PyramidCoords.hpp.

References Intrepid2::affinePyramid().

Referenced by Intrepid2::affinePyramid().

◆ transformFromESEASPyramidGradient()

template<class OutputScalar >
KOKKOS_INLINE_FUNCTION void Intrepid2::transformFromESEASPyramidGradient ( OutputScalar &  dx_int2,
OutputScalar &  dy_int2,
OutputScalar &  dz_int2,
const OutputScalar &  dx_eseas,
const OutputScalar &  dy_eseas,
const OutputScalar &  dz_eseas 
)

Transforms gradients computed on the ESEAS pyramid to gradients on the Intrepid2 pyramid.

Definition at line 138 of file Intrepid2_PyramidCoords.hpp.

References Intrepid2::transformFromESEASPyramidGradient().

Referenced by Intrepid2::transformFromESEASPyramidGradient().

◆ transformToESEASPyramid()

template<class PointScalar >
KOKKOS_INLINE_FUNCTION void Intrepid2::transformToESEASPyramid ( PointScalar &  x_eseas,
PointScalar &  y_eseas,
PointScalar &  z_eseas,
const PointScalar &  x_int2,
const PointScalar &  y_int2,
const PointScalar &  z_int2 
)

Transforms from the Intrepid2 pyramid, centered at the origin with base [-1,1]^2 and height 1, to ESEAS pyramid, with base [0,1]^2, height 1, with its top vertex at (0,0,1).

Definition at line 127 of file Intrepid2_PyramidCoords.hpp.

References Intrepid2::transformToESEASPyramid().

Referenced by Intrepid2::transformToESEASPyramid().