123 outputValueViewType _outputValues;
124 const inputPointViewType _inputPoints;
126 const ordinal_type _order;
128 KOKKOS_INLINE_FUNCTION
129 Functor( outputValueViewType outputValues_,
130 inputPointViewType inputPoints_,
132 const ordinal_type order_ )
133 : _outputValues(outputValues_), _inputPoints(inputPoints_), _work(work_),_order(order_){}
135 KOKKOS_INLINE_FUNCTION
136 void operator()(
const size_type iter)
const {
137 const auto ptBegin = Util<ordinal_type>::min(iter*numPtsEval, _inputPoints.extent(0));
138 const auto ptEnd = Util<ordinal_type>::min(ptBegin+numPtsEval, _inputPoints.extent(0));
140 const auto ptRange = Kokkos::pair<ordinal_type,ordinal_type>(ptBegin, ptEnd);
141 const auto input = Kokkos::subview( _inputPoints, ptRange, Kokkos::ALL() );
144 case OPERATOR_VALUE : {
145 auto output = Kokkos::subview( _outputValues, Kokkos::ALL(), ptRange );
146 Serial<opType>::getValues( output, input, _work, _order );
152 const auto work = Kokkos::subview( _work, Kokkos::ALL(), ptRange, Kokkos::ALL() );
153 auto output = Kokkos::subview( _outputValues, Kokkos::ALL(), ptRange, Kokkos::ALL() );
154 Serial<opType>::getValues( output, input, work, _order);
167 auto output = Kokkos::subview( _outputValues, Kokkos::ALL(), ptRange, Kokkos::ALL() );
168 Serial<opType>::getValues( output, input, _work, _order);
172 INTREPID2_TEST_FOR_ABORT(
true,
173 ">>> ERROR: (Intrepid2::Basis_HGRAD_TRI_Cn_FEM_ORTH::Functor) operator is not supported");