template<int dim, int spacedim>
UpdateFlags
-MappingQ1<dim,spacedim>::update_once (const UpdateFlags in) const
+MappingQ1<dim,spacedim>::update_once (const UpdateFlags) const
{
- UpdateFlags out = UpdateFlags(in & (update_transformation_values
- | update_transformation_gradients));
-
- // Shape function values
- if (in & update_quadrature_points)
- out |= update_transformation_values;
-
- // Shape function gradients
- if (in & (update_covariant_transformation
- | update_contravariant_transformation
- | update_JxW_values
- | update_boundary_forms
- | update_normal_vectors
- | update_jacobians
- | update_jacobian_grads
- | update_inverse_jacobians))
- out |= update_transformation_gradients;
-
- return out;
+ // nothing here
+ return update_default;
}
const UpdateFlags flags(data.update_flags);
- if (flags & update_transformation_values)
+ // see if we need the (transformation) shape function values
+ // and/or gradients and resize the necessary arrays
+ if (flags & update_quadrature_points)
data.shape_values.resize(data.n_shape_functions * n_q_points);
- if (flags & update_transformation_gradients)
+ if (flags & (update_covariant_transformation
+ | update_contravariant_transformation
+ | update_JxW_values
+ | update_boundary_forms
+ | update_normal_vectors
+ | update_jacobians
+ | update_jacobian_grads
+ | update_inverse_jacobians))
data.shape_derivatives.resize(data.n_shape_functions * n_q_points);
if (flags & update_covariant_transformation)
const typename dealii::MappingQ1<dim,spacedim>::InternalData &data,
std::vector<Point<spacedim> > &quadrature_points)
{
- const UpdateFlags update_flags(data.current_update_flags());
+ const UpdateFlags update_flags = data.update_each;
if (update_flags & update_quadrature_points)
{
const typename dealii::MappingQ1<dim,spacedim>::DataSetDescriptor data_set,
const typename dealii::MappingQ1<dim,spacedim>::InternalData &data)
{
- const UpdateFlags update_flags(data.current_update_flags());
+ const UpdateFlags update_flags = data.update_each;
if (update_flags & update_contravariant_transformation)
// if the current cell is just a
const typename dealii::MappingQ1<dim,spacedim>::InternalData &data,
std::vector<DerivativeForm<2,dim,spacedim> > &jacobian_grads)
{
- const UpdateFlags update_flags(data.current_update_flags());
+ const UpdateFlags update_flags = data.update_each;
if (update_flags & update_jacobian_grads)
{
const unsigned int n_q_points = jacobian_grads.size();
DataSetDescriptor::cell (),
data);
- const UpdateFlags update_flags(data.current_update_flags());
+ const UpdateFlags update_flags = data.update_each;
const std::vector<double> &weights=quadrature.get_weights();
// Multiply quadrature weights by absolute value of Jacobian determinants or
const typename dealii::MappingQ1<dim,spacedim>::InternalData &data,
internal::FEValues::MappingRelatedData<dim,spacedim> &output_data)
{
- const UpdateFlags update_flags(data.current_update_flags());
+ const UpdateFlags update_flags = data.update_each;
if (update_flags & update_boundary_forms)
{
// computed at point p.
const Quadrature<dim> point_quadrature(p);
- std_cxx11::unique_ptr<InternalData> mdata (get_data(update_transformation_values,
+ std_cxx11::unique_ptr<InternalData> mdata (get_data(update_quadrature_points | update_jacobians,
point_quadrature));
// compute the mapping support
// point initial_p_unit.
const Quadrature<dim> point_quadrature(initial_p_unit);
- UpdateFlags update_flags = update_transformation_values| update_transformation_gradients;
+ UpdateFlags update_flags = update_quadrature_points | update_jacobians;
if (spacedim>dim)
update_flags |= update_jacobian_grads;