49 (this->dof_handler->hp_capability_enabled ==
false &&
54 if (this->is_active())
59 if ((this->dof_handler->hp_capability_enabled ==
false) ||
63 (fe_index == this->active_fe_index()) ||
65 this->get_dof_values(values, interpolated_values);
71 const unsigned int dofs_per_cell = this->get_fe().n_dofs_per_cell();
72 if (dofs_per_cell == 0)
74 interpolated_values = 0;
79 this->get_dof_values(values, tmp);
82 this->dof_handler->get_fe(fe_index).n_dofs_per_cell(),
83 this->get_fe().n_dofs_per_cell());
84 this->dof_handler->get_fe(fe_index).get_interpolation_matrix(
85 this->get_fe(), interpolation);
86 interpolation.
vmult(interpolated_values, tmp);
101 Assert((this->dof_handler->hp_capability_enabled ==
false) ||
104 "You cannot call this function on non-active cells "
105 "of DoFHandler objects unless you provide an explicit "
106 "finite element index because they do not have naturally "
107 "associated finite element spaces associated: degrees "
108 "of freedom are only distributed on active cells for which "
109 "the active FE index has been set."));
112 this->get_dof_handler().get_fe(fe_index);
115 Assert(this->dof_handler !=
nullptr,
116 typename BaseClass::ExcInvalidObject());
117 Assert(interpolated_values.
size() == dofs_per_cell,
118 typename BaseClass::ExcVectorDoesNotMatch());
119 Assert(values.size() == this->dof_handler->n_dofs(),
120 typename BaseClass::ExcVectorDoesNotMatch());
133 interpolated_values = 0;
160 for (
unsigned int child = 0; child < this->n_children(); ++child)
166 this->child(child)->get_interpolated_dof_values(values,
174 for (
unsigned int i = 0; i < dofs_per_cell; ++i)
176 interpolated_values(i) += tmp2(i);
177 else if (tmp2(i) != Number())
178 interpolated_values(i) = tmp2(i);