// cell
for (unsigned int d=0; d<dim; ++d)
{
+ Assert (diff_quot2.size() + offset <=
+ diff_quot[d].size(),
+ ExcInternalError());
mapping.transform_covariant (&*diff_quot2.begin(), &*diff_quot2.end(),
diff_quot[d].begin()+offset,
mapping_internal);
data.shape_values(k,i) = fe_data.shape_values[k][i];
if (flags & update_gradients)
- mapping.transform_covariant(data.shape_gradients[k].begin(),
- data.shape_gradients[k].end(),
- fe_data.shape_gradients[k].begin(),
- mapping_data);
+ {
+ Assert (data.shape_gradients[k].size() <=
+ fe_data.shape_gradients[k].size(),
+ ExcInternalError());
+ mapping.transform_covariant(data.shape_gradients[k].begin(),
+ data.shape_gradients[k].end(),
+ fe_data.shape_gradients[k].begin(),
+ mapping_data);
+ }
}
if (flags & update_second_derivatives)
data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
if (flags & update_gradients)
- mapping.transform_covariant(data.shape_gradients[k].begin(),
- data.shape_gradients[k].end(),
- fe_data.shape_gradients[k].begin()+offset,
- mapping_data);
+ {
+ Assert (data.shape_gradients[k].size() + offset <=
+ fe_data.shape_gradients[k].size(),
+ ExcInternalError());
+ mapping.transform_covariant(data.shape_gradients[k].begin(),
+ data.shape_gradients[k].end(),
+ fe_data.shape_gradients[k].begin()+offset,
+ mapping_data);
+ };
}
if (flags & update_second_derivatives)
data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
if (flags & update_gradients)
- mapping.transform_covariant(data.shape_gradients[k].begin(),
- data.shape_gradients[k].end(),
- fe_data.shape_gradients[k].begin()+offset,
- mapping_data);
+ {
+ Assert (data.shape_gradients[k].size() + offset <=
+ fe_data.shape_gradients[k].size(),
+ ExcInternalError());
+ mapping.transform_covariant(data.shape_gradients[k].begin(),
+ data.shape_gradients[k].end(),
+ fe_data.shape_gradients[k].begin()+offset,
+ mapping_data);
+ };
}
if (flags & update_second_derivatives)
data.shape_values(k,i) = fe_data.shape_values[k][i];
if (flags & update_gradients)
- mapping.transform_covariant(data.shape_gradients[k].begin(),
- data.shape_gradients[k].end(),
- fe_data.shape_gradients[k].begin(),
- mapping_data);
+ {
+ Assert (data.shape_gradients[k].size() <=
+ fe_data.shape_gradients[k].size(),
+ ExcInternalError());
+ mapping.transform_covariant(data.shape_gradients[k].begin(),
+ data.shape_gradients[k].end(),
+ fe_data.shape_gradients[k].begin(),
+ mapping_data);
+ };
}
if (flags & update_second_derivatives)
data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
if (flags & update_gradients)
- mapping.transform_covariant(data.shape_gradients[k].begin(),
- data.shape_gradients[k].end(),
- fe_data.shape_gradients[k].begin()+offset,
- mapping_data);
+ {
+ Assert (data.shape_gradients[k].size() + offset <=
+ fe_data.shape_gradients[k].size(),
+ ExcInternalError());
+ mapping.transform_covariant(data.shape_gradients[k].begin(),
+ data.shape_gradients[k].end(),
+ fe_data.shape_gradients[k].begin()+offset,
+ mapping_data);
+ };
}
if (flags & update_second_derivatives)
data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
if (flags & update_gradients)
- mapping.transform_covariant(data.shape_gradients[k].begin(),
- data.shape_gradients[k].end(),
- fe_data.shape_gradients[k].begin()+offset,
- mapping_data);
+ {
+ Assert (data.shape_gradients[k].size() + offset <=
+ fe_data.shape_gradients[k].size(),
+ ExcInternalError());
+ mapping.transform_covariant(data.shape_gradients[k].begin(),
+ data.shape_gradients[k].end(),
+ fe_data.shape_gradients[k].begin()+offset,
+ mapping_data);
+ };
}
if (flags & update_second_derivatives)
// for (unsigned int i=0; i<quadrature.n_quadrature_points; ++i)
// data.shape_values(k,i) = fe_data.shape_values[k][i];
-// if (flags & update_gradients)
+// if (flags & update_gradients)
+// {
+// Assert (data.shape_gradients[k].size() <=
+// fe_data.shape_gradients[k].size(),
+// ExcInternalError());
+
// mapping.transform_covariant(data.shape_gradients[k],
// fe_data.shape_gradients[k],
// mapping_data, 0);
-// }
+// };
+
+// }
// if (flags & update_second_derivatives)
// compute_2nd (mapping, cell, 0, mapping_data, fe_data, data);
// data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
// if (flags & update_gradients)
+// {
+// Assert (data.shape_gradients[k].size() + offset <=
+// fe_data.shape_gradients[k].size(),
+// ExcInternalError());
// mapping.transform_covariant(data.shape_gradients[k],
// fe_data.shape_gradients[k],
// mapping_data, offset);
+// }
// }
// if (flags & update_second_derivatives)
// data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
// if (flags & update_gradients)
+// {
+// Assert (data.shape_gradients[k].size() + offset<=
+// fe_data.shape_gradients[k].size(),
+// ExcInternalError());
// mapping.transform_covariant(data.shape_gradients[k],
// fe_data.shape_gradients[k],
// mapping_data, offset);
+// };
// }
// if (flags & update_second_derivatives)
data.shape_values(k,i) = fe_data.shape_values[k][i];
if (flags & update_gradients)
- mapping.transform_covariant(data.shape_gradients[k].begin(),
- data.shape_gradients[k].end(),
- fe_data.shape_gradients[k].begin(),
- mapping_data);
+ {
+ Assert (data.shape_gradients[k].size() <=
+ fe_data.shape_gradients[k].size(),
+ ExcInternalError());
+ mapping.transform_covariant(data.shape_gradients[k].begin(),
+ data.shape_gradients[k].end(),
+ fe_data.shape_gradients[k].begin(),
+ mapping_data);
+ };
}
if (flags & update_second_derivatives)
data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
if (flags & update_gradients)
- mapping.transform_covariant(data.shape_gradients[k].begin(),
- data.shape_gradients[k].end(),
- fe_data.shape_gradients[k].begin()+offset,
- mapping_data);
+ {
+ Assert (data.shape_gradients[k].size() + offset <=
+ fe_data.shape_gradients[k].size(),
+ ExcInternalError());
+ mapping.transform_covariant(data.shape_gradients[k].begin(),
+ data.shape_gradients[k].end(),
+ fe_data.shape_gradients[k].begin()+offset,
+ mapping_data);
+ };
}
if (flags & update_second_derivatives)
data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
if (flags & update_gradients)
- mapping.transform_covariant(data.shape_gradients[k].begin(),
- data.shape_gradients[k].end(),
- fe_data.shape_gradients[k].begin()+offset,
- mapping_data);
+ {
+ Assert (data.shape_gradients[k].size() + offset <=
+ fe_data.shape_gradients[k].size(),
+ ExcInternalError());
+ mapping.transform_covariant(data.shape_gradients[k].begin(),
+ data.shape_gradients[k].end(),
+ fe_data.shape_gradients[k].begin()+offset,
+ mapping_data);
+ };
}
if (flags & update_second_derivatives)
ExcDimensionMismatch(JxW_values.size(), npts));
+ Assert (data.aux[0].size() <= data.unit_tangentials[face_no].size(),
+ ExcInternalError());
transform_contravariant(data.aux[0].begin(),
data.aux[0].end(),
data.unit_tangentials[face_no].begin(),
case 3:
{
+ Assert (face_no+GeometryInfo<dim>::faces_per_cell <
+ data.unit_tangentials.n_rows(),
+ ExcInternalError());
+ Assert (data.aux[1].size() <=
+ data.unit_tangentials[face_no+GeometryInfo<dim>::faces_per_cell].size(),
+ ExcInternalError());
transform_contravariant(data.aux[1].begin(),
data.aux[1].end(),
data.unit_tangentials[