43#ifndef PANZER_DOF_BASIS_TO_BASIS_IMPL_HPP
44#define PANZER_DOF_BASIS_TO_BASIS_IMPL_HPP
48#include "Intrepid2_FunctionSpaceTools.hpp"
49#include "Phalanx_DataLayout_MDALayout.hpp"
50#include "Intrepid2_Basis.hpp"
51#include "Teuchos_Assert.hpp"
56template <
typename EvalT,
typename TRAITST>
76 Kokkos::DynRankView<double,PHX::Device>intrpCoords =
77 Kokkos::DynRankView<double,PHX::Device>(
"intrpCoords",targetBasis.
cardinality(),targetBasis.
dimension());
79 targetBasis.
getIntrepid2Basis<PHX::exec_space,double,
double>()->getDofCoords(intrpCoords);
84 Kokkos::DynRankView<double,PHX::Device> basisRef =
87 sourceBasis.
getIntrepid2Basis()->getValues(basisRef, intrpCoords, Intrepid2::OPERATOR_VALUE);
93 Intrepid2::FunctionSpaceTools<PHX::exec_space>::HGRADtransformVALUE(
basis,basisRef);
100template <
typename EvalT,
typename TRAITST>
106 if(workset.num_cells>0) {
109 Intrepid2::FunctionSpaceTools<PHX::exec_space>::evaluate(
dof_target_coeff.get_view(),
void evaluateFields(typename TRAITST::EvalData workset)
PHX::MDField< const ScalarT > dof_source_coeff
Dependent field: DOF coefficient values at source basis.
DOF_BasisToBasis(const std::string &fieldName, const PureBasis &sourceBasis, const PureBasis &targetBasis)
Ctor.
Kokkos::DynRankView< double, PHX::Device > basis
Reference cell basis values at target points, replicated for each cell in workset.
PHX::MDField< ScalarT > dof_target_coeff
Evaluated field: DOF coefficient values at target basis.
Description and data layouts associated with a particular basis.
int numCells() const
Returns the number of cells in the data layouts.
Teuchos::RCP< Intrepid2::Basis< PHX::Device::execution_space, double, double > > getIntrepid2Basis() const
int cardinality() const
Returns the number of basis coefficients.
Teuchos::RCP< PHX::DataLayout > functional
<Cell,Basis> or <Cell,Basis>
int dimension() const
Returns the dimension of the basis from the topology.