From: Denis Davydov Date: Sat, 28 Feb 2015 15:19:01 +0000 (+0100) Subject: Convert FEValuesView::[Tensor|SymmetricTensor] to allow for generic types. X-Git-Tag: v8.3.0-rc1~184^2~31 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1f5aa8e98a95e829cca4553900c6fd998ffab369;p=dealii.git Convert FEValuesView::[Tensor|SymmetricTensor] to allow for generic types. --- diff --git a/include/deal.II/fe/fe_values.h b/include/deal.II/fe/fe_values.h index 45f85cabf5..fd06bafda7 100644 --- a/include/deal.II/fe/fe_values.h +++ b/include/deal.II/fe/fe_values.h @@ -917,7 +917,7 @@ namespace FEValuesViews */ template void get_function_values (const InputVector &fe_function, - std::vector &values) const; + std::vector::type> &values) const; /** * Return the divergence of the selected vector components of the finite @@ -937,7 +937,7 @@ namespace FEValuesViews */ template void get_function_divergences (const InputVector &fe_function, - std::vector &divergences) const; + std::vector::type> &divergences) const; private: /** @@ -1111,7 +1111,7 @@ namespace FEValuesViews */ template void get_function_values (const InputVector &fe_function, - std::vector &values) const; + std::vector::type> &values) const; /** @@ -1132,7 +1132,7 @@ namespace FEValuesViews */ template void get_function_divergences (const InputVector &fe_function, - std::vector &divergences) const; + std::vector::type> &divergences) const; private: /** diff --git a/source/fe/fe_values.cc b/source/fe/fe_values.cc index f3f3a515a3..2f47694843 100644 --- a/source/fe/fe_values.cc +++ b/source/fe/fe_values.cc @@ -1530,7 +1530,7 @@ namespace FEValuesViews void SymmetricTensor<2, dim, spacedim>:: get_function_values(const InputVector &fe_function, - std::vector &values) const + std::vector::type> &values) const { typedef FEValuesBase FVB; Assert(fe_values.update_flags & update_values, @@ -1541,7 +1541,7 @@ namespace FEValuesViews fe_values.present_cell->n_dofs_for_dof_handler()); // get function values of dofs on this cell - dealii::Vector dof_values(fe_values.dofs_per_cell); + dealii::Vector dof_values(fe_values.dofs_per_cell); fe_values.present_cell->get_interpolated_dof_values(fe_function, dof_values); internal::do_function_values (dof_values, fe_values.shape_values, shape_function_data, values); @@ -1554,7 +1554,7 @@ namespace FEValuesViews void SymmetricTensor<2, dim, spacedim>:: get_function_divergences(const InputVector &fe_function, - std::vector &divergences) const + std::vector::type> &divergences) const { typedef FEValuesBase FVB; Assert(fe_values.update_flags & update_gradients, @@ -1566,7 +1566,7 @@ namespace FEValuesViews // get function values of dofs // on this cell - dealii::Vector dof_values(fe_values.dofs_per_cell); + dealii::Vector dof_values(fe_values.dofs_per_cell); fe_values.present_cell->get_interpolated_dof_values(fe_function, dof_values); internal::do_function_divergences (dof_values, fe_values.shape_gradients, shape_function_data, divergences); @@ -1577,7 +1577,7 @@ namespace FEValuesViews void Tensor<2, dim, spacedim>:: get_function_values(const InputVector &fe_function, - std::vector &values) const + std::vector::type> &values) const { typedef FEValuesBase FVB; Assert(fe_values.update_flags & update_values, @@ -1588,7 +1588,7 @@ namespace FEValuesViews fe_values.present_cell->n_dofs_for_dof_handler()); // get function values of dofs on this cell - dealii::Vector dof_values(fe_values.dofs_per_cell); + dealii::Vector dof_values(fe_values.dofs_per_cell); fe_values.present_cell->get_interpolated_dof_values(fe_function, dof_values); internal::do_function_values (dof_values, fe_values.shape_values, shape_function_data, values); @@ -1601,7 +1601,7 @@ namespace FEValuesViews void Tensor<2, dim, spacedim>:: get_function_divergences(const InputVector &fe_function, - std::vector &divergences) const + std::vector::type> &divergences) const { typedef FEValuesBase FVB; Assert(fe_values.update_flags & update_gradients, @@ -1613,7 +1613,7 @@ namespace FEValuesViews // get function values of dofs // on this cell - dealii::Vector dof_values(fe_values.dofs_per_cell); + dealii::Vector dof_values(fe_values.dofs_per_cell); fe_values.present_cell->get_interpolated_dof_values(fe_function, dof_values); internal::do_function_divergences (dof_values, fe_values.shape_gradients, shape_function_data, divergences);