* of the derived class was called,
* at the quadrature points.
*
+ * If the present cell is not an active
+ * one the interpolated function values
+ * are returned.
+ *
* To get values of
* multi-component elements,
* there is another
* by #fe_function# restricted to
* #cell# at the quadrature points.
*
+ * If the present cell is not an active
+ * one the interpolated function values
+ * are returned.
+ *
* The function assumes that the
* #gradients# object already has the
* right size.
* by #fe_function# restricted to
* #cell# at the quadrature points.
*
+ * If the present cell is not an active
+ * one the interpolated function values
+ * are returned.
+ *
* The function assumes that the
* #gradients# object already has the
* right size.
// get function values of dofs
// on this cell
Vector<double> dof_values (total_dofs);
- present_cell->get_dof_values (fe_function, dof_values);
+ if (present_cell->active())
+ present_cell->get_dof_values (fe_function, dof_values);
+ else
+ present_cell->get_interpolated_dof_values(fe_function, dof_values);
// initialize with zero
fill_n (values.begin(), n_quadrature_points, 0);
// get function values of dofs
// on this cell
Vector<double> dof_values (total_dofs);
- present_cell->get_dof_values (fe_function, dof_values);
-
+ if (present_cell->active())
+ present_cell->get_dof_values (fe_function, dof_values);
+ else
+ present_cell->get_interpolated_dof_values(fe_function, dof_values);
+
// initialize with zero
for (unsigned i=0;i<values.size();++i)
fill_n (values[i].begin(), values[i].size(), 0);
// get function values of dofs
// on this cell
Vector<double> dof_values (total_dofs);
- present_cell->get_dof_values (fe_function, dof_values);
+ if (present_cell->active())
+ present_cell->get_dof_values (fe_function, dof_values);
+ else
+ present_cell->get_interpolated_dof_values(fe_function, dof_values);
// initialize with zero
fill_n (gradients.begin(), n_quadrature_points, Tensor<1,dim>());
// get function values of dofs
// on this cell
Vector<double> dof_values (total_dofs);
- present_cell->get_dof_values (fe_function, dof_values);
+ if (present_cell->active())
+ present_cell->get_dof_values (fe_function, dof_values);
+ else
+ present_cell->get_interpolated_dof_values(fe_function, dof_values);
// initialize with zero
for (unsigned i=0;i<gradients.size();++i)
// get function values of dofs
// on this cell
Vector<double> dof_values (total_dofs);
- present_cell->get_dof_values (fe_function, dof_values);
+ if (present_cell->active())
+ present_cell->get_dof_values (fe_function, dof_values);
+ else
+ present_cell->get_interpolated_dof_values(fe_function, dof_values);
// initialize with zero
fill_n (second_derivatives.begin(), n_quadrature_points, Tensor<2,dim>());