From: kanschat Date: Mon, 28 Sep 2009 17:45:38 +0000 (+0000) Subject: allow to fill only part of a vector X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=96533b26d6c5bd2745aead2796b9a902931542ea;p=dealii-svn.git allow to fill only part of a vector git-svn-id: https://svn.dealii.org/trunk@19580 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/deal.II/include/fe/fe_values.h b/deal.II/deal.II/include/fe/fe_values.h index 60a0db72fc..9f36e97c6c 100644 --- a/deal.II/deal.II/include/fe/fe_values.h +++ b/deal.II/deal.II/include/fe/fe_values.h @@ -1995,7 +1995,7 @@ class FEValuesBase : protected FEValuesData, template void get_function_values (const InputVector& fe_function, const VectorSlice >& indices, - std::vector >& values, + VectorSlice > >& values, const bool quadrature_points_fastest) const; /** @@ -2130,7 +2130,7 @@ class FEValuesBase : protected FEValuesData, template void get_function_gradients (const InputVector& fe_function, const VectorSlice >& indices, - std::vector > >& gradients, + VectorSlice > > >& gradients, bool quadrature_points_fastest = false) const; /** @@ -2254,7 +2254,7 @@ class FEValuesBase : protected FEValuesData, void get_function_hessians ( const InputVector& fe_function, const VectorSlice >& indices, - std::vector > >& hessians, + VectorSlice > > >& hessians, bool quadrature_points_fastest = false) const; /** diff --git a/deal.II/deal.II/source/fe/fe_values.cc b/deal.II/deal.II/source/fe/fe_values.cc index 087f823d2a..b830c647ba 100644 --- a/deal.II/deal.II/source/fe/fe_values.cc +++ b/deal.II/deal.II/source/fe/fe_values.cc @@ -2350,7 +2350,7 @@ template void FEValuesBase::get_function_values ( const InputVector& fe_function, const VectorSlice >& indices, - std::vector >& values, + VectorSlice > >& values, bool quadrature_points_fastest) const { const unsigned int n_components = fe->n_components(); @@ -2666,7 +2666,7 @@ template void FEValuesBase::get_function_gradients ( const InputVector& fe_function, const VectorSlice >& indices, - std::vector > >& gradients, + VectorSlice > > >& gradients, bool quadrature_points_fastest) const { const unsigned int n_components = fe->n_components(); @@ -2957,7 +2957,7 @@ template void FEValuesBase::get_function_hessians ( const InputVector& fe_function, const VectorSlice >& indices, - std::vector > >& hessians, + VectorSlice > > >& hessians, bool quadrature_points_fastest) const { Assert (this->update_flags & update_second_derivatives, ExcAccessToUninitializedField()); diff --git a/deal.II/deal.II/source/fe/fe_values.inst.in b/deal.II/deal.II/source/fe/fe_values.inst.in index de06ad83ff..264c2e56b2 100644 --- a/deal.II/deal.II/source/fe/fe_values.inst.in +++ b/deal.II/deal.II/source/fe/fe_values.inst.in @@ -150,11 +150,11 @@ for (VEC : SERIAL_VECTORS) template void FEValuesBase::get_function_values (const VEC&, const VectorSlice >&, - std::vector > &, bool) const; + VectorSlice > >&, bool) const; template void FEValuesBase::get_function_values (const VEC&, const VectorSlice >&, - std::vector > &, bool) const; + VectorSlice > > &, bool) const; template void FEValuesBase::get_function_gradients @@ -170,7 +170,7 @@ for (VEC : SERIAL_VECTORS) template void FEValuesBase::get_function_gradients (const VEC&, const VectorSlice >&, - std::vector > > &, bool) const; + VectorSlice > > >&, bool) const; template void FEValuesBase::get_function_hessians @@ -186,7 +186,7 @@ for (VEC : SERIAL_VECTORS) template void FEValuesBase::get_function_hessians (const VEC&, const VectorSlice >&, - std::vector > > &, bool) const; + VectorSlice > > >&, bool) const; template void FEValuesBase::get_function_laplacians @@ -261,11 +261,11 @@ for (VEC : SERIAL_VECTORS) template void FEValuesBase::get_function_values (const VEC&, const VectorSlice >&, - std::vector > &, bool) const; + VectorSlice > >&, bool) const; template void FEValuesBase::get_function_values (const VEC&, const VectorSlice >&, - std::vector > &, bool) const; + VectorSlice > >&, bool) const; template void FEValuesBase::get_function_gradients @@ -281,7 +281,7 @@ for (VEC : SERIAL_VECTORS) template void FEValuesBase::get_function_gradients (const VEC&, const VectorSlice >&, - std::vector > > &, bool) const; + VectorSlice > > >&, bool) const; template void FEValuesBase::get_function_hessians @@ -297,7 +297,7 @@ for (VEC : SERIAL_VECTORS) template void FEValuesBase::get_function_hessians (const VEC&, const VectorSlice >&, - std::vector > > &, bool) const; + VectorSlice > > >&, bool) const; template void FEValuesBase::get_function_laplacians