* Stokes with complete Dirichlet
* boundaries for the velocities.
*/
- template <int dim>
+ template <int dim, class InVector>
static double compute_mean_value (const Mapping<dim> &mapping,
const DoFHandler<dim> &dof,
const Quadrature<dim> &quadrature,
- Vector<double> &v,
+ InVector &v,
const unsigned int component);
/**
- * Calls the @p{integrate_difference}
+ * Calls the @p{compute_mean_value}
* function, see above, with
* @p{mapping=MappingQ1<dim>()}.
*/
- template <int dim>
+ template <int dim, class InVector>
static double compute_mean_value (const DoFHandler<dim> &dof,
const Quadrature<dim> &quadrature,
- Vector<double> &v,
+ InVector &v,
const unsigned int component);
/**
-template <int dim>
+template <int dim, class InVector>
double
VectorTools::compute_mean_value (const Mapping<dim> &mapping,
const DoFHandler<dim> &dof,
const Quadrature<dim> &quadrature,
- Vector<double> &v,
+ InVector &v,
const unsigned int component)
{
Assert (component < dof.get_fe().n_components(),
};
-template <int dim>
+template <int dim, class InVector>
double
VectorTools::compute_mean_value (const DoFHandler<dim> &dof,
const Quadrature<dim> &quadrature,
- Vector<double> &v,
+ InVector &v,
const unsigned int component)
{
Assert (DEAL_II_COMPAT_MAPPING, ExcCompatibility("mapping"));
const FunctionMap<deal_II_dimension>::type &,
const Quadrature<deal_II_dimension-1>&,
std::map<unsigned int,double> &);
+
template
-double VectorTools::compute_mean_value (const Mapping<deal_II_dimension> &,
- const DoFHandler<deal_II_dimension> &,
- const Quadrature<deal_II_dimension> &,
- Vector<double> &,
+double VectorTools::compute_mean_value (const Mapping<deal_II_dimension>&,
+ const DoFHandler<deal_II_dimension>&,
+ const Quadrature<deal_II_dimension>&,
+ Vector<double>&,
const unsigned int);
template
-double VectorTools::compute_mean_value (const DoFHandler<deal_II_dimension> &,
- const Quadrature<deal_II_dimension> &,
- Vector<double> &,
+double VectorTools::compute_mean_value (const DoFHandler<deal_II_dimension>&,
+ const Quadrature<deal_II_dimension>&,
+ Vector<double>&,
+ const unsigned int);
+
+template
+double VectorTools::compute_mean_value (const Mapping<deal_II_dimension>&,
+ const DoFHandler<deal_II_dimension>&,
+ const Quadrature<deal_II_dimension>&,
+ BlockVector<double>&,
+ const unsigned int);
+template
+double VectorTools::compute_mean_value (const DoFHandler<deal_II_dimension>&,
+ const Quadrature<deal_II_dimension>&,
+ BlockVector<double>&,
+ const unsigned int);
+
+template
+double VectorTools::compute_mean_value (const Mapping<deal_II_dimension>&,
+ const DoFHandler<deal_II_dimension>&,
+ const Quadrature<deal_II_dimension>&,
+ Vector<float>&,
+ const unsigned int);
+template
+double VectorTools::compute_mean_value (const DoFHandler<deal_II_dimension>&,
+ const Quadrature<deal_II_dimension>&,
+ Vector<float>&,
const unsigned int);
+template
+double VectorTools::compute_mean_value (const Mapping<deal_II_dimension>&,
+ const DoFHandler<deal_II_dimension>&,
+ const Quadrature<deal_II_dimension>&,
+ BlockVector<float>&,
+ const unsigned int);
+template
+double VectorTools::compute_mean_value (const DoFHandler<deal_II_dimension>&,
+ const Quadrature<deal_II_dimension>&,
+ BlockVector<float>&,
+ const unsigned int);
+
+
// the following two functions are not derived from a template in 1d
// and thus need no explicit instantiation