|
KOKKOS_INLINE_FUNCTION | F_matvecProduct (OutputViewType output_, leftInputViewType leftInput_, rightInputViewType rightInput_) |
|
KOKKOS_INLINE_FUNCTION void | operator() (const ordinal_type cl, const ordinal_type bf, const ordinal_type pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==4 &&r==4
&&hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &bf, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==4 &&r==3
&&hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &bf, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==3 &&r==4
&&hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &bf, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==3 &&r==3
&&hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &bf, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==2 &&r==4
&&hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &bf, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==2 &&r==3
&&hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &bf, const ordinal_type &pt) const |
|
KOKKOS_INLINE_FUNCTION void | operator() (const ordinal_type cl, const ordinal_type pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==4 &&r==3
&&!hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==4 &&r==2
&&!hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==3 &&r==3
&&!hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==3 &&r==2
&&!hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==2 &&r==3
&&!hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &pt) const |
|
template<ordinal_type l = leftInputRank, ordinal_type r = rightInputRank, bool hf = hasField> |
KOKKOS_FORCEINLINE_FUNCTION
std::enable_if_t< l==2 &&r==2
&&!hf, void > | apply_matvec_product (const ordinal_type &cl, const ordinal_type &pt) const |
|
template<typename OutputViewType, typename leftInputViewType, typename rightInputViewType, ordinal_type leftInputRank, ordinal_type rightInputRank, bool hasField, bool isTranspose>
struct Intrepid2::FunctorArrayTools::F_matvecProduct< OutputViewType, leftInputViewType, rightInputViewType, leftInputRank, rightInputRank, hasField, isTranspose >
Functor for matvecProduct; new version avoids both subviews and branching. See Intrepid2::ArrayTools for more.
Definition at line 648 of file Intrepid2_ArrayToolsDefTensor.hpp.