120 outputValueViewType _outputValues;
121 const inputPointViewType _inputPoints;
123 const ordinal_type _order;
125 KOKKOS_INLINE_FUNCTION
126 Functor( outputValueViewType outputValues_,
127 inputPointViewType inputPoints_,
129 const ordinal_type order_ )
130 : _outputValues(outputValues_), _inputPoints(inputPoints_), _work(work_),_order(order_){}
132 KOKKOS_INLINE_FUNCTION
133 void operator()(
const size_type iter)
const {
134 const auto ptBegin = Util<ordinal_type>::min(iter*numPtsEval, _inputPoints.extent(0));
135 const auto ptEnd = Util<ordinal_type>::min(ptBegin+numPtsEval, _inputPoints.extent(0));
137 const auto ptRange = Kokkos::pair<ordinal_type,ordinal_type>(ptBegin, ptEnd);
138 const auto input = Kokkos::subview( _inputPoints, ptRange, Kokkos::ALL() );
141 case OPERATOR_VALUE : {
142 auto output = Kokkos::subview( _outputValues, Kokkos::ALL(), ptRange );
143 Serial<opType>::getValues( output, input, _work, _order );
149 const auto work = Kokkos::subview( _work, Kokkos::ALL(), ptRange, Kokkos::ALL() );
150 auto output = Kokkos::subview( _outputValues, Kokkos::ALL(), ptRange, Kokkos::ALL() );
151 Serial<opType>::getValues( output, input, work, _order);
164 auto output = Kokkos::subview( _outputValues, Kokkos::ALL(), ptRange, Kokkos::ALL() );
165 Serial<opType>::getValues( output, input, _work, _order);
169 INTREPID2_TEST_FOR_ABORT(
true,
170 ">>> ERROR: (Intrepid2::Basis_HGRAD_TET_Cn_FEM_ORTH::Functor) operator is not supported");