225 HexElement_TensorData< NodeCount > tensor_data ;
229 const unsigned ipx = tensor_data.eval_map[ip][0] ;
230 const unsigned ipy = tensor_data.eval_map[ip][1] ;
231 const unsigned ipz = tensor_data.eval_map[ip][2] ;
233 weights[ip] = tensor_data.weights_1d[ ipx ] *
234 tensor_data.weights_1d[ ipy ] *
235 tensor_data.weights_1d[ ipz ] ;
239 const unsigned jfx = tensor_data.eval_map[jf][0] ;
240 const unsigned jfy = tensor_data.eval_map[jf][1] ;
241 const unsigned jfz = tensor_data.eval_map[jf][2] ;
243 values[ip][jf] = tensor_data.values_1d[ ipx ][ jfx ] *
244 tensor_data.values_1d[ ipy ][ jfy ] *
245 tensor_data.values_1d[ ipz ][ jfz ] ;
247 gradients[ip][0][jf] = tensor_data.derivs_1d[ ipx ][ jfx ] *
248 tensor_data.values_1d[ ipy ][ jfy ] *
249 tensor_data.values_1d[ ipz ][ jfz ] ;
251 gradients[ip][1][jf] = tensor_data.values_1d[ ipx ][ jfx ] *
252 tensor_data.derivs_1d[ ipy ][ jfy ] *
253 tensor_data.values_1d[ ipz ][ jfz ] ;
255 gradients[ip][2][jf] = tensor_data.values_1d[ ipx ][ jfx ] *
256 tensor_data.values_1d[ ipy ][ jfy ] *
257 tensor_data.derivs_1d[ ipz ][ jfz ] ;