const dealii::Tensor<order,spacedim> *shape_derivative_ptr =
&shape_derivatives[snc][0];
for (unsigned int q_point=0; q_point<n_quadrature_points; ++q_point)
- derivatives[q_point][comp] += value **shape_derivative_ptr++;
+ derivatives[q_point][comp] += value *
+ typename ProductType<Number,dealii::Tensor<order,spacedim> >::type(*shape_derivative_ptr++);
}
else
for (unsigned int d=0; d<spacedim; ++d)
&shape_derivatives[shape_function_data[shape_function].
row_index[d]][0];
for (unsigned int q_point=0; q_point<n_quadrature_points; ++q_point)
- derivatives[q_point][d] += value **shape_derivative_ptr++;
+ derivatives[q_point][d] += value *
+ typename ProductType<Number,dealii::Tensor<order,spacedim> >::type(*shape_derivative_ptr++);
}
}
}
&shape_gradients[snc][0];
for (unsigned int q_point=0; q_point<n_quadrature_points; ++q_point)
symmetric_gradients[q_point] += value *
- symmetrize_single_row(comp, *shape_gradient_ptr++);
+ typename ProductType<Number,dealii::SymmetricTensor<2,spacedim> >::type (symmetrize_single_row(comp, *shape_gradient_ptr++));
}
else
for (unsigned int q_point=0; q_point<n_quadrature_points; ++q_point)
const Tensor<order,spacedim> *shape_derivative_ptr
= &shape_derivatives[shape_func][0];
for (unsigned int point=0; point<n_quadrature_points; ++point)
- derivatives[point] += value **shape_derivative_ptr++;
+ derivatives[point] += value *
+ dealii::Tensor<order,spacedim,Number>(*shape_derivative_ptr++);
}
}
if (quadrature_points_fastest)
for (unsigned int point=0; point<n_quadrature_points; ++point)
- derivatives[comp][point] += value **shape_derivative_ptr++;
+ derivatives[comp][point] += value *
+ dealii::Tensor<order,spacedim,Number>(*shape_derivative_ptr++);
else
for (unsigned int point=0; point<n_quadrature_points; ++point)
- derivatives[point][comp] += value **shape_derivative_ptr++;
+ derivatives[point][comp] += value *
+ dealii::Tensor<order,spacedim,Number>(*shape_derivative_ptr++);
}
else
for (unsigned int c=0; c<n_components; ++c)
if (quadrature_points_fastest)
for (unsigned int point=0; point<n_quadrature_points; ++point)
- derivatives[comp][point] += value **shape_derivative_ptr++;
+ derivatives[comp][point] += value *
+ dealii::Tensor<order,spacedim,Number>(*shape_derivative_ptr++);
else
for (unsigned int point=0; point<n_quadrature_points; ++point)
- derivatives[point][comp] += value **shape_derivative_ptr++;
+ derivatives[point][comp] += value *
+ dealii::Tensor<order,spacedim,Number>(*shape_derivative_ptr++);
}
}
}