From: Matthias Maier Date: Sun, 27 May 2018 09:30:37 +0000 (-0500) Subject: reindent all .inst.in files X-Git-Tag: v9.1.0-rc1~1092^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=eb2831e836f6e1eaebb77fe85dbe5d45955a94f2;p=dealii.git reindent all .inst.in files --- diff --git a/source/base/bounding_box.inst.in b/source/base/bounding_box.inst.in index 20af0a28a3..beeca0ea6b 100644 --- a/source/base/bounding_box.inst.in +++ b/source/base/bounding_box.inst.in @@ -15,7 +15,6 @@ for (deal_II_dimension : SPACE_DIMENSIONS; number : REAL_SCALARS) -{ - template - class BoundingBox; -} + { + template class BoundingBox; + } diff --git a/source/base/data_out_base.inst.in b/source/base/data_out_base.inst.in index aec7600b34..c137eaddf9 100644 --- a/source/base/data_out_base.inst.in +++ b/source/base/data_out_base.inst.in @@ -14,144 +14,172 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : OUTPUT_DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : OUTPUT_DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class DataOutInterface; template class DataOutReader; namespace DataOutBase \{ - template struct Patch; + template struct Patch; - template - std::ostream & - operator << (std::ostream &out, - const Patch &patch); + template std::ostream & + operator<<( + std::ostream & out, + const Patch &patch); - template - std::istream & - operator >> (std::istream &in, + template std::istream & + operator>>(std::istream & in, Patch &patch); - template - void - write_vtk (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const VtkFlags &flags, - std::ostream &out); - - template - void - write_vtu (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const VtkFlags &flags, - std::ostream &out); - - template - void - write_ucd (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const UcdFlags &flags, - std::ostream &out); - - template - void - write_dx (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const DXFlags &flags, - std::ostream &out); - - template - void - write_gnuplot (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const GnuplotFlags &flags, - std::ostream &out); - - template - void - write_povray (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const PovrayFlags &flags, - std::ostream &out); - - template - void - write_eps (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const EpsFlags &flags, - std::ostream &out); - - template - void - write_gmv (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const GmvFlags &flags, - std::ostream &out); - - template - void - write_tecplot (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const TecplotFlags &flags, - std::ostream &out); - - template - void - write_tecplot_binary (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const TecplotFlags &flags, - std::ostream &out); - -#if deal_II_space_dimension >1 - template - void - write_svg (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const SvgFlags &flags, - std::ostream &out); -#endif - template - void - write_deal_II_intermediate (const std::vector > &patches, - const std::vector &data_names, - const std::vector > &vector_data_ranges, - const Deal_II_IntermediateFlags &flags, - std::ostream &out); - - template - void - write_hdf5_parallel (const std::vector > &patches, - const DataOutFilter &data_filter, - const std::string &filename, - MPI_Comm comm); - - template - void - write_filtered_data (const std::vector > &, - const std::vector &, - const std::vector > &, - DataOutBase::DataOutFilter &); + template void + write_vtk( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const VtkFlags &flags, + std::ostream & out); + + template void + write_vtu( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const VtkFlags &flags, + std::ostream & out); + + template void + write_ucd( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const UcdFlags &flags, + std::ostream & out); + + template void + write_dx( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const DXFlags &flags, + std::ostream & out); + + template void + write_gnuplot( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const GnuplotFlags &flags, + std::ostream & out); + + template void + write_povray( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const PovrayFlags &flags, + std::ostream & out); + + template void + write_eps( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const EpsFlags &flags, + std::ostream & out); + + template void + write_gmv( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const GmvFlags &flags, + std::ostream & out); + + template void + write_tecplot( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const TecplotFlags &flags, + std::ostream & out); + + template void + write_tecplot_binary( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const TecplotFlags &flags, + std::ostream & out); + +# if deal_II_space_dimension > 1 + template void + write_svg( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const SvgFlags &flags, + std::ostream & out); +# endif + template void + write_deal_II_intermediate( + const std::vector> + & patches, + const std::vector &data_names, + const std::vector> + & vector_data_ranges, + const Deal_II_IntermediateFlags &flags, + std::ostream & out); + + template void + write_hdf5_parallel( + const std::vector> + & patches, + const DataOutFilter &data_filter, + const std::string & filename, + MPI_Comm comm); + + template void + write_filtered_data( + const std::vector> &, + const std::vector &, + const std::vector> + &, + DataOutBase::DataOutFilter &); \} #endif -} - -for (deal_II_dimension : OUTPUT_DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; flag_type : OUTPUT_FLAG_TYPES) -{ - template - void - DataOutInterface::set_flags (const DataOutBase::flag_type &flags); -} + } + +for (deal_II_dimension : OUTPUT_DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS; + flag_type : OUTPUT_FLAG_TYPES) + { + template void + DataOutInterface::set_flags( + const DataOutBase::flag_type &flags); + } diff --git a/source/base/function.inst.in b/source/base/function.inst.in index 8e57344466..bc688b74cf 100644 --- a/source/base/function.inst.in +++ b/source/base/function.inst.in @@ -15,7 +15,7 @@ for (S : REAL_SCALARS; dim : SPACE_DIMENSIONS) -{ + { template class Function; template class Functions::ZeroFunction; template class Functions::ConstantFunction; @@ -23,10 +23,10 @@ for (S : REAL_SCALARS; dim : SPACE_DIMENSIONS) template class ScalarFunctionFromFunctionObject; template class VectorFunctionFromScalarFunctionObject; template class VectorFunctionFromTensorFunction; -} + } for (S : COMPLEX_SCALARS; dim : SPACE_DIMENSIONS) -{ + { template class Function; template class Functions::ZeroFunction; template class Functions::ConstantFunction; @@ -34,4 +34,4 @@ for (S : COMPLEX_SCALARS; dim : SPACE_DIMENSIONS) template class ScalarFunctionFromFunctionObject; template class VectorFunctionFromScalarFunctionObject; template class VectorFunctionFromTensorFunction; -} + } diff --git a/source/base/function_time.inst.in b/source/base/function_time.inst.in index f3042f0fe3..6059e5c416 100644 --- a/source/base/function_time.inst.in +++ b/source/base/function_time.inst.in @@ -14,11 +14,11 @@ // --------------------------------------------------------------------- for (S : REAL_SCALARS) -{ + { template class FunctionTime; -} + } for (S : COMPLEX_SCALARS) -{ + { template class FunctionTime; -} + } diff --git a/source/base/geometric_utilities.inst.in b/source/base/geometric_utilities.inst.in index b59763feb8..b405bfbd23 100644 --- a/source/base/geometric_utilities.inst.in +++ b/source/base/geometric_utilities.inst.in @@ -15,7 +15,7 @@ for (dim : SPACE_DIMENSIONS) -{ - template Point from_spherical(const std::array &); - template std::array to_spherical(const Point &); -} + { + template Point from_spherical(const std::array &); + template std::array to_spherical(const Point &); + } diff --git a/source/base/mpi.inst.in b/source/base/mpi.inst.in index 704c9c780d..26b26fe852 100644 --- a/source/base/mpi.inst.in +++ b/source/base/mpi.inst.in @@ -15,42 +15,39 @@ for (S : REAL_SCALARS) -{ - template - void sum (const SparseMatrix &, const MPI_Comm &, SparseMatrix &); -} + { + template void sum( + const SparseMatrix &, const MPI_Comm &, SparseMatrix &); + } for (S : MPI_SCALARS) -{ - template - void sum > (const LAPACKFullMatrix &, const MPI_Comm &, LAPACKFullMatrix &); + { + template void sum>( + const LAPACKFullMatrix &, const MPI_Comm &, LAPACKFullMatrix &); - template - void sum > (const Vector &, const MPI_Comm &, Vector &); + template void sum>( + const Vector &, const MPI_Comm &, Vector &); - template - void sum > (const FullMatrix &, const MPI_Comm &, FullMatrix &); + template void sum>( + const FullMatrix &, const MPI_Comm &, FullMatrix &); - template - void sum (const ArrayView &, const MPI_Comm &, const ArrayView &); + template void sum( + const ArrayView &, const MPI_Comm &, const ArrayView &); - template - S sum (const S &, const MPI_Comm &); + template S sum(const S &, const MPI_Comm &); - template - void sum > (const std::vector &, const MPI_Comm &, std::vector &); + template void sum>( + const std::vector &, const MPI_Comm &, std::vector &); - template - S max (const S &, const MPI_Comm &); + template S max(const S &, const MPI_Comm &); - template - void max > (const std::vector &, const MPI_Comm &, std::vector &); + template void max>( + const std::vector &, const MPI_Comm &, std::vector &); - template - S min (const S &, const MPI_Comm &); + template S min(const S &, const MPI_Comm &); - template - void min > (const std::vector &, const MPI_Comm &, std::vector &); + template void min>( + const std::vector &, const MPI_Comm &, std::vector &); // The fixed-length array (i.e., things declared like T(&values)[N]) // versions of the functions above live in the header file mpi.h since the @@ -66,30 +63,27 @@ for (S : MPI_SCALARS) // inline it (so this instantiation is not necessary) but clang 3.8 does (so // this instantiation is necessary). Some versions of GCC (5.3 but not 4.8) // seem to inline it with the '-march=native' flag. - template - void Utilities::MPI::internal::all_reduce (const MPI_Op &, - const ArrayView &, - const MPI_Comm &, - const ArrayView &); -} + template void Utilities::MPI::internal::all_reduce( + const MPI_Op &, + const ArrayView &, + const MPI_Comm &, + const ArrayView &); + } -for (S : REAL_SCALARS; rank: RANKS; dim : SPACE_DIMENSIONS) -{ - template - Tensor - sum (const Tensor &, const MPI_Comm &); -} +for (S : REAL_SCALARS; rank : RANKS; dim : SPACE_DIMENSIONS) + { + template Tensor sum( + const Tensor &, const MPI_Comm &); + } // Recall that SymmetricTensor only makes sense for rank 2 and 4 for (S : REAL_SCALARS; dim : SPACE_DIMENSIONS) -{ - template - SymmetricTensor<2,dim,S> - sum<2,dim,S> (const SymmetricTensor<2,dim,S> &, const MPI_Comm &); - - template - SymmetricTensor<4,dim,S> - sum<4,dim,S> (const SymmetricTensor<4,dim,S> &, const MPI_Comm &); -} + { + template SymmetricTensor<2, dim, S> sum<2, dim, S>( + const SymmetricTensor<2, dim, S> &, const MPI_Comm &); + + template SymmetricTensor<4, dim, S> sum<4, dim, S>( + const SymmetricTensor<4, dim, S> &, const MPI_Comm &); + } diff --git a/source/base/partitioner.inst.in b/source/base/partitioner.inst.in index 3ebb55585c..0497a218fd 100644 --- a/source/base/partitioner.inst.in +++ b/source/base/partitioner.inst.in @@ -16,24 +16,31 @@ for (SCALAR : MPI_SCALARS) -{ + { #ifdef DEAL_II_WITH_MPI - template void Utilities::MPI::Partitioner::export_to_ghosted_array_start(const unsigned int , - const ArrayView &, - const ArrayView &, - const ArrayView &, - std::vector &) const; - template void Utilities::MPI::Partitioner::export_to_ghosted_array_finish(const ArrayView &, - std::vector &) const; - template void Utilities::MPI::Partitioner::import_from_ghosted_array_start(const VectorOperation::values , - const unsigned int , - const ArrayView &, - const ArrayView &, - std::vector &) const; - template void Utilities::MPI::Partitioner::import_from_ghosted_array_finish(const VectorOperation::values , - const ArrayView &, - const ArrayView &, - const ArrayView &, - std::vector &) const; + template void + Utilities::MPI::Partitioner::export_to_ghosted_array_start( + const unsigned int, + const ArrayView &, + const ArrayView &, + const ArrayView &, + std::vector &) const; + template void + Utilities::MPI::Partitioner::export_to_ghosted_array_finish( + const ArrayView &, std::vector &) const; + template void + Utilities::MPI::Partitioner::import_from_ghosted_array_start( + const VectorOperation::values, + const unsigned int, + const ArrayView &, + const ArrayView &, + std::vector &) const; + template void + Utilities::MPI::Partitioner::import_from_ghosted_array_finish( + const VectorOperation::values, + const ArrayView &, + const ArrayView &, + const ArrayView &, + std::vector &) const; #endif -} + } diff --git a/source/base/polynomials_rannacher_turek.inst.in b/source/base/polynomials_rannacher_turek.inst.in index b387daf328..14e4ac3ade 100644 --- a/source/base/polynomials_rannacher_turek.inst.in +++ b/source/base/polynomials_rannacher_turek.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class PolynomialsRannacherTurek; -} - + } diff --git a/source/base/symmetric_tensor.inst.in b/source/base/symmetric_tensor.inst.in index 2de2df3ef4..fbb9d78676 100644 --- a/source/base/symmetric_tensor.inst.in +++ b/source/base/symmetric_tensor.inst.in @@ -15,86 +15,73 @@ for (deal_II_dimension : DIMENSIONS; number : REAL_SCALARS) -{ - template - class SymmetricTensor<2,deal_II_dimension,number>; + { + template class SymmetricTensor<2, deal_II_dimension, number>; - template - class SymmetricTensor<4,deal_II_dimension,number>; + template class SymmetricTensor<4, deal_II_dimension, number>; - template - std::array - eigenvalues (const SymmetricTensor<2,deal_II_dimension,number> &); + template std::array eigenvalues( + const SymmetricTensor<2, deal_II_dimension, number> &); - template - std::array >,std::integral_constant::value> - eigenvectors (const SymmetricTensor<2,deal_II_dimension,number> &, - const SymmetricTensorEigenvectorMethod); -} + template std::array>, + std::integral_constant::value> + eigenvectors(const SymmetricTensor<2, deal_II_dimension, number> &, + const SymmetricTensorEigenvectorMethod); + } for (deal_II_dimension : DIMENSIONS; number : DIFFERENTIABLE_ADOLC_REAL_SCALARS) -{ - template - class SymmetricTensor<2,deal_II_dimension,number>; + { + template class SymmetricTensor<2, deal_II_dimension, number>; - template - class SymmetricTensor<4,deal_II_dimension,number>; + template class SymmetricTensor<4, deal_II_dimension, number>; - template - std::array - eigenvalues (const SymmetricTensor<2,deal_II_dimension,number> &); + template std::array eigenvalues( + const SymmetricTensor<2, deal_II_dimension, number> &); - template - std::array >,std::integral_constant::value> - eigenvectors (const SymmetricTensor<2,deal_II_dimension,number> &, - const SymmetricTensorEigenvectorMethod); -} + template std::array>, + std::integral_constant::value> + eigenvectors(const SymmetricTensor<2, deal_II_dimension, number> &, + const SymmetricTensorEigenvectorMethod); + } -for (deal_II_dimension : DIMENSIONS; number : DIFFERENTIABLE_TRILINOS_SACADO_REAL_SCALARS) -{ - template - class SymmetricTensor<2,deal_II_dimension,number>; +for (deal_II_dimension : DIMENSIONS; + number : DIFFERENTIABLE_TRILINOS_SACADO_REAL_SCALARS) + { + template class SymmetricTensor<2, deal_II_dimension, number>; - template - class SymmetricTensor<4,deal_II_dimension,number>; + template class SymmetricTensor<4, deal_II_dimension, number>; - template - std::array - eigenvalues (const SymmetricTensor<2,deal_II_dimension,number> &); + template std::array eigenvalues( + const SymmetricTensor<2, deal_II_dimension, number> &); - template - std::array >,std::integral_constant::value> - eigenvectors (const SymmetricTensor<2,deal_II_dimension,number> &, - const SymmetricTensorEigenvectorMethod); -} + template std::array>, + std::integral_constant::value> + eigenvectors(const SymmetricTensor<2, deal_II_dimension, number> &, + const SymmetricTensorEigenvectorMethod); + } for (deal_II_dimension : DIMENSIONS; number : COMPLEX_SCALARS) -{ - template - class SymmetricTensor<2,deal_II_dimension,number>; + { + template class SymmetricTensor<2, deal_II_dimension, number>; - template - class SymmetricTensor<4,deal_II_dimension,number>; -} + template class SymmetricTensor<4, deal_II_dimension, number>; + } for (number : REAL_SCALARS) -{ - template - SymmetricTensor<4,3,number> - invert (const SymmetricTensor<4,3,number> &t); -} + { + template SymmetricTensor<4, 3, number> invert( + const SymmetricTensor<4, 3, number> &t); + } for (number : DIFFERENTIABLE_ADOLC_REAL_SCALARS) -{ - template - SymmetricTensor<4,3,number> - invert (const SymmetricTensor<4,3,number> &t); -} + { + template SymmetricTensor<4, 3, number> invert( + const SymmetricTensor<4, 3, number> &t); + } for (number : DIFFERENTIABLE_TRILINOS_SACADO_REAL_SCALARS) -{ - template - SymmetricTensor<4,3,number> - invert (const SymmetricTensor<4,3,number> &t); -} + { + template SymmetricTensor<4, 3, number> invert( + const SymmetricTensor<4, 3, number> &t); + } diff --git a/source/base/tensor.inst.in b/source/base/tensor.inst.in index d4a333d3f1..961c116bf8 100644 --- a/source/base/tensor.inst.in +++ b/source/base/tensor.inst.in @@ -15,54 +15,49 @@ for (rank : RANKS; deal_II_dimension : DIMENSIONS; number : REAL_SCALARS) -{ - template - class Tensor; -} + { + template class Tensor; + } for (deal_II_dimension : DIMENSIONS; number : REAL_SCALARS) -{ - template - class Tensor<0,deal_II_dimension,number>; -} + { + template class Tensor<0, deal_II_dimension, number>; + } for (rank : RANKS; deal_II_dimension : DIMENSIONS; number : COMPLEX_SCALARS) -{ - template - class Tensor; -} + { + template class Tensor; + } for (deal_II_dimension : DIMENSIONS; number : COMPLEX_SCALARS) -{ - template - class Tensor<0,deal_II_dimension,number>; -} + { + template class Tensor<0, deal_II_dimension, number>; + } -for (rank : RANKS; deal_II_dimension : DIMENSIONS; number : DIFFERENTIABLE_ADOLC_REAL_SCALARS) -{ - template - class Tensor; -} +for (rank : RANKS; deal_II_dimension : DIMENSIONS; + number : DIFFERENTIABLE_ADOLC_REAL_SCALARS) + { + template class Tensor; + } for (deal_II_dimension : DIMENSIONS; number : DIFFERENTIABLE_ADOLC_REAL_SCALARS) -{ - template - class Tensor<0,deal_II_dimension,number>; -} - -for (rank : RANKS; deal_II_dimension : DIMENSIONS; number : DIFFERENTIABLE_TRILINOS_SACADO_REAL_SCALARS) -{ - template - class Tensor; -} - -for (deal_II_dimension : DIMENSIONS; number : DIFFERENTIABLE_TRILINOS_SACADO_REAL_SCALARS) -{ - template - class Tensor<0,deal_II_dimension,number>; -} + { + template class Tensor<0, deal_II_dimension, number>; + } + +for (rank : RANKS; deal_II_dimension : DIMENSIONS; + number : DIFFERENTIABLE_TRILINOS_SACADO_REAL_SCALARS) + { + template class Tensor; + } + +for (deal_II_dimension : DIMENSIONS; + number : DIFFERENTIABLE_TRILINOS_SACADO_REAL_SCALARS) + { + template class Tensor<0, deal_II_dimension, number>; + } diff --git a/source/base/tensor_function.inst.in b/source/base/tensor_function.inst.in index 8b8ec535f6..7f877c63a3 100644 --- a/source/base/tensor_function.inst.in +++ b/source/base/tensor_function.inst.in @@ -14,16 +14,16 @@ // --------------------------------------------------------------------- -for (S : REAL_SCALARS; rank: RANKS; dim : SPACE_DIMENSIONS) -{ +for (S : REAL_SCALARS; rank : RANKS; dim : SPACE_DIMENSIONS) + { template class TensorFunction; template class ConstantTensorFunction; template class ZeroTensorFunction; -} + } -for (S : COMPLEX_SCALARS; rank: RANKS; dim : SPACE_DIMENSIONS) -{ +for (S : COMPLEX_SCALARS; rank : RANKS; dim : SPACE_DIMENSIONS) + { template class TensorFunction; template class ConstantTensorFunction; template class ZeroTensorFunction; -} + } diff --git a/source/base/time_stepping.inst.in b/source/base/time_stepping.inst.in index 53a5816cc0..aaa7cac450 100644 --- a/source/base/time_stepping.inst.in +++ b/source/base/time_stepping.inst.in @@ -15,25 +15,25 @@ for (S : REAL_SCALARS; V : DEAL_II_VEC_TEMPLATES) -{ - template class RungeKutta >; - template class ExplicitRungeKutta >; - template class ImplicitRungeKutta >; - template class EmbeddedExplicitRungeKutta >; -} + { + template class RungeKutta>; + template class ExplicitRungeKutta>; + template class ImplicitRungeKutta>; + template class EmbeddedExplicitRungeKutta>; + } for (S : REAL_SCALARS; V : DEAL_II_VEC_TEMPLATES) -{ - template class RungeKutta >; - template class ExplicitRungeKutta >; - template class ImplicitRungeKutta >; - template class EmbeddedExplicitRungeKutta >; -} + { + template class RungeKutta>; + template class ExplicitRungeKutta>; + template class ImplicitRungeKutta>; + template class EmbeddedExplicitRungeKutta>; + } for (V : EXTERNAL_PARALLEL_VECTORS) -{ + { template class RungeKutta; template class ExplicitRungeKutta; template class ImplicitRungeKutta; template class EmbeddedExplicitRungeKutta; -} + } diff --git a/source/differentiation/ad/adolc_number_types.inst.in b/source/differentiation/ad/adolc_number_types.inst.in index 1f5795394d..d2e1b0d785 100644 --- a/source/differentiation/ad/adolc_number_types.inst.in +++ b/source/differentiation/ad/adolc_number_types.inst.in @@ -14,38 +14,38 @@ // --------------------------------------------------------------------- for (Number : DIFFERENTIABLE_ADOLC_REAL_SCALARS) -{ + { namespace Differentiation \{ - namespace AD - \{ - template struct ADNumberTraits; - \} + namespace AD + \{ + template struct ADNumberTraits; + \} \} -} + } for (Number : REAL_SCALARS) -{ + { namespace Differentiation \{ - namespace AD - \{ - template struct NumberTraits; - template struct NumberTraits; + namespace AD + \{ + template struct NumberTraits; + template struct NumberTraits; + \} \} - \} -} + } for (Number : COMPLEX_SCALARS) -{ + { namespace Differentiation \{ - namespace AD - \{ - template struct NumberTraits; - template struct NumberTraits; - \} + namespace AD + \{ + template struct NumberTraits; + template struct NumberTraits; + \} \} -} + } diff --git a/source/distributed/grid_refinement.inst.in b/source/distributed/grid_refinement.inst.in index 2ccfcba345..c62d52bc7c 100644 --- a/source/distributed/grid_refinement.inst.in +++ b/source/distributed/grid_refinement.inst.in @@ -15,33 +15,34 @@ - for (S : REAL_SCALARS; deal_II_dimension : DIMENSIONS) -{ + { namespace parallel \{ - namespace distributed - \{ - namespace GridRefinement - \{ - template - void - refine_and_coarsen_fixed_number - (parallel::distributed::Triangulation &, - const dealii::Vector &, - const double, - const double, - const unsigned int); + namespace distributed + \{ + namespace GridRefinement + \{ + template void + refine_and_coarsen_fixed_number( + parallel::distributed::Triangulation &, + const dealii::Vector &, + const double, + const double, + const unsigned int); - template - void - refine_and_coarsen_fixed_fraction - (parallel::distributed::Triangulation &, - const dealii::Vector &, - const double, - const double); - \} - \} + template void + refine_and_coarsen_fixed_fraction( + parallel::distributed::Triangulation &, + const dealii::Vector &, + const double, + const double); + \} + \} \} @@ -49,29 +50,31 @@ for (S : REAL_SCALARS; deal_II_dimension : DIMENSIONS) namespace parallel \{ - namespace distributed - \{ - namespace GridRefinement - \{ - template - void - refine_and_coarsen_fixed_number - (parallel::distributed::Triangulation &, - const dealii::Vector &, - const double, - const double, - const unsigned int); + namespace distributed + \{ + namespace GridRefinement + \{ + template void refine_and_coarsen_fixed_number( + parallel::distributed::Triangulation &, + const dealii::Vector &, + const double, + const double, + const unsigned int); - template - void - refine_and_coarsen_fixed_fraction - (parallel::distributed::Triangulation &, - const dealii::Vector &, - const double, - const double); - \} - \} + template void refine_and_coarsen_fixed_fraction( + parallel::distributed::Triangulation &, + const dealii::Vector &, + const double, + const double); + \} + \} \} #endif -} + } diff --git a/source/distributed/p4est_wrappers.inst.in b/source/distributed/p4est_wrappers.inst.in index 9d667e2618..52c02c225e 100644 --- a/source/distributed/p4est_wrappers.inst.in +++ b/source/distributed/p4est_wrappers.inst.in @@ -15,71 +15,69 @@ for (deal_II_dimension : DIMENSIONS) -{ -# ifdef DEAL_II_WITH_P4EST + { +#ifdef DEAL_II_WITH_P4EST namespace internal \{ - namespace p4est - \{ -#if deal_II_dimension > 1 + namespace p4est + \{ +# if deal_II_dimension > 1 - template - void - init_quadrant_children - (const types::quadrant & p4est_cell, - types::quadrant (&p4est_children)[GeometryInfo::max_children_per_cell]); + template void + init_quadrant_children( + const types::quadrant &p4est_cell, + types::quadrant (&p4est_children) + [GeometryInfo::max_children_per_cell]); - template - void - init_coarse_quadrant - (types::quadrant & quad); + template void + init_coarse_quadrant( + types::quadrant &quad); - template - bool - quadrant_is_equal - (const types::quadrant & q1, - const types::quadrant & q2); + template bool + quadrant_is_equal( + const types::quadrant &q1, + const types::quadrant &q2); - template - bool - quadrant_is_ancestor - (const types::quadrant & q1, - const types::quadrant & q2); + template bool + quadrant_is_ancestor( + const types::quadrant &q1, + const types::quadrant &q2); - template - bool - tree_exists_locally - (const types::forest *parallel_forest, - const types::topidx coarse_grid_cell); + template bool + tree_exists_locally( + const types::forest *parallel_forest, + const types::topidx coarse_grid_cell); -# endif - \} +# endif + \} \} -# endif // DEAL_II_WITH_P4EST -} +#endif // DEAL_II_WITH_P4EST + } for (deal_II_dimension, deal_II_space_dimension : DIMENSIONS) -{ -# ifdef DEAL_II_WITH_P4EST + { +#ifdef DEAL_II_WITH_P4EST namespace internal \{ - namespace p4est - \{ -#if deal_II_dimension > 1 -#if deal_II_space_dimension >= deal_II_dimension - template - std::map > - compute_vertices_with_ghost_neighbors(const dealii::parallel::distributed::Triangulation &tria, - typename dealii::internal::p4est::types::forest *parallel_forest, - typename dealii::internal::p4est::types::ghost *parallel_ghost); + namespace p4est + \{ +# if deal_II_dimension > 1 +# if deal_II_space_dimension >= deal_II_dimension + template std::map> + compute_vertices_with_ghost_neighbors( + const dealii::parallel::distributed:: + Triangulation &tria, + typename dealii::internal::p4est::types::forest + *parallel_forest, + typename dealii::internal::p4est::types::ghost + *parallel_ghost); -#endif -#endif +# endif +# endif + \} \} - \} -# endif // DEAL_II_WITH_P4EST -} - +#endif // DEAL_II_WITH_P4EST + } diff --git a/source/distributed/shared_tria.inst.in b/source/distributed/shared_tria.inst.in index 56f5e16491..5c24d5d265 100644 --- a/source/distributed/shared_tria.inst.in +++ b/source/distributed/shared_tria.inst.in @@ -16,19 +16,18 @@ for (deal_II_dimension : DIMENSIONS) -{ + { namespace parallel \{ - namespace shared - \{ - template class Triangulation; -# if deal_II_dimension < 3 - template class Triangulation; -# endif -# if deal_II_dimension < 2 - template class Triangulation; -# endif - \} + namespace shared + \{ + template class Triangulation; +#if deal_II_dimension < 3 + template class Triangulation; +#endif +#if deal_II_dimension < 2 + template class Triangulation; +#endif + \} \} - -} + } diff --git a/source/distributed/solution_transfer.inst.in b/source/distributed/solution_transfer.inst.in index 3b3d83082e..7058853935 100644 --- a/source/distributed/solution_transfer.inst.in +++ b/source/distributed/solution_transfer.inst.in @@ -16,33 +16,59 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ + { namespace parallel \{ - namespace distributed - \{ + namespace distributed + \{ #if deal_II_dimension <= deal_II_space_dimension - template class SolutionTransfer, DoFHandler >; - template class SolutionTransfer, DoFHandler >; - template class SolutionTransfer, DoFHandler >; - template class SolutionTransfer, DoFHandler >; - template class SolutionTransfer, DoFHandler >; + template class SolutionTransfer< + deal_II_dimension, + ::dealii::Vector, + DoFHandler>; + template class SolutionTransfer< + deal_II_dimension, + ::dealii::LinearAlgebra::distributed::Vector, + DoFHandler>; + template class SolutionTransfer< + deal_II_dimension, + ::dealii::LinearAlgebra::distributed::Vector, + DoFHandler>; + template class SolutionTransfer< + deal_II_dimension, + ::dealii::LinearAlgebra::distributed::BlockVector, + DoFHandler>; + template class SolutionTransfer< + deal_II_dimension, + ::dealii::LinearAlgebra::distributed::BlockVector, + DoFHandler>; -#ifdef DEAL_II_WITH_PETSC - template class SolutionTransfer >; +# ifdef DEAL_II_WITH_PETSC + template class SolutionTransfer< + deal_II_dimension, + PETScWrappers::MPI::Vector, + DoFHandler>; - template class SolutionTransfer >; -#endif + template class SolutionTransfer< + deal_II_dimension, + PETScWrappers::MPI::BlockVector, + DoFHandler>; +# endif -#ifdef DEAL_II_WITH_TRILINOS - template class SolutionTransfer >; +# ifdef DEAL_II_WITH_TRILINOS + template class SolutionTransfer< + deal_II_dimension, + TrilinosWrappers::MPI::Vector, + DoFHandler>; - template class SolutionTransfer >; -#endif + template class SolutionTransfer< + deal_II_dimension, + TrilinosWrappers::MPI::BlockVector, + DoFHandler>; +# endif #endif + \} \} - \} - -} + } diff --git a/source/distributed/tria.inst.in b/source/distributed/tria.inst.in index 127c144234..cdc45b5451 100644 --- a/source/distributed/tria.inst.in +++ b/source/distributed/tria.inst.in @@ -16,20 +16,18 @@ for (deal_II_dimension : DIMENSIONS) -{ + { namespace parallel \{ - namespace distributed - \{ - template class Triangulation; -# if deal_II_dimension < 3 - template class Triangulation; -# endif -# if deal_II_dimension < 2 - template class Triangulation; -# endif - \} + namespace distributed + \{ + template class Triangulation; +#if deal_II_dimension < 3 + template class Triangulation; +#endif +#if deal_II_dimension < 2 + template class Triangulation; +#endif + \} \} - -} - + } diff --git a/source/distributed/tria_base.inst.in b/source/distributed/tria_base.inst.in index de461ac058..3bff19e889 100644 --- a/source/distributed/tria_base.inst.in +++ b/source/distributed/tria_base.inst.in @@ -16,16 +16,15 @@ for (deal_II_dimension : DIMENSIONS) -{ + { namespace parallel \{ - template class Triangulation; -# if deal_II_dimension < 3 - template class Triangulation; -# endif -# if deal_II_dimension < 2 - template class Triangulation; -# endif + template class Triangulation; +#if deal_II_dimension < 3 + template class Triangulation; +#endif +#if deal_II_dimension < 2 + template class Triangulation; +#endif \} - -} + } diff --git a/source/dofs/block_info.inst.in b/source/dofs/block_info.inst.in index 0de9e8ccc7..bad77876e6 100644 --- a/source/dofs/block_info.inst.in +++ b/source/dofs/block_info.inst.in @@ -15,18 +15,21 @@ for (deal_II_dimension : DIMENSIONS) -{ - template void BlockInfo::initialize(const DoFHandler&, bool, bool); - template void BlockInfo::initialize_local(const DoFHandler&); + { + template void BlockInfo::initialize( + const DoFHandler &, bool, bool); + template void BlockInfo::initialize_local( + const DoFHandler &); #if deal_II_dimension < 3 - template void BlockInfo::initialize(const DoFHandler&, bool, bool); - template void BlockInfo::initialize_local(const DoFHandler&); + template void BlockInfo::initialize( + const DoFHandler &, bool, bool); + template void BlockInfo::initialize_local( + const DoFHandler &); #endif #if deal_II_dimension == 3 - template void BlockInfo::initialize(const DoFHandler<1,3>&, bool, bool); - template void BlockInfo::initialize_local(const DoFHandler<1,3>&); + template void BlockInfo::initialize(const DoFHandler<1, 3> &, bool, bool); + template void BlockInfo::initialize_local(const DoFHandler<1, 3> &); #endif -} - + } diff --git a/source/dofs/dof_accessor.inst.in b/source/dofs/dof_accessor.inst.in index 351fcfadc1..6dfe09d3fb 100644 --- a/source/dofs/dof_accessor.inst.in +++ b/source/dofs/dof_accessor.inst.in @@ -17,154 +17,174 @@ // TODO: This could surely be made more systematic! for (deal_II_dimension : DIMENSIONS; lda : BOOL) -{ -// explicit instantiations (for DoFHandler) + { + // explicit instantiations (for DoFHandler) #if deal_II_dimension == 2 template class DoFAccessor<1, DoFHandler<2>, lda>; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator, lda>>; #endif #if deal_II_dimension == 3 template class DoFAccessor<1, DoFHandler<3>, lda>; template class DoFAccessor<2, DoFHandler<3>, lda>; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator, lda>>; + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator, lda>>; #endif - template class DoFAccessor, lda>; + template class DoFAccessor, + lda>; template class DoFCellAccessor, lda>; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; + template class TriaRawIterator< + DoFCellAccessor, lda>>; + template class TriaIterator< + DoFCellAccessor, lda>>; + template class TriaActiveIterator< + DoFCellAccessor, lda>>; -// -------------------------------------------------------------------------- -// explicit instantiations (for hp::DoFHandler) + // -------------------------------------------------------------------------- + // explicit instantiations (for hp::DoFHandler) #if deal_II_dimension == 2 template class DoFAccessor<1, hp::DoFHandler<2>, lda>; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator, lda>>; #endif #if deal_II_dimension == 3 template class DoFAccessor<1, hp::DoFHandler<3>, lda>; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator, lda>>; template class DoFAccessor<2, hp::DoFHandler<3>, lda>; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator, lda>>; #endif - template class DoFAccessor, lda>; + template class DoFAccessor, + lda>; template class DoFCellAccessor, lda>; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; + template class TriaRawIterator< + DoFCellAccessor, lda>>; + template class TriaIterator< + DoFCellAccessor, lda>>; + template class TriaActiveIterator< + DoFCellAccessor, lda>>; -// // -------------------------------------------------------------------------- -// // explicit instantiations (for DoFHandler) + // // + // -------------------------------------------------------------------------- + // // explicit instantiations (for DoFHandler) #if deal_II_dimension == 1 - template class DoFAccessor<1, DoFHandler<1,2>, lda>; + template class DoFAccessor<1, DoFHandler<1, 2>, lda>; #endif #if deal_II_dimension == 2 - template class DoFAccessor<1, DoFHandler<2,3>, lda>; - template class DoFAccessor<2, DoFHandler<2,3>, lda>; + template class DoFAccessor<1, DoFHandler<2, 3>, lda>; + template class DoFAccessor<2, DoFHandler<2, 3>, lda>; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator, lda>>; #endif #if deal_II_dimension != 3 - template class DoFCellAccessor, lda>; - - template class - TriaRawIterator , lda> >; - template class - TriaIterator , lda> >; - template class - TriaActiveIterator, lda> >; + template class DoFCellAccessor< + DoFHandler, + lda>; + + template class TriaRawIterator< + DoFCellAccessor, + lda>>; + template class TriaIterator< + DoFCellAccessor, + lda>>; + template class TriaActiveIterator< + DoFCellAccessor, + lda>>; #endif #if deal_II_dimension == 3 - template class DoFCellAccessor, lda>; - - template class - TriaRawIterator , lda> >; - template class - TriaIterator , lda> >; - template class - TriaActiveIterator, lda> >; + template class DoFCellAccessor, lda>; + + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator, lda>>; #endif -// -------------------------------------------------------------------------- -// explicit instantiations (for hp::DoFHandler) + // -------------------------------------------------------------------------- + // explicit instantiations (for hp::DoFHandler) #if deal_II_dimension == 1 - template class DoFAccessor<1, hp::DoFHandler<1,2>, lda>; - template class DoFAccessor<1, hp::DoFHandler<1,3>, lda>; + template class DoFAccessor<1, hp::DoFHandler<1, 2>, lda>; + template class DoFAccessor<1, hp::DoFHandler<1, 3>, lda>; #endif #if deal_II_dimension == 2 - template class DoFAccessor<1, hp::DoFHandler<2,3>, lda>; - template class DoFAccessor<2, hp::DoFHandler<2,3>, lda>; + template class DoFAccessor<1, hp::DoFHandler<2, 3>, lda>; + template class DoFAccessor<2, hp::DoFHandler<2, 3>, lda>; - template class TriaRawIterator , lda> >; - template class TriaIterator , lda> >; - template class TriaActiveIterator, lda> >; + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator< + DoFAccessor<1, hp::DoFHandler<2, 3>, lda>>; #endif #if deal_II_dimension != 3 - template class DoFCellAccessor, lda>; - - template class - TriaRawIterator , lda> >; - template class - TriaIterator , lda> >; - template class - TriaActiveIterator, lda> >; + template class DoFCellAccessor< + hp::DoFHandler, + lda>; + + template class TriaRawIterator< + DoFCellAccessor, + lda>>; + template class TriaIterator< + DoFCellAccessor, + lda>>; + template class TriaActiveIterator< + DoFCellAccessor, + lda>>; #endif #if deal_II_dimension == 3 - template class DoFCellAccessor, lda>; - - template class - TriaRawIterator , lda> >; - template class - TriaIterator , lda> >; - template class - TriaActiveIterator, lda> >; -#endif -} + template class DoFCellAccessor, lda>; -for (deal_II_struct_dimension : DIMENSIONS; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ - template class DoFInvalidAccessor; -} + template class TriaRawIterator, lda>>; + template class TriaIterator, lda>>; + template class TriaActiveIterator< + DoFCellAccessor, lda>>; +#endif + } + +for (deal_II_struct_dimension : DIMENSIONS; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : DIMENSIONS) + { + template class DoFInvalidAccessor; + } diff --git a/source/dofs/dof_accessor_get.inst.in b/source/dofs/dof_accessor_get.inst.in index edb03005d7..0d18af677d 100644 --- a/source/dofs/dof_accessor_get.inst.in +++ b/source/dofs/dof_accessor_get.inst.in @@ -16,62 +16,56 @@ for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; lda : BOOL) -{ - template - void - DoFCellAccessor, lda>::get_interpolated_dof_values - (const VEC&, Vector&, - const unsigned int fe_index) const; + { + template void DoFCellAccessor, lda>:: + get_interpolated_dof_values( + const VEC &, Vector &, const unsigned int fe_index) + const; #if deal_II_dimension != 3 - template - void - DoFCellAccessor, lda>::get_interpolated_dof_values - (const VEC&, Vector&, - const unsigned int fe_index) const; + template void DoFCellAccessor< + DoFHandler, + lda>::get_interpolated_dof_values(const VEC &, + Vector &, + const unsigned int fe_index) const; #endif #if deal_II_dimension == 3 - template - void - DoFCellAccessor, lda>::get_interpolated_dof_values - (const VEC&, Vector&, - const unsigned int fe_index) const; + template void + DoFCellAccessor, lda>::get_interpolated_dof_values( + const VEC &, Vector &, const unsigned int fe_index) + const; #endif - -} + } for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; lda : BOOL) -{ - template - void - DoFCellAccessor, lda>::get_interpolated_dof_values - (const VEC&, Vector&, - const unsigned int fe_index) const; + { + template void DoFCellAccessor, lda>:: + get_interpolated_dof_values( + const VEC &, Vector &, const unsigned int fe_index) + const; #if deal_II_dimension != 3 - template - void - DoFCellAccessor, lda>::get_interpolated_dof_values - (const VEC&, Vector&, - const unsigned int fe_index) const; + template void DoFCellAccessor< + hp::DoFHandler, + lda>::get_interpolated_dof_values(const VEC &, + Vector &, + const unsigned int fe_index) const; #endif #if deal_II_dimension == 3 - template - void - DoFCellAccessor, lda>::get_interpolated_dof_values - (const VEC&, Vector&, - const unsigned int fe_index) const; + template void + DoFCellAccessor, lda>::get_interpolated_dof_values( + const VEC &, Vector &, const unsigned int fe_index) + const; #endif -} - + } diff --git a/source/dofs/dof_accessor_set.inst.in b/source/dofs/dof_accessor_set.inst.in index 7e7492479a..0969b00b5b 100644 --- a/source/dofs/dof_accessor_set.inst.in +++ b/source/dofs/dof_accessor_set.inst.in @@ -16,62 +16,56 @@ for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; lda : BOOL) -{ - template - void - DoFCellAccessor, lda>::set_dof_values_by_interpolation - (const Vector&, VEC&, - const unsigned int fe_index) const; + { + template void DoFCellAccessor, lda>:: + set_dof_values_by_interpolation( + const Vector &, VEC &, const unsigned int fe_index) + const; #if deal_II_dimension != 3 - template - void - DoFCellAccessor, lda>::set_dof_values_by_interpolation - (const Vector&, VEC&, - const unsigned int fe_index) const; + template void DoFCellAccessor< + DoFHandler, + lda>::set_dof_values_by_interpolation(const Vector &, + VEC &, + const unsigned int fe_index) const; #endif #if deal_II_dimension == 3 - template - void - DoFCellAccessor, lda>::set_dof_values_by_interpolation - (const Vector&, VEC&, - const unsigned int fe_index) const; + template void + DoFCellAccessor, lda>::set_dof_values_by_interpolation( + const Vector &, VEC &, const unsigned int fe_index) + const; #endif - -} + } for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; lda : BOOL) -{ - template - void - DoFCellAccessor, lda>::set_dof_values_by_interpolation - (const Vector&, VEC&, - const unsigned int fe_index) const; + { + template void DoFCellAccessor, lda>:: + set_dof_values_by_interpolation( + const Vector &, VEC &, const unsigned int fe_index) + const; #if deal_II_dimension != 3 - template - void - DoFCellAccessor, lda>::set_dof_values_by_interpolation - (const Vector&, VEC&, - const unsigned int fe_index) const; + template void DoFCellAccessor< + hp::DoFHandler, + lda>::set_dof_values_by_interpolation(const Vector &, + VEC &, + const unsigned int fe_index) const; #endif #if deal_II_dimension == 3 - template - void - DoFCellAccessor, lda>::set_dof_values_by_interpolation - (const Vector&, VEC&, - const unsigned int fe_index) const; + template void + DoFCellAccessor, lda>::set_dof_values_by_interpolation( + const Vector &, VEC &, const unsigned int fe_index) + const; #endif -} - + } diff --git a/source/dofs/dof_handler.inst.in b/source/dofs/dof_handler.inst.in index bd86706642..a117ecc8ec 100644 --- a/source/dofs/dof_handler.inst.in +++ b/source/dofs/dof_handler.inst.in @@ -15,17 +15,23 @@ for (deal_II_dimension : DIMENSIONS) -{ + { namespace internal \{ - template const types::global_dof_index * dummy (); - template std::string policy_to_string(const dealii::internal::DoFHandlerImplementation::Policy:: - PolicyBase &); + template const types::global_dof_index * + dummy(); + template std::string + policy_to_string( + const dealii::internal::DoFHandlerImplementation::Policy:: + PolicyBase &); #if deal_II_dimension < 3 - template const types::global_dof_index * dummy (); - template std::string policy_to_string(const dealii::internal::DoFHandlerImplementation::Policy:: - PolicyBase &); + template const types::global_dof_index * + dummy(); + template std::string + policy_to_string( + const dealii::internal::DoFHandlerImplementation::Policy:: + PolicyBase &); #endif \} @@ -33,131 +39,117 @@ for (deal_II_dimension : DIMENSIONS) template class DoFHandler; #if deal_II_dimension < 3 - template class DoFHandler; + template class DoFHandler; #endif #if deal_II_dimension == 3 - template class DoFHandler<1,deal_II_dimension>; - - template - types::global_dof_index - DoFHandler<1,3>:: - get_dof_index<1> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index) const; -#endif - - template - types::global_dof_index - DoFHandler:: - get_dof_index<1> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index) const; + template class DoFHandler<1, deal_II_dimension>; -#if deal_II_dimension < 3 - template - types::global_dof_index - DoFHandler:: - get_dof_index<1> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index) const; + template types::global_dof_index DoFHandler<1, 3>::get_dof_index<1>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index) const; #endif -#if deal_II_dimension >= 2 - template - types::global_dof_index - DoFHandler:: - get_dof_index<2> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index) const; + template types::global_dof_index + DoFHandler::get_dof_index<1>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index) const; #if deal_II_dimension < 3 - template - types::global_dof_index - DoFHandler:: - get_dof_index<2> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index) const; + template types::global_dof_index + DoFHandler::get_dof_index<1>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index) const; #endif -#if deal_II_dimension >= 3 - template - types::global_dof_index - DoFHandler:: - get_dof_index<3> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index) const; -#endif +#if deal_II_dimension >= 2 + template types::global_dof_index + DoFHandler::get_dof_index<2>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index) const; + +# if deal_II_dimension < 3 + template types::global_dof_index + DoFHandler::get_dof_index<2>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index) const; +# endif + +# if deal_II_dimension >= 3 + template types::global_dof_index + DoFHandler::get_dof_index<3>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index) const; +# endif #endif - template - void - DoFHandler:: - set_dof_index<1> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index, - const types::global_dof_index global_index) const; + template void + DoFHandler::set_dof_index<1>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index, + const types::global_dof_index global_index) const; #if deal_II_dimension < 3 - template - void - DoFHandler:: - set_dof_index<1> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index, - const types::global_dof_index global_index) const; + template void + DoFHandler::set_dof_index<1>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index, + const types::global_dof_index global_index) const; #endif #if deal_II_dimension < 2 - template - void - DoFHandler:: - set_dof_index<1> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index, - const types::global_dof_index global_index) const; + template void + DoFHandler::set_dof_index<1>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index, + const types::global_dof_index global_index) const; #endif #if deal_II_dimension >= 2 - template - void - DoFHandler:: - set_dof_index<2> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index, - const types::global_dof_index global_index) const; - -#if deal_II_dimension < 3 - template - void - DoFHandler:: - set_dof_index<2> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index, - const types::global_dof_index global_index) const; -#endif - -#if deal_II_dimension >= 3 - template - void - DoFHandler:: - set_dof_index<3> (const unsigned int obj_level, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index, - const types::global_dof_index global_index) const; -#endif + template void + DoFHandler::set_dof_index<2>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index, + const types::global_dof_index global_index) const; + +# if deal_II_dimension < 3 + template void + DoFHandler::set_dof_index<2>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index, + const types::global_dof_index global_index) const; +# endif + +# if deal_II_dimension >= 3 + template void + DoFHandler::set_dof_index<3>( + const unsigned int obj_level, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index, + const types::global_dof_index global_index) const; +# endif #endif -} - + } diff --git a/source/dofs/dof_handler_policy.inst.in b/source/dofs/dof_handler_policy.inst.in index 457bd19605..2cafddd40a 100644 --- a/source/dofs/dof_handler_policy.inst.in +++ b/source/dofs/dof_handler_policy.inst.in @@ -14,27 +14,33 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension namespace internal \{ - namespace DoFHandlerImplementation - \{ - namespace Policy - \{ - template class PolicyBase; + namespace DoFHandlerImplementation + \{ + namespace Policy + \{ + template class PolicyBase; - template class Sequential >; - template class Sequential >; + template class Sequential< + dealii::DoFHandler>; + template class Sequential< + dealii::hp::DoFHandler>; - template class ParallelShared >; - template class ParallelShared >; + template class ParallelShared< + dealii::DoFHandler>; + template class ParallelShared< + dealii::hp::DoFHandler>; - template class ParallelDistributed >; - template class ParallelDistributed >; - \} - \} + template class ParallelDistributed< + dealii::DoFHandler>; + template class ParallelDistributed< + dealii::hp::DoFHandler>; + \} + \} \} #endif -} + } diff --git a/source/dofs/dof_objects.inst.in b/source/dofs/dof_objects.inst.in index 7701c32625..bc7ba4f770 100644 --- a/source/dofs/dof_objects.inst.in +++ b/source/dofs/dof_objects.inst.in @@ -16,69 +16,58 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class DoFObjects; -} + } for (deal_II_dimension, structdim : DIMENSIONS) -{ - template - types::global_dof_index - DoFObjects:: - get_dof_index (const dealii::DoFHandler &dof_handler, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index) const; + { + template types::global_dof_index DoFObjects::get_dof_index( + const dealii::DoFHandler &dof_handler, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index) const; - template - void - DoFObjects:: - set_dof_index (const dealii::DoFHandler &dof_handler, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index, - const types::global_dof_index global_index); + template void DoFObjects::set_dof_index( + const dealii::DoFHandler &dof_handler, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index, + const types::global_dof_index global_index); #if (deal_II_dimension < 3) && (structdim < 3) - template - types::global_dof_index - DoFObjects:: - get_dof_index (const dealii::DoFHandler &dof_handler, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index) const; + template types::global_dof_index DoFObjects::get_dof_index( + const dealii::DoFHandler + & dof_handler, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index) const; - template - void - DoFObjects:: - set_dof_index (const dealii::DoFHandler &dof_handler, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index, - const types::global_dof_index global_index); + template void DoFObjects::set_dof_index( + const dealii::DoFHandler + & dof_handler, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index, + const types::global_dof_index global_index); #endif #if (deal_II_dimension == 3) && (structdim < 3) - template - types::global_dof_index - DoFObjects:: - get_dof_index (const dealii::DoFHandler<1,3> &dof_handler, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index) const; + template types::global_dof_index DoFObjects::get_dof_index( + const dealii::DoFHandler<1, 3> &dof_handler, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index) const; - template - void - DoFObjects:: - set_dof_index (const dealii::DoFHandler<1,3> &dof_handler, - const unsigned int obj_index, - const unsigned int fe_index, - const unsigned int local_index, - const types::global_dof_index global_index); + template void DoFObjects::set_dof_index( + const dealii::DoFHandler<1, 3> &dof_handler, + const unsigned int obj_index, + const unsigned int fe_index, + const unsigned int local_index, + const types::global_dof_index global_index); #endif -} - + } diff --git a/source/dofs/dof_renumbering.inst.in b/source/dofs/dof_renumbering.inst.in index f4d2af8cdc..572fc6c171 100644 --- a/source/dofs/dof_renumbering.inst.in +++ b/source/dofs/dof_renumbering.inst.in @@ -14,316 +14,324 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension namespace DoFRenumbering \{ - namespace boost - \{ -//TODO[WB]: also implement the following boost for hp DoFHandlers etc. - \} + namespace boost + \{ + // TODO[WB]: also implement the following boost for hp DoFHandlers etc. + \} + + + // non-boost functions: + template void + Cuthill_McKee>( + DoFHandler &, + const bool, + const bool, + const std::vector &); + + template void + compute_Cuthill_McKee< + DoFHandler>( + std::vector &, + const DoFHandler &, + const bool, + const bool, + const std::vector &); + + template void + component_wise>( + DoFHandler &, + const std::vector &); + + template void + component_wise< + hp::DoFHandler>( + hp::DoFHandler &, + const std::vector &); + + template void + block_wise( + DoFHandler &); + + template void + subdomain_wise>( + DoFHandler &); + + template void + compute_subdomain_wise( + std::vector &new_dof_indices, + const DoFHandler + &dof_handler); - -// non-boost functions: - template - void Cuthill_McKee > - (DoFHandler&, - const bool, - const bool, - const std::vector&); - - template - void - compute_Cuthill_McKee > - (std::vector&, - const DoFHandler&, - const bool, - const bool, - const std::vector&); - - template - void component_wise > - (DoFHandler&, - const std::vector&); - - template - void component_wise > - (hp::DoFHandler&, - const std::vector&); - - template - void block_wise - (DoFHandler&); - - template - void subdomain_wise > - (DoFHandler &); - - template - void - compute_subdomain_wise (std::vector &new_dof_indices, - const DoFHandler &dof_handler); - - \} // namespace DoFRenumbering + \} #endif -} + } -//TODO[SP]: replace by +// TODO[SP]: replace by // where applicable and move to codimension cases above also when applicable -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension == deal_II_space_dimension namespace DoFRenumbering \{ - namespace boost - \{ -//TODO[WB]: also implement the following boost for hp DoFHandlers etc. - template - void - Cuthill_McKee (DoFHandler &, bool, bool); - - template - void - compute_Cuthill_McKee (std::vector &, - const DoFHandler &, bool, bool); - - template - void - king_ordering (DoFHandler &, bool, bool); - - template - void - compute_king_ordering (std::vector &, - const DoFHandler &, bool, bool); - - template - void - minimum_degree (DoFHandler &, bool, bool); - - template - void - compute_minimum_degree (std::vector &, - const DoFHandler &, bool, bool); - - - template - void - Cuthill_McKee (hp::DoFHandler &, bool, bool); - - template - void - compute_Cuthill_McKee (std::vector &, - const hp::DoFHandler &, bool, bool); - - template - void - king_ordering (hp::DoFHandler &, bool, bool); - - template - void - compute_king_ordering (std::vector &, - const hp::DoFHandler &, bool, bool); - - template - void - minimum_degree (hp::DoFHandler &, bool, bool); - - template - void - compute_minimum_degree (std::vector &, - const hp::DoFHandler &, bool, bool); + namespace boost + \{ + // TODO[WB]: also implement the following boost for hp DoFHandlers etc. + template void + Cuthill_McKee(DoFHandler &, bool, bool); + + template void + compute_Cuthill_McKee(std::vector &, + const DoFHandler &, + bool, + bool); + + template void + king_ordering(DoFHandler &, bool, bool); + + template void + compute_king_ordering(std::vector &, + const DoFHandler &, + bool, + bool); + + template void + minimum_degree(DoFHandler &, bool, bool); + + template void + compute_minimum_degree(std::vector &, + const DoFHandler &, + bool, + bool); + + + template void + Cuthill_McKee(hp::DoFHandler &, bool, bool); + + template void + compute_Cuthill_McKee(std::vector &, + const hp::DoFHandler &, + bool, + bool); + + template void + king_ordering(hp::DoFHandler &, bool, bool); + + template void + compute_king_ordering(std::vector &, + const hp::DoFHandler &, + bool, + bool); + + template void + minimum_degree(hp::DoFHandler &, bool, bool); + + template void + compute_minimum_degree(std::vector &, + const hp::DoFHandler &, + bool, + bool); + \} + + + // non-boost functions: + + template void + Cuthill_McKee>( + hp::DoFHandler &, + const bool, + const bool, + const std::vector &); + + template void + compute_Cuthill_McKee>( + std::vector &, + const hp::DoFHandler &, + const bool, + const bool, + const std::vector &); + + template void + component_wise(DoFHandler &, + unsigned int, + const std::vector &); + + template void + block_wise(hp::DoFHandler &); + + template void + block_wise(DoFHandler &, + unsigned int); + + template void + hierarchical(DoFHandler &); + + template void + cell_wise>( + DoFHandler &, + const std::vector::active_cell_iterator> + &); + + template void + compute_cell_wise>( + std::vector &, + std::vector &, + const DoFHandler &, + const std::vector::active_cell_iterator> + &); + + template void + cell_wise>( + DoFHandler &, + unsigned int, + const std::vector::level_cell_iterator> + &); + + template void + compute_cell_wise>( + std::vector &, + std::vector &, + const DoFHandler &, + unsigned int, + const std::vector::level_cell_iterator> + &); + + template void + compute_downstream>( + std::vector &, + std::vector &, + const DoFHandler &, + const Tensor<1, DoFHandler::space_dimension> &, + const bool); + + template void + clockwise_dg>( + DoFHandler &, + const Point &, + bool); + + template void + compute_clockwise_dg>( + std::vector &, + const DoFHandler &, + const Point &, + const bool); + + // Renumbering for hp::DoFHandler + + template void + cell_wise>( + hp::DoFHandler &, + const std::vector< + hp::DoFHandler::active_cell_iterator> &); + + template void + compute_cell_wise>( + std::vector &, + std::vector &, + const hp::DoFHandler &, + const std::vector< + hp::DoFHandler::active_cell_iterator> &); + + template void + compute_downstream>( + std::vector &, + std::vector &, + const hp::DoFHandler &, + const Tensor<1, hp::DoFHandler::space_dimension> &, + const bool); + + template void + clockwise_dg>( + hp::DoFHandler &, + const Point &, + bool); + + template void + compute_clockwise_dg>( + std::vector &, + const hp::DoFHandler &, + const Point &, + const bool); + + template void + downstream( + DoFHandler &, + const Tensor<1, DoFHandler::space_dimension> &, + const bool); + + // MG + + template void + downstream( + DoFHandler &, + const unsigned int, + const Tensor<1, DoFHandler::space_dimension> &, + const bool); + + template void + clockwise_dg(DoFHandler &, + const unsigned int, + const Point &, + bool); + + // Generic numbering schemes + + template void + random>(DoFHandler &); + + template void + compute_random>( + std::vector &, + const DoFHandler &); + + template void + sort_selected_dofs_back>( + DoFHandler &, + const std::vector &); + + template void + compute_sort_selected_dofs_back>( + std::vector &, + const DoFHandler &, + const std::vector &); + + template void + random>( + hp::DoFHandler &); + + template void + compute_random>( + std::vector &, + const hp::DoFHandler &); + + template void + sort_selected_dofs_back>( + hp::DoFHandler &, + const std::vector &); + + template void + compute_sort_selected_dofs_back>( + std::vector &, + const hp::DoFHandler &, + const std::vector &); + + + template void + subdomain_wise>( + hp::DoFHandler &); + + template void + Cuthill_McKee>( + DoFHandler &, + const unsigned int, + const bool, + const std::vector &); \} - - -// non-boost functions: - - template - void Cuthill_McKee > - (hp::DoFHandler&, - const bool, - const bool, - const std::vector&); - - template - void - compute_Cuthill_McKee > - (std::vector&, - const hp::DoFHandler&, - const bool, - const bool, - const std::vector&); - - template - void component_wise - (DoFHandler&, - unsigned int, - const std::vector&); - - template - void block_wise - (hp::DoFHandler&); - - template - void block_wise - (DoFHandler&, - unsigned int); - - template - void hierarchical - (DoFHandler&); - - template void - cell_wise > - (DoFHandler&, - const std::vector::active_cell_iterator>&); - - template void - compute_cell_wise > - (std::vector&, std::vector&, - const DoFHandler&, - const std::vector::active_cell_iterator>&); - - template void - cell_wise > - (DoFHandler&, unsigned int, - const std::vector::level_cell_iterator>&); - - template void - compute_cell_wise > - (std::vector&, std::vector&, - const DoFHandler&, unsigned int, - const std::vector::level_cell_iterator>&); - - template void - compute_downstream > - (std::vector&,std::vector&, - const DoFHandler&, const Tensor<1,DoFHandler::space_dimension>&, - const bool); - - template - void - clockwise_dg > - (DoFHandler&, const Point&, bool); - - template - void - compute_clockwise_dg > - (std::vector&, const DoFHandler&, - const Point&, const bool); - -// Renumbering for hp::DoFHandler - - template void - cell_wise > - (hp::DoFHandler&, - const std::vector::active_cell_iterator>&); - - template void - compute_cell_wise > - (std::vector&, std::vector&, - const hp::DoFHandler&, - const std::vector::active_cell_iterator>&); - - template void - compute_downstream > - (std::vector&,std::vector&, - const hp::DoFHandler&, - const Tensor<1,hp::DoFHandler::space_dimension>&, - const bool); - - template - void - clockwise_dg > - (hp::DoFHandler&, - const Point&, bool); - - template - void - compute_clockwise_dg > - (std::vector&, - const hp::DoFHandler&, - const Point&, - const bool); - - template - void downstream - (DoFHandler&, - const Tensor<1,DoFHandler::space_dimension>&, - const bool); - -// MG - - template - void downstream - (DoFHandler&, - const unsigned int, - const Tensor<1,DoFHandler::space_dimension>&, - const bool); - - template - void clockwise_dg - (DoFHandler&, - const unsigned int, - const Point&, bool); - -// Generic numbering schemes - - template - void random > - (DoFHandler &); - - template - void - compute_random > - (std::vector&, - const DoFHandler &); - - template - void sort_selected_dofs_back > - (DoFHandler &, - const std::vector &); - - template - void - compute_sort_selected_dofs_back > - (std::vector&, - const DoFHandler &, - const std::vector &); - - template - void random > - (hp::DoFHandler &); - - template - void - compute_random > - (std::vector&, - const hp::DoFHandler &); - - template - void sort_selected_dofs_back > - (hp::DoFHandler &, - const std::vector &); - - template - void - compute_sort_selected_dofs_back > - (std::vector&, - const hp::DoFHandler &, - const std::vector &); - - - template - void subdomain_wise > - (hp::DoFHandler &); - - template - void Cuthill_McKee > - (DoFHandler&, - const unsigned int, - const bool, - const std::vector&); - \} // namespace DoFRenumbering #endif -} + } diff --git a/source/dofs/dof_tools.inst.in b/source/dofs/dof_tools.inst.in index b44f402495..ac454fe118 100644 --- a/source/dofs/dof_tools.inst.in +++ b/source/dofs/dof_tools.inst.in @@ -14,816 +14,716 @@ // --------------------------------------------------------------------- -for (DoFHandler : DOFHANDLER_TEMPLATES; deal_II_dimension, deal_II_space_dimension : DIMENSIONS) -{ - +for (DoFHandler : DOFHANDLER_TEMPLATES; + deal_II_dimension, deal_II_space_dimension : DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template - void - DoFTools::extract_locally_relevant_dofs > - (const DoFHandler & dof_handler, - IndexSet & dof_set); - - template - void - DoFTools::extract_locally_relevant_level_dofs > - (const DoFHandler & dof_handler, - const unsigned int level, - IndexSet & dof_set); - - template - void - DoFTools::extract_locally_owned_dofs > - (const DoFHandler & dof_handler, - IndexSet & dof_set); - - template - void - DoFTools::extract_locally_active_dofs > - (const DoFHandler & dof_handler, - IndexSet & dof_set); + template void DoFTools::extract_locally_relevant_dofs< + DoFHandler>( + const DoFHandler &dof_handler, + IndexSet & dof_set); + + template void DoFTools::extract_locally_relevant_level_dofs< + DoFHandler>( + const DoFHandler &dof_handler, + const unsigned int level, + IndexSet & dof_set); + + template void DoFTools::extract_locally_owned_dofs< + DoFHandler>( + const DoFHandler &dof_handler, + IndexSet & dof_set); + + template void DoFTools::extract_locally_active_dofs< + DoFHandler>( + const DoFHandler &dof_handler, + IndexSet & dof_set); #endif -} + } for (deal_II_dimension : DIMENSIONS) -{ - template - std::vector - DoFTools::make_vertex_patches (SparsityPattern&, const DoFHandler&, - unsigned int, bool, bool, bool, bool, bool); - - template - std::vector - DoFTools::make_vertex_patches (SparsityPattern&, const DoFHandler&, - unsigned int, const BlockMask&, bool, bool, bool, bool); - - template - void DoFTools::make_single_patch (SparsityPattern&, const DoFHandler&, - unsigned int, bool); - - template - void DoFTools::make_child_patches(SparsityPattern&, const DoFHandler&, - unsigned int, bool, bool); - -// TODO: can cleanup a bit more to fit into the scheme used above - - template - void - DoFTools::distribute_cell_to_dof_vector > - (const DoFHandler &dof_handler, - const Vector &cell_data, - Vector &dof_data, - const unsigned int component); - template - void - DoFTools::distribute_cell_to_dof_vector > - (const DoFHandler &dof_handler, - const Vector &cell_data, - Vector &dof_data, - const unsigned int component); - - template - void - DoFTools::distribute_cell_to_dof_vector > - (const hp::DoFHandler &dof_handler, - const Vector &cell_data, - Vector &dof_data, - const unsigned int component); - template - void - DoFTools::distribute_cell_to_dof_vector > - (const hp::DoFHandler &dof_handler, - const Vector &cell_data, - Vector &dof_data, - const unsigned int component); - - - - template void DoFTools::extract_level_dofs > - (const unsigned int level, - const DoFHandler&, - const ComponentMask &, - std::vector&); - - template void DoFTools::extract_level_dofs > - (const unsigned int level, - const DoFHandler&, - const BlockMask &, - std::vector&); + { + template std::vector DoFTools::make_vertex_patches( + SparsityPattern &, + const DoFHandler &, + unsigned int, + bool, + bool, + bool, + bool, + bool); + + template std::vector DoFTools::make_vertex_patches( + SparsityPattern &, + const DoFHandler &, + unsigned int, + const BlockMask &, + bool, + bool, + bool, + bool); + + template void DoFTools::make_single_patch( + SparsityPattern &, + const DoFHandler &, + unsigned int, + bool); + + template void DoFTools::make_child_patches( + SparsityPattern &, + const DoFHandler &, + unsigned int, + bool, + bool); + + // TODO: can cleanup a bit more to fit into the scheme used above + + template void + DoFTools::distribute_cell_to_dof_vector>( + const DoFHandler &dof_handler, + const Vector & cell_data, + Vector & dof_data, + const unsigned int component); + template void + DoFTools::distribute_cell_to_dof_vector>( + const DoFHandler &dof_handler, + const Vector & cell_data, + Vector & dof_data, + const unsigned int component); + + template void + DoFTools::distribute_cell_to_dof_vector>( + const hp::DoFHandler &dof_handler, + const Vector & cell_data, + Vector & dof_data, + const unsigned int component); + template void + DoFTools::distribute_cell_to_dof_vector>( + const hp::DoFHandler &dof_handler, + const Vector & cell_data, + Vector & dof_data, + const unsigned int component); + + + + template void DoFTools::extract_level_dofs>( + const unsigned int level, + const DoFHandler &, + const ComponentMask &, + std::vector &); + + template void DoFTools::extract_level_dofs>( + const unsigned int level, + const DoFHandler &, + const BlockMask &, + std::vector &); #if deal_II_dimension > 1 - template void DoFTools::extract_level_dofs > - (const unsigned int level, - const DoFHandler<1, deal_II_dimension>&, - const BlockMask &, - std::vector&); + template void + DoFTools::extract_level_dofs>( + const unsigned int level, + const DoFHandler<1, deal_II_dimension> &, + const BlockMask &, + std::vector &); #endif #if deal_II_dimension > 2 - template void DoFTools::extract_level_dofs > - (const unsigned int level, - const DoFHandler<2, deal_II_dimension>&, - const BlockMask &, - std::vector&); + template void + DoFTools::extract_level_dofs>( + const unsigned int level, + const DoFHandler<2, deal_II_dimension> &, + const BlockMask &, + std::vector &); #endif - template - void - DoFTools::extract_boundary_dofs > - (const DoFHandler &, - const ComponentMask &, - std::vector &, - const std::set &); - - template - void - DoFTools::extract_boundary_dofs > - (const hp::DoFHandler &, - const ComponentMask &, - std::vector &, - const std::set &); - - template - void - DoFTools::extract_boundary_dofs > - (const DoFHandler &, - const ComponentMask &, - IndexSet &, - const std::set &); - - template - void - DoFTools::extract_boundary_dofs > - (const hp::DoFHandler &, - const ComponentMask &, - IndexSet &, - const std::set &); - - template - void - DoFTools::extract_dofs_with_support_on_boundary > - (const DoFHandler &, - const ComponentMask &, - std::vector &, - const std::set &); - template - void - DoFTools::extract_dofs_with_support_on_boundary > - (const hp::DoFHandler &, - const ComponentMask &, - std::vector &, - const std::set &); - - template - IndexSet - DoFTools::extract_dofs_with_support_contained_within > - (const DoFHandler &, - const std::function< bool(const typename DoFHandler::active_cell_iterator &)> &, - const ConstraintMatrix&); - - template - void - DoFTools::extract_hanging_node_dofs - (const DoFHandler &dof_handler, - std::vector &selected_dofs); - - template - void - DoFTools::extract_subdomain_dofs > - (const DoFHandler &dof_handler, - const types::subdomain_id subdomain_id, - std::vector &selected_dofs); - template - void - DoFTools::extract_subdomain_dofs > - (const hp::DoFHandler &dof_handler, - const types::subdomain_id subdomain_id, - std::vector &selected_dofs); - - template - void - DoFTools::extract_constant_modes > - (const DoFHandler &dof_handler, - const ComponentMask &selected_components, - std::vector > &constant_modes); - - template - void - DoFTools::extract_constant_modes > - (const hp::DoFHandler &dof_handler, - const ComponentMask &selected_components, - std::vector > &constant_modes); - - template - void - DoFTools::get_active_fe_indices > - (const DoFHandler &dof_handler, - std::vector &active_fe_indices); - - template - void - DoFTools::get_active_fe_indices > - (const hp::DoFHandler &dof_handler, - std::vector &active_fe_indices); - - template - void - DoFTools::get_subdomain_association > - (const DoFHandler &dof_handler, - std::vector &subdomain_association); - template - void - DoFTools::get_subdomain_association > - (const hp::DoFHandler &dof_handler, - std::vector &subdomain_association); - - template - std::vector - DoFTools::locally_owned_dofs_per_subdomain > - (const DoFHandler &dof_handler); - template - std::vector - DoFTools::locally_owned_dofs_per_subdomain > - (const hp::DoFHandler &dof_handler); - - template - std::vector - DoFTools::locally_relevant_dofs_per_subdomain > - (const DoFHandler &dof_handler); - template - std::vector - DoFTools::locally_relevant_dofs_per_subdomain > - (const hp::DoFHandler &dof_handler); - - template - unsigned int - DoFTools::count_dofs_with_subdomain_association > - (const DoFHandler &, - const types::subdomain_id); - template - IndexSet - DoFTools::dof_indices_with_subdomain_association > - (const DoFHandler &, - const types::subdomain_id); - template - void - DoFTools::count_dofs_with_subdomain_association > - (const DoFHandler &, - const types::subdomain_id, - std::vector &); - - template - unsigned int - DoFTools::count_dofs_with_subdomain_association > - (const hp::DoFHandler &, - const types::subdomain_id); - template - IndexSet - DoFTools::dof_indices_with_subdomain_association > - (const hp::DoFHandler &, - const types::subdomain_id); - template - void - DoFTools::count_dofs_with_subdomain_association > - (const hp::DoFHandler &, - const types::subdomain_id, - std::vector &); + template void + DoFTools::extract_boundary_dofs>( + const DoFHandler &, + const ComponentMask &, + std::vector &, + const std::set &); + + template void + DoFTools::extract_boundary_dofs>( + const hp::DoFHandler &, + const ComponentMask &, + std::vector &, + const std::set &); + + template void + DoFTools::extract_boundary_dofs>( + const DoFHandler &, + const ComponentMask &, + IndexSet &, + const std::set &); + + template void + DoFTools::extract_boundary_dofs>( + const hp::DoFHandler &, + const ComponentMask &, + IndexSet &, + const std::set &); + + template void DoFTools::extract_dofs_with_support_on_boundary< + DoFHandler>(const DoFHandler &, + const ComponentMask &, + std::vector &, + const std::set &); + template void DoFTools::extract_dofs_with_support_on_boundary< + hp::DoFHandler>( + const hp::DoFHandler &, + const ComponentMask &, + std::vector &, + const std::set &); + + template IndexSet DoFTools::extract_dofs_with_support_contained_within< + DoFHandler>( + const DoFHandler &, + const std::function::active_cell_iterator &)> + &, + const ConstraintMatrix &); + + template void DoFTools::extract_hanging_node_dofs( + const DoFHandler &dof_handler, + std::vector & selected_dofs); + + template void + DoFTools::extract_subdomain_dofs>( + const DoFHandler &dof_handler, + const types::subdomain_id subdomain_id, + std::vector & selected_dofs); + template void + DoFTools::extract_subdomain_dofs>( + const hp::DoFHandler &dof_handler, + const types::subdomain_id subdomain_id, + std::vector & selected_dofs); + + template void + DoFTools::extract_constant_modes>( + const DoFHandler &dof_handler, + const ComponentMask & selected_components, + std::vector> & constant_modes); + + template void + DoFTools::extract_constant_modes>( + const hp::DoFHandler &dof_handler, + const ComponentMask & selected_components, + std::vector> & constant_modes); + + template void + DoFTools::get_active_fe_indices>( + const DoFHandler &dof_handler, + std::vector & active_fe_indices); + + template void + DoFTools::get_active_fe_indices>( + const hp::DoFHandler &dof_handler, + std::vector & active_fe_indices); + + template void + DoFTools::get_subdomain_association>( + const DoFHandler &dof_handler, + std::vector & subdomain_association); + template void + DoFTools::get_subdomain_association>( + const hp::DoFHandler &dof_handler, + std::vector & subdomain_association); + + template std::vector + DoFTools::locally_owned_dofs_per_subdomain>( + const DoFHandler &dof_handler); + template std::vector DoFTools::locally_owned_dofs_per_subdomain< + hp::DoFHandler>( + const hp::DoFHandler &dof_handler); + + template std::vector DoFTools:: + locally_relevant_dofs_per_subdomain>( + const DoFHandler &dof_handler); + template std::vector DoFTools:: + locally_relevant_dofs_per_subdomain>( + const hp::DoFHandler &dof_handler); + + template unsigned int DoFTools::count_dofs_with_subdomain_association< + DoFHandler>(const DoFHandler &, + const types::subdomain_id); + template IndexSet DoFTools::dof_indices_with_subdomain_association< + DoFHandler>(const DoFHandler &, + const types::subdomain_id); + template void DoFTools::count_dofs_with_subdomain_association< + DoFHandler>(const DoFHandler &, + const types::subdomain_id, + std::vector &); + + template unsigned int DoFTools::count_dofs_with_subdomain_association< + hp::DoFHandler>( + const hp::DoFHandler &, const types::subdomain_id); + template IndexSet DoFTools::dof_indices_with_subdomain_association< + hp::DoFHandler>( + const hp::DoFHandler &, const types::subdomain_id); + template void DoFTools::count_dofs_with_subdomain_association< + hp::DoFHandler>( + const hp::DoFHandler &, + const types::subdomain_id, + std::vector &); #if deal_II_dimension < 3 - template - void - DoFTools::extract_boundary_dofs > - (const DoFHandler &, - const ComponentMask &, - std::vector &, - const std::set &); - - template - void - DoFTools::extract_boundary_dofs > - (const DoFHandler &, - const ComponentMask &, - IndexSet &, - const std::set &); - - template - unsigned int - DoFTools::count_dofs_with_subdomain_association > - (const DoFHandler &, - const types::subdomain_id); - - template - IndexSet - DoFTools::dof_indices_with_subdomain_association > - (const DoFHandler &, - const types::subdomain_id); - template - void - DoFTools::count_dofs_with_subdomain_association > - (const DoFHandler &, - const types::subdomain_id, - std::vector &); - - template - unsigned int - DoFTools::count_dofs_with_subdomain_association > - (const hp::DoFHandler &, - const types::subdomain_id); - - template - IndexSet - DoFTools::dof_indices_with_subdomain_association > - (const hp::DoFHandler &, - const types::subdomain_id); - - template - void - DoFTools::get_subdomain_association > - (const DoFHandler &dof_handler, - std::vector &subdomain_association); - template - void - DoFTools::get_subdomain_association > - (const hp::DoFHandler &dof_handler, - std::vector &subdomain_association); - - template - std::vector - DoFTools::locally_owned_dofs_per_subdomain > - (const DoFHandler &dof_handler); - template - std::vector - DoFTools::locally_owned_dofs_per_subdomain > - (const hp::DoFHandler &dof_handler); - - template - std::vector - DoFTools::locally_relevant_dofs_per_subdomain > - (const DoFHandler &dof_handler); - template - std::vector - DoFTools::locally_relevant_dofs_per_subdomain > - (const hp::DoFHandler &dof_handler); - - template - void - DoFTools::count_dofs_with_subdomain_association > - (const hp::DoFHandler &, - const types::subdomain_id, - std::vector &); + template void DoFTools::extract_boundary_dofs< + DoFHandler>( + const DoFHandler &, + const ComponentMask &, + std::vector &, + const std::set &); + + template void DoFTools::extract_boundary_dofs< + DoFHandler>( + const DoFHandler &, + const ComponentMask &, + IndexSet &, + const std::set &); + + template unsigned int DoFTools::count_dofs_with_subdomain_association< + DoFHandler>( + const DoFHandler &, + const types::subdomain_id); + + template IndexSet DoFTools::dof_indices_with_subdomain_association< + DoFHandler>( + const DoFHandler &, + const types::subdomain_id); + template void DoFTools::count_dofs_with_subdomain_association< + DoFHandler>( + const DoFHandler &, + const types::subdomain_id, + std::vector &); + + template unsigned int DoFTools::count_dofs_with_subdomain_association< + hp::DoFHandler>( + const hp::DoFHandler &, + const types::subdomain_id); + + template IndexSet DoFTools::dof_indices_with_subdomain_association< + hp::DoFHandler>( + const hp::DoFHandler &, + const types::subdomain_id); + + template void DoFTools::get_subdomain_association< + DoFHandler>( + const DoFHandler &dof_handler, + std::vector &subdomain_association); + template void DoFTools::get_subdomain_association< + hp::DoFHandler>( + const hp::DoFHandler + & dof_handler, + std::vector &subdomain_association); + + template std::vector DoFTools::locally_owned_dofs_per_subdomain< + DoFHandler>( + const DoFHandler &dof_handler); + template std::vector DoFTools::locally_owned_dofs_per_subdomain< + hp::DoFHandler>( + const hp::DoFHandler + &dof_handler); + + template std::vector + DoFTools::locally_relevant_dofs_per_subdomain< + DoFHandler>( + const DoFHandler &dof_handler); + template std::vector + DoFTools::locally_relevant_dofs_per_subdomain< + hp::DoFHandler>( + const hp::DoFHandler + &dof_handler); + + template void DoFTools::count_dofs_with_subdomain_association< + hp::DoFHandler>( + const hp::DoFHandler &, + const types::subdomain_id, + std::vector &); #endif #if deal_II_dimension == 3 - template - void - DoFTools::extract_boundary_dofs > - (const DoFHandler<1,3> &, - const ComponentMask &, - std::vector &, - const std::set &); - - template - void - DoFTools::extract_boundary_dofs > - (const DoFHandler<1,3> &, - const ComponentMask &, - IndexSet &, - const std::set &); - - template - void - DoFTools::get_subdomain_association > - (const DoFHandler<1,3> &dof_handler, - std::vector &subdomain_association); - template - void - DoFTools::get_subdomain_association > - (const hp::DoFHandler<1,3> &dof_handler, - std::vector &subdomain_association); - - template - std::vector - DoFTools::locally_owned_dofs_per_subdomain > - (const DoFHandler<1,3> &dof_handler); - template - std::vector - DoFTools::locally_owned_dofs_per_subdomain > - (const hp::DoFHandler<1,3> &dof_handler); - - template - std::vector - DoFTools::locally_relevant_dofs_per_subdomain > - (const DoFHandler<1,3> &dof_handler); - template - std::vector - DoFTools::locally_relevant_dofs_per_subdomain > - (const hp::DoFHandler<1,3> &dof_handler); - - template - unsigned int - DoFTools::count_dofs_with_subdomain_association > - (const DoFHandler<1,3> &, - const types::subdomain_id); - template - IndexSet - DoFTools::dof_indices_with_subdomain_association > - (const DoFHandler<1,3> &, - const types::subdomain_id); - template - void - DoFTools::count_dofs_with_subdomain_association > - (const DoFHandler<1,3> &, - const types::subdomain_id, - std::vector &); - - template - unsigned int - DoFTools::count_dofs_with_subdomain_association > - (const hp::DoFHandler<1,3> &, - const types::subdomain_id); - template - IndexSet - DoFTools::dof_indices_with_subdomain_association > - (const hp::DoFHandler<1,3> &, - const types::subdomain_id); - template - void - DoFTools::count_dofs_with_subdomain_association > - (const hp::DoFHandler<1,3> &, - const types::subdomain_id, - std::vector &); + template void DoFTools::extract_boundary_dofs>( + const DoFHandler<1, 3> &, + const ComponentMask &, + std::vector &, + const std::set &); + + template void DoFTools::extract_boundary_dofs>( + const DoFHandler<1, 3> &, + const ComponentMask &, + IndexSet &, + const std::set &); + + template void DoFTools::get_subdomain_association>( + const DoFHandler<1, 3> & dof_handler, + std::vector &subdomain_association); + template void DoFTools::get_subdomain_association>( + const hp::DoFHandler<1, 3> & dof_handler, + std::vector &subdomain_association); + + template std::vector + DoFTools::locally_owned_dofs_per_subdomain>( + const DoFHandler<1, 3> &dof_handler); + template std::vector + DoFTools::locally_owned_dofs_per_subdomain>( + const hp::DoFHandler<1, 3> &dof_handler); + + template std::vector + DoFTools::locally_relevant_dofs_per_subdomain>( + const DoFHandler<1, 3> &dof_handler); + template std::vector + DoFTools::locally_relevant_dofs_per_subdomain>( + const hp::DoFHandler<1, 3> &dof_handler); + + template unsigned int + DoFTools::count_dofs_with_subdomain_association>( + const DoFHandler<1, 3> &, const types::subdomain_id); + template IndexSet + DoFTools::dof_indices_with_subdomain_association>( + const DoFHandler<1, 3> &, const types::subdomain_id); + template void + DoFTools::count_dofs_with_subdomain_association>( + const DoFHandler<1, 3> &, + const types::subdomain_id, + std::vector &); + + template unsigned int + DoFTools::count_dofs_with_subdomain_association>( + const hp::DoFHandler<1, 3> &, const types::subdomain_id); + template IndexSet + DoFTools::dof_indices_with_subdomain_association>( + const hp::DoFHandler<1, 3> &, const types::subdomain_id); + template void + DoFTools::count_dofs_with_subdomain_association>( + const hp::DoFHandler<1, 3> &, + const types::subdomain_id, + std::vector &); #endif - template - void - DoFTools::count_dofs_per_component > ( - const DoFHandler&, - std::vector&, bool, std::vector); + template void + DoFTools::count_dofs_per_component>( + const DoFHandler &, + std::vector &, + bool, + std::vector); - template - void - DoFTools::count_dofs_per_component > ( - const hp::DoFHandler&, - std::vector&, bool, std::vector); + template void + DoFTools::count_dofs_per_component>( + const hp::DoFHandler &, + std::vector &, + bool, + std::vector); #if deal_II_dimension < 3 - template - void - DoFTools::count_dofs_per_component > ( - const DoFHandler&, - std::vector&, bool, std::vector); - - template - void - DoFTools::count_dofs_per_component > ( - const hp::DoFHandler&, - std::vector&, bool, std::vector); - - template - void - DoFTools::extract_level_dofs > - (const unsigned int level, - const DoFHandler&, - const ComponentMask&, - std::vector&); + template void DoFTools::count_dofs_per_component< + DoFHandler>( + const DoFHandler &, + std::vector &, + bool, + std::vector); + + template void DoFTools::count_dofs_per_component< + hp::DoFHandler>( + const hp::DoFHandler &, + std::vector &, + bool, + std::vector); + + template void DoFTools::extract_level_dofs< + DoFHandler>( + const unsigned int level, + const DoFHandler &, + const ComponentMask &, + std::vector &); #endif #if deal_II_dimension == 3 - template - void - DoFTools::count_dofs_per_component > ( - const DoFHandler<1,3>&, - std::vector&, bool, std::vector); - - template - void - DoFTools::count_dofs_per_component > ( - const hp::DoFHandler<1,3>&, - std::vector&, bool, std::vector); - - template - void - DoFTools::extract_level_dofs > - (const unsigned int level, - const DoFHandler<1,3>&, - const ComponentMask &, - std::vector&); + template void DoFTools::count_dofs_per_component>( + const DoFHandler<1, 3> &, + std::vector &, + bool, + std::vector); + + template void DoFTools::count_dofs_per_component>( + const hp::DoFHandler<1, 3> &, + std::vector &, + bool, + std::vector); + + template void DoFTools::extract_level_dofs>( + const unsigned int level, + const DoFHandler<1, 3> &, + const ComponentMask &, + std::vector &); #endif - template - void - DoFTools::count_dofs_per_block > ( - const DoFHandler&, - std::vector&, - const std::vector &); + template void DoFTools::count_dofs_per_block>( + const DoFHandler &, + std::vector &, + const std::vector &); - template - void - DoFTools::count_dofs_per_block > ( - const hp::DoFHandler&, - std::vector&, - const std::vector &); + template void + DoFTools::count_dofs_per_block>( + const hp::DoFHandler &, + std::vector &, + const std::vector &); - template - void - DoFTools::map_dof_to_boundary_indices > - (const DoFHandler &, - const std::set &, - std::vector &); + template void + DoFTools::map_dof_to_boundary_indices>( + const DoFHandler &, + const std::set &, + std::vector &); - template - void - DoFTools::map_dof_to_boundary_indices > - (const DoFHandler &, - std::vector &); + template void + DoFTools::map_dof_to_boundary_indices>( + const DoFHandler &, + std::vector &); - template - void - DoFTools::map_dof_to_boundary_indices > - (const hp::DoFHandler &, - const std::set &, - std::vector &); + template void + DoFTools::map_dof_to_boundary_indices>( + const hp::DoFHandler &, + const std::set &, + std::vector &); - template - void - DoFTools::map_dof_to_boundary_indices > - (const hp::DoFHandler &, - std::vector &); + template void + DoFTools::map_dof_to_boundary_indices>( + const hp::DoFHandler &, + std::vector &); - template - void - DoFTools::map_dofs_to_support_points - (const Mapping&, - const DoFHandler&, - std::vector >&); + template void DoFTools::map_dofs_to_support_points( + const Mapping &, + const DoFHandler &, + std::vector> &); - template - void - DoFTools::map_dofs_to_support_points - (const hp::MappingCollection&, - const hp::DoFHandler&, - std::vector >&); + template void DoFTools::map_dofs_to_support_points( + const hp::MappingCollection &, + const hp::DoFHandler &, + std::vector> &); - template - void - DoFTools::map_dofs_to_support_points - (const Mapping&, - const DoFHandler&, - std::map >&); + template void DoFTools::map_dofs_to_support_points( + const Mapping &, + const DoFHandler &, + std::map> &); - template - void - DoFTools::map_dofs_to_support_points - (const hp::MappingCollection&, - const hp::DoFHandler&, - std::map >&); + template void DoFTools::map_dofs_to_support_points( + const hp::MappingCollection &, + const hp::DoFHandler &, + std::map> &); #if deal_II_dimension < 3 - template - void - DoFTools::map_dofs_to_support_points - (const Mapping&, - const DoFHandler&, - std::vector >&); - - template - void - DoFTools::map_dofs_to_support_points - (const hp::MappingCollection&, - const hp::DoFHandler&, - std::vector >&); - - template - void - DoFTools::map_dofs_to_support_points - (const Mapping&, - const DoFHandler&, - std::map >&); - - template - void - DoFTools::map_dofs_to_support_points - (const hp::MappingCollection&, - const hp::DoFHandler&, - std::map >&); - - - template - void - DoFTools::count_dofs_per_block > ( - const DoFHandler&, - std::vector&, - const std::vector &); - - template - void - DoFTools::count_dofs_per_block > ( - const hp::DoFHandler&, - std::vector&, - const std::vector &); + template void DoFTools::map_dofs_to_support_points( + const Mapping &, + const DoFHandler &, + std::vector> &); + + template void DoFTools::map_dofs_to_support_points( + const hp::MappingCollection &, + const hp::DoFHandler &, + std::vector> &); + + template void DoFTools::map_dofs_to_support_points( + const Mapping &, + const DoFHandler &, + std::map> &); + + template void DoFTools::map_dofs_to_support_points( + const hp::MappingCollection &, + const hp::DoFHandler &, + std::map> &); + + + template void DoFTools::count_dofs_per_block< + DoFHandler>( + const DoFHandler &, + std::vector &, + const std::vector &); + + template void DoFTools::count_dofs_per_block< + hp::DoFHandler>( + const hp::DoFHandler &, + std::vector &, + const std::vector &); #endif #if deal_II_dimension == 3 - template - void - DoFTools::map_dofs_to_support_points<1,3> - (const Mapping<1,3>&, - const DoFHandler<1,3>&, - std::vector >&); - - template - void - DoFTools::count_dofs_per_block > ( - const DoFHandler<1,3>&, - std::vector&, - const std::vector &); - - template - void - DoFTools::count_dofs_per_block > ( - const hp::DoFHandler<1,3>&, - std::vector&, - const std::vector &); + template void DoFTools::map_dofs_to_support_points<1, 3>( + const Mapping<1, 3> &, const DoFHandler<1, 3> &, std::vector> &); + + template void DoFTools::count_dofs_per_block>( + const DoFHandler<1, 3> &, + std::vector &, + const std::vector &); + + template void DoFTools::count_dofs_per_block>( + const hp::DoFHandler<1, 3> &, + std::vector &, + const std::vector &); #endif - template - void - DoFTools::write_gnuplot_dof_support_point_info(std::ostream &, - const std::map > &); + template void DoFTools::write_gnuplot_dof_support_point_info( + std::ostream &, + const std::map> &); - template - void - DoFTools::convert_couplings_to_blocks ( - const DoFHandler&, const Table<2, Coupling>&, - std::vector >&); + template void DoFTools::convert_couplings_to_blocks( + const DoFHandler &, + const Table<2, Coupling> &, + std::vector> &); - template - void - DoFTools::convert_couplings_to_blocks ( - const hp::DoFHandler&, const Table<2, Coupling>&, - std::vector >&); + template void DoFTools::convert_couplings_to_blocks( + const hp::DoFHandler &, + const Table<2, Coupling> &, + std::vector> &); #if deal_II_dimension < 3 - template - void - DoFTools::map_dof_to_boundary_indices > - (const DoFHandler &, - const std::set &, - std::vector &); - - template - void - DoFTools::map_dof_to_boundary_indices > - (const DoFHandler &, - std::vector &); - - - template - void - DoFTools::extract_hanging_node_dofs - (const DoFHandler &dof_handler, - std::vector &selected_dofs); - - template - void - DoFTools::map_dof_to_boundary_indices > - (const hp::DoFHandler &, - const std::set &, - std::vector &); - - template - void - DoFTools::map_dof_to_boundary_indices > - (const hp::DoFHandler &, - std::vector &); + template void DoFTools::map_dof_to_boundary_indices< + DoFHandler>( + const DoFHandler &, + const std::set &, + std::vector &); + + template void DoFTools::map_dof_to_boundary_indices< + DoFHandler>( + const DoFHandler &, + std::vector &); + + + template void DoFTools::extract_hanging_node_dofs( + const DoFHandler &dof_handler, + std::vector &selected_dofs); + + template void DoFTools::map_dof_to_boundary_indices< + hp::DoFHandler>( + const hp::DoFHandler &, + const std::set &, + std::vector &); + + template void DoFTools::map_dof_to_boundary_indices< + hp::DoFHandler>( + const hp::DoFHandler &, + std::vector &); #endif #if deal_II_dimension == 3 - template - void - DoFTools::map_dof_to_boundary_indices > - (const DoFHandler<1,3> &, - const std::set &, - std::vector &); - - template - void - DoFTools::map_dof_to_boundary_indices > - (const DoFHandler<1,3> &, - std::vector &); - - - template - void - DoFTools::extract_hanging_node_dofs - (const DoFHandler<1,3> &dof_handler, - std::vector &selected_dofs); - - template - void - DoFTools::map_dof_to_boundary_indices > - (const hp::DoFHandler<1,3> &, - const std::set &, - std::vector &); - - template - void - DoFTools::map_dof_to_boundary_indices > - (const hp::DoFHandler<1,3> &, - std::vector &); + template void DoFTools::map_dof_to_boundary_indices>( + const DoFHandler<1, 3> &, + const std::set &, + std::vector &); + + template void DoFTools::map_dof_to_boundary_indices>( + const DoFHandler<1, 3> &, std::vector &); -#endif + template void DoFTools::extract_hanging_node_dofs( + const DoFHandler<1, 3> &dof_handler, std::vector &selected_dofs); -} + template void DoFTools::map_dof_to_boundary_indices>( + const hp::DoFHandler<1, 3> &, + const std::set &, + std::vector &); + + template void DoFTools::map_dof_to_boundary_indices>( + const hp::DoFHandler<1, 3> &, std::vector &); + +#endif + } for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension namespace DoFTools \{ - template - unsigned int - count_dofs_on_patch > - (const std::vector::active_cell_iterator> &patch); - - template - std::vector - get_dofs_on_patch > - (const std::vector::active_cell_iterator> &patch); - - template - unsigned int - count_dofs_on_patch > - (const std::vector::active_cell_iterator> &patch); - - template - std::vector - get_dofs_on_patch > - (const std::vector::active_cell_iterator> &patch); - - template - void - extract_dofs - (const DoFHandler&, - const ComponentMask &, - std::vector&); - - template - void - extract_dofs - (const DoFHandler&, - const BlockMask &, - std::vector&); - - template - void - extract_dofs - (const hp::DoFHandler&, - const ComponentMask &, - std::vector&); - - template - void - extract_dofs - (const hp::DoFHandler&, - const BlockMask &, - std::vector&); - - template - void - make_cell_patches - (SparsityPattern&, - const DoFHandler&, - const unsigned int, const std::vector&, - const types::global_dof_index); + template unsigned int + count_dofs_on_patch< + DoFHandler>( + const std::vector< + DoFHandler::active_cell_iterator> &patch); + + template std::vector + get_dofs_on_patch>( + const std::vector< + DoFHandler::active_cell_iterator> &patch); + + template unsigned int + count_dofs_on_patch< + hp::DoFHandler>( + const std::vector< + hp::DoFHandler::active_cell_iterator> + &patch); + + template std::vector + get_dofs_on_patch< + hp::DoFHandler>( + const std::vector< + hp::DoFHandler::active_cell_iterator> + &patch); + + template void + extract_dofs( + const DoFHandler &, + const ComponentMask &, + std::vector &); + + template void + extract_dofs( + const DoFHandler &, + const BlockMask &, + std::vector &); + + template void + extract_dofs( + const hp::DoFHandler &, + const ComponentMask &, + std::vector &); + + template void + extract_dofs( + const hp::DoFHandler &, + const BlockMask &, + std::vector &); + + template void + make_cell_patches( + SparsityPattern &, + const DoFHandler &, + const unsigned int, + const std::vector &, + const types::global_dof_index); \} #endif -} + } diff --git a/source/dofs/dof_tools_constraints.inst.in b/source/dofs/dof_tools_constraints.inst.in index 9e65987564..3de6fe397e 100644 --- a/source/dofs/dof_tools_constraints.inst.in +++ b/source/dofs/dof_tools_constraints.inst.in @@ -15,105 +15,94 @@ // co-dim instantiations not for hp-DoFHandler for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ + { #if deal_II_dimension < deal_II_space_dimension - template - void - DoFTools::make_hanging_node_constraints ( - const DoFHandler &, - ConstraintMatrix &); + template void DoFTools::make_hanging_node_constraints( + const DoFHandler &, + ConstraintMatrix &); #endif -} + } for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS) -{ - template - void - DoFTools::make_hanging_node_constraints ( - const DH &, - ConstraintMatrix &); + { + template void DoFTools::make_hanging_node_constraints( + const DH &, ConstraintMatrix &); #if deal_II_dimension != 1 - template - void - DoFTools::make_periodicity_constraints (const DH::face_iterator &, - const DH::face_iterator &, - dealii::ConstraintMatrix &, - const ComponentMask &, - bool, bool, bool, - const FullMatrix &, - const std::vector &); + template void DoFTools::make_periodicity_constraints( + const DH::face_iterator &, + const DH::face_iterator &, + dealii::ConstraintMatrix &, + const ComponentMask &, + bool, + bool, + bool, + const FullMatrix &, + const std::vector &); - template - void - DoFTools::make_periodicity_constraints > - (const std::vector::cell_iterator> > &, - dealii::ConstraintMatrix &, - const ComponentMask &, - const std::vector &); + template void DoFTools::make_periodicity_constraints>( + const std::vector< + GridTools::PeriodicFacePair::cell_iterator>> &, + dealii::ConstraintMatrix &, + const ComponentMask &, + const std::vector &); - template - void - DoFTools::make_periodicity_constraints(const DH &, - const types::boundary_id, - const types::boundary_id, - const int, - dealii::ConstraintMatrix &, - const ComponentMask &); + template void DoFTools::make_periodicity_constraints( + const DH &, + const types::boundary_id, + const types::boundary_id, + const int, + dealii::ConstraintMatrix &, + const ComponentMask &); - template - void - DoFTools::make_periodicity_constraints(const DH &, - const types::boundary_id, - const int, - dealii::ConstraintMatrix &, - const ComponentMask &); + template void DoFTools::make_periodicity_constraints( + const DH &, + const types::boundary_id, + const int, + dealii::ConstraintMatrix &, + const ComponentMask &); #endif -} + } -for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template - void - DoFTools::make_zero_boundary_constraints - (const DH &, - ConstraintMatrix &, - const ComponentMask &); + template void DoFTools::make_zero_boundary_constraints( + const DH &, + ConstraintMatrix &, + const ComponentMask &); - template - void - DoFTools::make_zero_boundary_constraints - (const DH &, - const types::boundary_id, - ConstraintMatrix &, - const ComponentMask &); + template void DoFTools::make_zero_boundary_constraints( + const DH &, + const types::boundary_id, + ConstraintMatrix &, + const ComponentMask &); #endif -} + } // intergrid transfer is not yet implemented for hp::DoFHandler for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension - template - void - DoFTools::compute_intergrid_constraints - (const DoFHandler &, - const unsigned int, - const DoFHandler &, - const unsigned int, - const InterGridMap > &, - ConstraintMatrix &); + template void DoFTools::compute_intergrid_constraints( + const DoFHandler &, + const unsigned int, + const DoFHandler &, + const unsigned int, + const InterGridMap> + &, + ConstraintMatrix &); - template - void - DoFTools::compute_intergrid_transfer_representation - (const DoFHandler &, - const unsigned int, - const DoFHandler &, - const unsigned int, - const InterGridMap > &, - std::vector > &); + template void + DoFTools::compute_intergrid_transfer_representation( + const DoFHandler &, + const unsigned int, + const DoFHandler &, + const unsigned int, + const InterGridMap> + &, + std::vector> &); #endif -} + } diff --git a/source/dofs/dof_tools_sparsity.inst.in b/source/dofs/dof_tools_sparsity.inst.in index 6bf8e93a03..48c0660baa 100644 --- a/source/dofs/dof_tools_sparsity.inst.in +++ b/source/dofs/dof_tools_sparsity.inst.in @@ -13,288 +13,324 @@ // // --------------------------------------------------------------------- -for (scalar: REAL_SCALARS; SP : SPARSITY_PATTERNS; deal_II_dimension : DIMENSIONS) -{ - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); - - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const hp::DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); +for (scalar : REAL_SCALARS; SP : SPARSITY_PATTERNS; + deal_II_dimension : DIMENSIONS) + { + template void DoFTools:: + make_boundary_sparsity_pattern, SP, scalar>( + const DoFHandler &dof, + const std::map *> + & boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); + + template void + DoFTools::make_boundary_sparsity_pattern, + SP, + scalar>( + const hp::DoFHandler & dof, + const std::map *> &boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); #if deal_II_dimension < 3 - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const hp::DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); - - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); - - //template void - //DoFTools::make_boundary_sparsity_pattern,SP,scalar> + template void DoFTools::make_boundary_sparsity_pattern< + hp::DoFHandler, + SP, + scalar>( + const hp::DoFHandler &dof, + const std::map *> + & boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); + + template void DoFTools::make_boundary_sparsity_pattern< + DoFHandler, + SP, + scalar>( + const DoFHandler &dof, + const std::map *> + & boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); + + // template void + // DoFTools::make_boundary_sparsity_pattern,SP,scalar> //(const hp::DoFHandler& dof, - // const std::map*> &boundary_ids, - // const std::vector &dof_to_boundary_mapping, - // SP &sparsity); + // const std::map*> &boundary_ids, const + // std::vector &dof_to_boundary_mapping, SP + // &sparsity); #endif #if deal_II_dimension == 1 - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const hp::DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); - - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); + template void DoFTools::make_boundary_sparsity_pattern< + hp::DoFHandler, + SP, + scalar>( + const hp::DoFHandler &dof, + const std::map *> + & boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); + + template void DoFTools::make_boundary_sparsity_pattern< + DoFHandler, + SP, + scalar>( + const DoFHandler &dof, + const std::map *> + & boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); #endif - -} - -for (scalar: COMPLEX_SCALARS; SP : SPARSITY_PATTERNS; deal_II_dimension : DIMENSIONS) -{ - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); - - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const hp::DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); + } + +for (scalar : COMPLEX_SCALARS; SP : SPARSITY_PATTERNS; + deal_II_dimension : DIMENSIONS) + { + template void DoFTools:: + make_boundary_sparsity_pattern, SP, scalar>( + const DoFHandler &dof, + const std::map *> + & boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); + + template void + DoFTools::make_boundary_sparsity_pattern, + SP, + scalar>( + const hp::DoFHandler & dof, + const std::map *> &boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); #if deal_II_dimension < 3 - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const hp::DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); - - template void - DoFTools::make_boundary_sparsity_pattern,SP,scalar> - (const DoFHandler& dof, - const std::map*> &boundary_ids, - const std::vector &dof_to_boundary_mapping, - SP &sparsity); - - //template void - //DoFTools::make_boundary_sparsity_pattern,SP,scalar> + template void DoFTools::make_boundary_sparsity_pattern< + hp::DoFHandler, + SP, + scalar>( + const hp::DoFHandler &dof, + const std::map *> + & boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); + + template void DoFTools::make_boundary_sparsity_pattern< + DoFHandler, + SP, + scalar>( + const DoFHandler &dof, + const std::map *> + & boundary_ids, + const std::vector &dof_to_boundary_mapping, + SP & sparsity); + + // template void + // DoFTools::make_boundary_sparsity_pattern,SP,scalar> //(const hp::DoFHandler& dof, - // const std::map*> &boundary_ids, - // const std::vector &dof_to_boundary_mapping, - // SP &sparsity); + // const std::map*> &boundary_ids, const + // std::vector &dof_to_boundary_mapping, SP + // &sparsity); #endif - -} + } for (SP : SPARSITY_PATTERNS; deal_II_dimension : DIMENSIONS) -{ - template void - DoFTools::make_sparsity_pattern, SP> - (const DoFHandler &dof, - SP &sparsity, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const hp::DoFHandler &dof, - SP &sparsity, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const DoFHandler&, - const Table<2,Coupling>&, - SP &, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const hp::DoFHandler&, - const Table<2,Coupling>&, - SP &, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const DoFHandler &dof_row, - const DoFHandler &dof_col, - SP &sparsity); - - template void - DoFTools::make_sparsity_pattern, SP> - (const hp::DoFHandler &dof_row, - const hp::DoFHandler &dof_col, - SP &sparsity); - - template void - DoFTools::make_boundary_sparsity_pattern,SP> - (const DoFHandler& dof, - const std::vector &, - SP &); - - template void - DoFTools::make_boundary_sparsity_pattern,SP> - (const hp::DoFHandler& dof, - const std::vector &, - SP &); - - template void - DoFTools::make_flux_sparsity_pattern,SP> - (const DoFHandler &dof, - SP &sparsity); - - template void - DoFTools::make_flux_sparsity_pattern,SP> - (const hp::DoFHandler &dof, - SP &sparsity); - - template void - DoFTools::make_flux_sparsity_pattern,SP> - (const DoFHandler &dof, - SP &sparsity, - const Table<2,Coupling>&, - const Table<2,Coupling>&, - const types::subdomain_id); - - template void - DoFTools::make_flux_sparsity_pattern,SP> - (const DoFHandler &dof, - SP &sparsity, - const ConstraintMatrix &constraints, - const bool, - const Table<2,Coupling>&, - const Table<2,Coupling>&, - const types::subdomain_id); - - template void - DoFTools::make_flux_sparsity_pattern,SP> - (const DoFHandler &dof, - SP &sparsity, - const ConstraintMatrix &constraints, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_flux_sparsity_pattern,SP> - (const hp::DoFHandler &dof, - SP &sparsity, - const ConstraintMatrix &constraints, - const bool, - const types::subdomain_id); + { + template void DoFTools::make_sparsity_pattern< + DoFHandler, + SP>(const DoFHandler &dof, + SP & sparsity, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern< + hp::DoFHandler, + SP>(const hp::DoFHandler &dof, + SP & sparsity, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern< + DoFHandler, + SP>(const DoFHandler &, + const Table<2, Coupling> &, + SP &, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern< + hp::DoFHandler, + SP>(const hp::DoFHandler &, + const Table<2, Coupling> &, + SP &, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern< + DoFHandler, + SP>(const DoFHandler &dof_row, + const DoFHandler &dof_col, + SP & sparsity); + + template void DoFTools::make_sparsity_pattern< + hp::DoFHandler, + SP>(const hp::DoFHandler &dof_row, + const hp::DoFHandler &dof_col, + SP & sparsity); + + template void + DoFTools::make_boundary_sparsity_pattern, SP>( + const DoFHandler &dof, + const std::vector &, + SP &); + + template void + DoFTools::make_boundary_sparsity_pattern, + SP>( + const hp::DoFHandler &dof, + const std::vector &, + SP &); + + template void + DoFTools::make_flux_sparsity_pattern, SP>( + const DoFHandler &dof, SP &sparsity); + + template void + DoFTools::make_flux_sparsity_pattern, SP>( + const hp::DoFHandler &dof, SP &sparsity); + + template void + DoFTools::make_flux_sparsity_pattern, SP>( + const DoFHandler &dof, + SP & sparsity, + const Table<2, Coupling> &, + const Table<2, Coupling> &, + const types::subdomain_id); + + template void + DoFTools::make_flux_sparsity_pattern, SP>( + const DoFHandler &dof, + SP & sparsity, + const ConstraintMatrix & constraints, + const bool, + const Table<2, Coupling> &, + const Table<2, Coupling> &, + const types::subdomain_id); + + template void + DoFTools::make_flux_sparsity_pattern, SP>( + const DoFHandler &dof, + SP & sparsity, + const ConstraintMatrix & constraints, + const bool, + const types::subdomain_id); + + template void + DoFTools::make_flux_sparsity_pattern, SP>( + const hp::DoFHandler &dof, + SP & sparsity, + const ConstraintMatrix & constraints, + const bool, + const types::subdomain_id); #if deal_II_dimension > 1 template void - DoFTools::make_flux_sparsity_pattern,SP> - (const hp::DoFHandler &dof, - SP &sparsity, - const Table<2,Coupling>&, - const Table<2,Coupling>&, - const types::subdomain_id); + DoFTools::make_flux_sparsity_pattern, SP>( + const hp::DoFHandler &dof, + SP & sparsity, + const Table<2, Coupling> &, + const Table<2, Coupling> &, + const types::subdomain_id); template void - DoFTools::make_flux_sparsity_pattern,SP> - (const hp::DoFHandler &dof, - SP &sparsity, - const ConstraintMatrix &constraints, - const bool, - const Table<2,Coupling>&, - const Table<2,Coupling>&, - const types::subdomain_id); + DoFTools::make_flux_sparsity_pattern, SP>( + const hp::DoFHandler &dof, + SP & sparsity, + const ConstraintMatrix & constraints, + const bool, + const Table<2, Coupling> &, + const Table<2, Coupling> &, + const types::subdomain_id); #endif #if deal_II_dimension < 3 - template void - DoFTools::make_sparsity_pattern, SP> - (const DoFHandler &dof, - SP &sparsity, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const hp::DoFHandler &dof, - SP &sparsity, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const DoFHandler&, - const Table<2,Coupling>&, - SP &, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const hp::DoFHandler&, - const Table<2,Coupling>&, - SP &, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const DoFHandler &dof_row, - const DoFHandler &dof_col, - SP &sparsity); - - template void - DoFTools::make_sparsity_pattern, SP> - (const hp::DoFHandler &dof_row, - const hp::DoFHandler &dof_col, - SP &sparsity); - - template void - DoFTools::make_boundary_sparsity_pattern,SP> - (const DoFHandler& dof, - const std::vector &, - SP &); - - //template void - //DoFTools::make_boundary_sparsity_pattern,SP> + template void DoFTools::make_sparsity_pattern< + DoFHandler, + SP>(const DoFHandler &dof, + SP & sparsity, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern< + hp::DoFHandler, + SP>(const hp::DoFHandler &dof, + SP &sparsity, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern< + DoFHandler, + SP>(const DoFHandler &, + const Table<2, Coupling> &, + SP &, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern< + hp::DoFHandler, + SP>(const hp::DoFHandler &, + const Table<2, Coupling> &, + SP &, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern< + DoFHandler, + SP>(const DoFHandler &dof_row, + const DoFHandler &dof_col, + SP & sparsity); + + template void DoFTools::make_sparsity_pattern< + hp::DoFHandler, + SP>( + const hp::DoFHandler &dof_row, + const hp::DoFHandler &dof_col, + SP & sparsity); + + template void DoFTools::make_boundary_sparsity_pattern< + DoFHandler, + SP>(const DoFHandler &dof, + const std::vector &, + SP &); + + // template void + // DoFTools::make_boundary_sparsity_pattern,SP> //(const hp::DoFHandler& dof, // const std::vector &, // SP &); @@ -304,80 +340,71 @@ for (SP : SPARSITY_PATTERNS; deal_II_dimension : DIMENSIONS) #if deal_II_dimension == 3 - template void - DoFTools::make_sparsity_pattern, SP> - (const DoFHandler<1,3> &dof, - SP &sparsity, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const hp::DoFHandler<1,3> &dof, - SP &sparsity, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const DoFHandler<1,3>&, - const Table<2,Coupling>&, - SP &, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const hp::DoFHandler<1,3>&, - const Table<2,Coupling>&, - SP &, - const ConstraintMatrix &, - const bool, - const types::subdomain_id); - - template void - DoFTools::make_sparsity_pattern, SP> - (const DoFHandler<1,3> &dof_row, - const DoFHandler<1,3> &dof_col, - SP &sparsity); - - template void - DoFTools::make_sparsity_pattern, SP> - (const hp::DoFHandler<1,3> &dof_row, - const hp::DoFHandler<1,3> &dof_col, - SP &sparsity); - - template void - DoFTools::make_boundary_sparsity_pattern,SP> - (const DoFHandler<1,3>& dof, - const std::vector &, - SP &); - - template void - DoFTools::make_boundary_sparsity_pattern,SP> - (const hp::DoFHandler<1,3>& dof, - const std::vector &, - SP &); + template void DoFTools::make_sparsity_pattern, SP>( + const DoFHandler<1, 3> &dof, + SP & sparsity, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern, SP>( + const hp::DoFHandler<1, 3> &dof, + SP & sparsity, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern, SP>( + const DoFHandler<1, 3> &, + const Table<2, Coupling> &, + SP &, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern, SP>( + const hp::DoFHandler<1, 3> &, + const Table<2, Coupling> &, + SP &, + const ConstraintMatrix &, + const bool, + const types::subdomain_id); + + template void DoFTools::make_sparsity_pattern, SP>( + const DoFHandler<1, 3> &dof_row, + const DoFHandler<1, 3> &dof_col, + SP & sparsity); + + template void DoFTools::make_sparsity_pattern, SP>( + const hp::DoFHandler<1, 3> &dof_row, + const hp::DoFHandler<1, 3> &dof_col, + SP & sparsity); + + template void + DoFTools::make_boundary_sparsity_pattern, SP>( + const DoFHandler<1, 3> &dof, + const std::vector &, + SP &); + + template void + DoFTools::make_boundary_sparsity_pattern, SP>( + const hp::DoFHandler<1, 3> &dof, + const std::vector &, + SP &); #endif - -} + } for (deal_II_dimension : DIMENSIONS) -{ - template - Table<2,DoFTools::Coupling> - DoFTools::dof_couplings_from_component_couplings - (const FiniteElement &fe, - const Table<2,DoFTools::Coupling> &component_couplings); - - template - std::vector > - DoFTools::dof_couplings_from_component_couplings - (const hp::FECollection &fe, - const Table<2,DoFTools::Coupling> &component_couplings); -} + { + template Table<2, DoFTools::Coupling> + DoFTools::dof_couplings_from_component_couplings( + const FiniteElement &fe, + const Table<2, DoFTools::Coupling> & component_couplings); + + template std::vector> + DoFTools::dof_couplings_from_component_couplings( + const hp::FECollection &fe, + const Table<2, DoFTools::Coupling> & component_couplings); + } diff --git a/source/fe/fe.inst.in b/source/fe/fe.inst.in index 4cc2c5318b..e6b22d6b06 100644 --- a/source/fe/fe.inst.in +++ b/source/fe/fe.inst.in @@ -15,10 +15,9 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FiniteElement; #endif -} - + } diff --git a/source/fe/fe_abf.inst.in b/source/fe/fe_abf.inst.in index ecf6ea3395..62cf0302c9 100644 --- a/source/fe/fe_abf.inst.in +++ b/source/fe/fe_abf.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_ABF; -} - + } diff --git a/source/fe/fe_bdm.inst.in b/source/fe/fe_bdm.inst.in index 5a90306033..e4a734d7fe 100644 --- a/source/fe/fe_bdm.inst.in +++ b/source/fe/fe_bdm.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_BDM; -} - + } diff --git a/source/fe/fe_bernstein.inst.in b/source/fe/fe_bernstein.inst.in index 389c89df2e..501fd5e02c 100644 --- a/source/fe/fe_bernstein.inst.in +++ b/source/fe/fe_bernstein.inst.in @@ -15,9 +15,9 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FE_Bernstein; #endif -} + } diff --git a/source/fe/fe_dg_vector.inst.in b/source/fe/fe_dg_vector.inst.in index b44c3d00c8..c2c6d56713 100644 --- a/source/fe/fe_dg_vector.inst.in +++ b/source/fe/fe_dg_vector.inst.in @@ -16,14 +16,17 @@ for (deal_II_dimension : DIMENSIONS) -{ - template class FE_DGVector, deal_II_dimension>; - template class FE_DGVector, deal_II_dimension>; - template class FE_DGVector, deal_II_dimension>; - template class FE_DGVector, deal_II_dimension>; + { + template class FE_DGVector, + deal_II_dimension>; + template class FE_DGVector, + deal_II_dimension>; + template class FE_DGVector, + deal_II_dimension>; + template class FE_DGVector, + deal_II_dimension>; template class FE_DGNedelec; template class FE_DGRaviartThomas; template class FE_DGBDM; -} - + } diff --git a/source/fe/fe_dgp.inst.in b/source/fe/fe_dgp.inst.in index f8fbe34ff5..50ff102a3a 100644 --- a/source/fe/fe_dgp.inst.in +++ b/source/fe/fe_dgp.inst.in @@ -15,11 +15,9 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FE_DGP; #endif -} - - + } diff --git a/source/fe/fe_dgp_monomial.inst.in b/source/fe/fe_dgp_monomial.inst.in index defc94905c..b2187cf9e4 100644 --- a/source/fe/fe_dgp_monomial.inst.in +++ b/source/fe/fe_dgp_monomial.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_DGPMonomial; -} - + } diff --git a/source/fe/fe_dgp_nonparametric.inst.in b/source/fe/fe_dgp_nonparametric.inst.in index 483f57d994..64097aa4f1 100644 --- a/source/fe/fe_dgp_nonparametric.inst.in +++ b/source/fe/fe_dgp_nonparametric.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_DGPNonparametric; -} - + } diff --git a/source/fe/fe_dgq.inst.in b/source/fe/fe_dgq.inst.in index 83d34a4c33..d5c0029649 100644 --- a/source/fe/fe_dgq.inst.in +++ b/source/fe/fe_dgq.inst.in @@ -15,12 +15,13 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FE_DGQ; - template class FE_DGQArbitraryNodes; + template class FE_DGQArbitraryNodes; template class FE_DGQLegendre; template class FE_DGQHermite; #endif -} + } diff --git a/source/fe/fe_enriched.inst.in b/source/fe/fe_enriched.inst.in index 853f36a622..af9a4cfc2c 100644 --- a/source/fe/fe_enriched.inst.in +++ b/source/fe/fe_enriched.inst.in @@ -14,10 +14,9 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FE_Enriched; #endif -} - + } diff --git a/source/fe/fe_face.inst.in b/source/fe/fe_face.inst.in index d2c8342ae9..969ab43eab 100644 --- a/source/fe/fe_face.inst.in +++ b/source/fe/fe_face.inst.in @@ -16,13 +16,14 @@ for (deal_II_dimension : DIMENSIONS) -{ + { #if deal_II_dimension > 1 - template class FE_PolyFace >; - template class FE_PolyFace, deal_II_dimension>; - //template class FE_PolyFace, deal_II_dimension>; + template class FE_PolyFace>; + template class FE_PolyFace, + deal_II_dimension>; + // template class FE_PolyFace, + // deal_II_dimension>; #endif - template class FE_FaceQ; - template class FE_FaceP; -} - + template class FE_FaceQ; + template class FE_FaceP; + } diff --git a/source/fe/fe_nedelec.inst.in b/source/fe/fe_nedelec.inst.in index e47e80e30e..0c3dd872f3 100644 --- a/source/fe/fe_nedelec.inst.in +++ b/source/fe/fe_nedelec.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_Nedelec; -} - + } diff --git a/source/fe/fe_nedelec_sz.inst.in b/source/fe/fe_nedelec_sz.inst.in index dd9bef66ce..7794654ea6 100644 --- a/source/fe/fe_nedelec_sz.inst.in +++ b/source/fe/fe_nedelec_sz.inst.in @@ -16,9 +16,8 @@ for (deal_II_dimension : DIMENSIONS) -{ + { #if deal_II_dimension != 1 template class FE_NedelecSZ; #endif -} - + } diff --git a/source/fe/fe_nothing.inst.in b/source/fe/fe_nothing.inst.in index cc7eaf36e8..5e376418b2 100644 --- a/source/fe/fe_nothing.inst.in +++ b/source/fe/fe_nothing.inst.in @@ -16,9 +16,8 @@ for (deal_II_dimension, deal_II_space_dimension : DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension - template class FE_Nothing; + template class FE_Nothing; #endif -} - + } diff --git a/source/fe/fe_poly.inst.in b/source/fe/fe_poly.inst.in index 73ad169493..bce7447b70 100644 --- a/source/fe/fe_poly.inst.in +++ b/source/fe/fe_poly.inst.in @@ -15,16 +15,31 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template class FE_Poly, deal_II_dimension, deal_II_space_dimension>; - template class FE_Poly, deal_II_dimension, deal_II_space_dimension>; - template class FE_Poly, deal_II_dimension, deal_II_space_dimension>; - template class FE_Poly >, deal_II_dimension, deal_II_space_dimension>; - template class FE_Poly, deal_II_dimension, deal_II_space_dimension>; - template class FE_Poly, deal_II_dimension, deal_II_space_dimension>; - template class FE_Poly, deal_II_dimension, deal_II_space_dimension>; + template class FE_Poly, + deal_II_dimension, + deal_II_space_dimension>; + template class FE_Poly, + deal_II_dimension, + deal_II_space_dimension>; + template class FE_Poly, + deal_II_dimension, + deal_II_space_dimension>; + template class FE_Poly< + TensorProductPolynomials>, + deal_II_dimension, + deal_II_space_dimension>; + template class FE_Poly, + deal_II_dimension, + deal_II_space_dimension>; + template class FE_Poly, + deal_II_dimension, + deal_II_space_dimension>; + template class FE_Poly, + deal_II_dimension, + deal_II_space_dimension>; #endif -} - + } diff --git a/source/fe/fe_poly_tensor.inst.in b/source/fe/fe_poly_tensor.inst.in index 349a3d54f6..6489f3b4b4 100644 --- a/source/fe/fe_poly_tensor.inst.in +++ b/source/fe/fe_poly_tensor.inst.in @@ -16,11 +16,15 @@ for (deal_II_dimension : DIMENSIONS) -{ - template class FE_PolyTensor,deal_II_dimension>; - template class FE_PolyTensor,deal_II_dimension>; - template class FE_PolyTensor,deal_II_dimension>; - template class FE_PolyTensor,deal_II_dimension>; - template class FE_PolyTensor, deal_II_dimension>; -} - + { + template class FE_PolyTensor, + deal_II_dimension>; + template class FE_PolyTensor, + deal_II_dimension>; + template class FE_PolyTensor, + deal_II_dimension>; + template class FE_PolyTensor, + deal_II_dimension>; + template class FE_PolyTensor, + deal_II_dimension>; + } diff --git a/source/fe/fe_q.inst.in b/source/fe/fe_q.inst.in index 3dbb99a3a7..9263c027f9 100644 --- a/source/fe/fe_q.inst.in +++ b/source/fe/fe_q.inst.in @@ -15,11 +15,9 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FE_Q; #endif -} - - + } diff --git a/source/fe/fe_q_base.inst.in b/source/fe/fe_q_base.inst.in index 5093bc1c3f..3cc85da55f 100644 --- a/source/fe/fe_q_base.inst.in +++ b/source/fe/fe_q_base.inst.in @@ -15,14 +15,22 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template class FE_Q_Base, deal_II_dimension, deal_II_space_dimension>; - template class FE_Q_Base, deal_II_dimension, deal_II_space_dimension>; - template class FE_Q_Base, deal_II_dimension, deal_II_space_dimension>; - template class FE_Q_Base >, deal_II_dimension, deal_II_space_dimension>; + template class FE_Q_Base, + deal_II_dimension, + deal_II_space_dimension>; + template class FE_Q_Base, + deal_II_dimension, + deal_II_space_dimension>; + template class FE_Q_Base, + deal_II_dimension, + deal_II_space_dimension>; + template class FE_Q_Base< + TensorProductPolynomials>, + deal_II_dimension, + deal_II_space_dimension>; #endif -} - - + } diff --git a/source/fe/fe_q_bubbles.inst.in b/source/fe/fe_q_bubbles.inst.in index b15cd7cfe1..21f2f31620 100644 --- a/source/fe/fe_q_bubbles.inst.in +++ b/source/fe/fe_q_bubbles.inst.in @@ -15,9 +15,9 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FE_Q_Bubbles; #endif -} + } diff --git a/source/fe/fe_q_dg0.inst.in b/source/fe/fe_q_dg0.inst.in index 452a7f078d..82389b6988 100644 --- a/source/fe/fe_q_dg0.inst.in +++ b/source/fe/fe_q_dg0.inst.in @@ -15,11 +15,9 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FE_Q_DG0; #endif -} - - + } diff --git a/source/fe/fe_q_hierarchical.inst.in b/source/fe/fe_q_hierarchical.inst.in index e261257b18..55d3962fb7 100644 --- a/source/fe/fe_q_hierarchical.inst.in +++ b/source/fe/fe_q_hierarchical.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_Q_Hierarchical; -} - + } diff --git a/source/fe/fe_q_iso_q1.inst.in b/source/fe/fe_q_iso_q1.inst.in index 8a00f72008..d8c621f75d 100644 --- a/source/fe/fe_q_iso_q1.inst.in +++ b/source/fe/fe_q_iso_q1.inst.in @@ -15,11 +15,9 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FE_Q_iso_Q1; #endif -} - - + } diff --git a/source/fe/fe_rannacher_turek.inst.in b/source/fe/fe_rannacher_turek.inst.in index 3008dbc4b6..269df56986 100644 --- a/source/fe/fe_rannacher_turek.inst.in +++ b/source/fe/fe_rannacher_turek.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_RannacherTurek; -} - + } diff --git a/source/fe/fe_raviart_thomas.inst.in b/source/fe/fe_raviart_thomas.inst.in index 9afd41930d..a80f3cd7e0 100644 --- a/source/fe/fe_raviart_thomas.inst.in +++ b/source/fe/fe_raviart_thomas.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_RaviartThomas; -} - + } diff --git a/source/fe/fe_raviart_thomas_nodal.inst.in b/source/fe/fe_raviart_thomas_nodal.inst.in index 82e69fe0ed..34251756f9 100644 --- a/source/fe/fe_raviart_thomas_nodal.inst.in +++ b/source/fe/fe_raviart_thomas_nodal.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_RaviartThomasNodal; -} - + } diff --git a/source/fe/fe_rt_bubbles.inst.in b/source/fe/fe_rt_bubbles.inst.in index dffaea416c..7ed41245b9 100644 --- a/source/fe/fe_rt_bubbles.inst.in +++ b/source/fe/fe_rt_bubbles.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_RT_Bubbles; -} - + } diff --git a/source/fe/fe_system.inst.in b/source/fe/fe_system.inst.in index 94e55301c9..2a1eb87d4c 100644 --- a/source/fe/fe_system.inst.in +++ b/source/fe/fe_system.inst.in @@ -14,11 +14,9 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class FESystem; #endif -} - - + } diff --git a/source/fe/fe_tools.inst.in b/source/fe/fe_tools.inst.in index 82acf47394..608e349b54 100644 --- a/source/fe/fe_tools.inst.in +++ b/source/fe/fe_tools.inst.in @@ -14,282 +14,307 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace FETools \{ #if deal_II_dimension <= deal_II_space_dimension - namespace Compositing - \{ - template - FiniteElementData - multiply_dof_numbers (const std::vector*> &fes, - const std::vector &multiplicities, - bool); - - template - FiniteElementData - multiply_dof_numbers (const FiniteElement *fe1, - const unsigned int N1, - const FiniteElement *fe2, - const unsigned int N2, - const FiniteElement *fe3, - const unsigned int N3, - const FiniteElement *fe4, - const unsigned int N4, - const FiniteElement *fe5, - const unsigned int N5); - - template - std::vector - compute_restriction_is_additive_flags (const std::vector*> &fes, - const std::vector &multiplicities); - - template - std::vector - compute_restriction_is_additive_flags (const FiniteElement *fe1, - const unsigned int N1, - const FiniteElement *fe2, - const unsigned int N2, - const FiniteElement *fe3, - const unsigned int N3, - const FiniteElement *fe4, - const unsigned int N4, - const FiniteElement *fe5, - const unsigned int N5); - - template - std::vector - compute_nonzero_components (const std::vector*> &fes, - const std::vector &multiplicities, - const bool do_tensor_product); - - template - std::vector - compute_nonzero_components (const FiniteElement *fe1, - const unsigned int N1, - const FiniteElement *fe2, - const unsigned int N2, - const FiniteElement *fe3, - const unsigned int N3, - const FiniteElement *fe4, - const unsigned int N4, - const FiniteElement *fe5, - const unsigned int N5, - const bool); - - template - void - build_cell_tables(std::vector< std::pair< std::pair< unsigned int, unsigned int >, unsigned int > > &system_to_base_table, - std::vector< std::pair< unsigned int, unsigned int > > &system_to_component_table, - std::vector< std::pair< std::pair< unsigned int, unsigned int >, unsigned int > > &component_to_base_table, - const FiniteElement &fe, - const bool do_tensor_product); - - template - void - build_face_tables(std::vector< std::pair< std::pair< unsigned int, unsigned int >, unsigned int > > &face_system_to_base_table, - std::vector< std::pair< unsigned int, unsigned int > > &face_system_to_component_table, - const FiniteElement &fe, - const bool do_tensor_product); - - \} - - template - void compute_block_renumbering ( - const FiniteElement &, - std::vector &, std::vector &, bool); - - template - void compute_projection_matrices - (const FiniteElement &, - std::vector > > &, bool); + namespace Compositing + \{ + template FiniteElementData + multiply_dof_numbers( + const std::vector< + const FiniteElement *> + & fes, + const std::vector &multiplicities, + bool); + + template FiniteElementData + multiply_dof_numbers( + const FiniteElement *fe1, + const unsigned int N1, + const FiniteElement *fe2, + const unsigned int N2, + const FiniteElement *fe3, + const unsigned int N3, + const FiniteElement *fe4, + const unsigned int N4, + const FiniteElement *fe5, + const unsigned int N5); + + template std::vector + compute_restriction_is_additive_flags( + const std::vector< + const FiniteElement *> + & fes, + const std::vector &multiplicities); + + template std::vector + compute_restriction_is_additive_flags( + const FiniteElement *fe1, + const unsigned int N1, + const FiniteElement *fe2, + const unsigned int N2, + const FiniteElement *fe3, + const unsigned int N3, + const FiniteElement *fe4, + const unsigned int N4, + const FiniteElement *fe5, + const unsigned int N5); + + template std::vector + compute_nonzero_components( + const std::vector< + const FiniteElement *> + & fes, + const std::vector &multiplicities, + const bool do_tensor_product); + + template std::vector + compute_nonzero_components( + const FiniteElement *fe1, + const unsigned int N1, + const FiniteElement *fe2, + const unsigned int N2, + const FiniteElement *fe3, + const unsigned int N3, + const FiniteElement *fe4, + const unsigned int N4, + const FiniteElement *fe5, + const unsigned int N5, + const bool); + + template void + build_cell_tables( + std::vector, + unsigned int>> &system_to_base_table, + std::vector> + & system_to_component_table, + std::vector, + unsigned int>> &component_to_base_table, + const FiniteElement &fe, + const bool do_tensor_product); + + template void + build_face_tables( + std::vector, + unsigned int>> &face_system_to_base_table, + std::vector> + &face_system_to_component_table, + const FiniteElement &fe, + const bool do_tensor_product); + + \} + + template void + compute_block_renumbering( + const FiniteElement &, + std::vector &, + std::vector &, + bool); + + template void + compute_projection_matrices( + const FiniteElement &, + std::vector>> &, + bool); - template - void compute_embedding_matrices - (const FiniteElement &, - std::vector > > &, const bool, const double); + template void + compute_embedding_matrices( + const FiniteElement &, + std::vector>> &, + const bool, + const double); #endif \} -} + } -//TODO[SP]: replace by +// TODO[SP]: replace by // where applicable and move to codimension cases above also when applicable -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace FETools \{ #if deal_II_dimension <= deal_II_space_dimension - template - void get_interpolation_matrix - (const FiniteElement &, - const FiniteElement &, - FullMatrix &); - - template std::unique_ptr > - get_fe_by_name (const std::string &); - - template - void - compute_interpolation_to_quadrature_points_matrix - (const FiniteElement &, - const Quadrature &, - FullMatrix &); - - template - void - compute_projection_from_quadrature_points_matrix - (const FiniteElement &, - const Quadrature &, - const Quadrature &, - FullMatrix &); + template void + get_interpolation_matrix( + const FiniteElement &, + const FiniteElement &, + FullMatrix &); + + template std::unique_ptr< + FiniteElement> + get_fe_by_name( + const std::string &); + + template void + compute_interpolation_to_quadrature_points_matrix( + const FiniteElement &, + const Quadrature &, + FullMatrix &); + + template void + compute_projection_from_quadrature_points_matrix( + const FiniteElement &, + const Quadrature &, + const Quadrature &, + FullMatrix &); #endif #if deal_II_dimension == deal_II_space_dimension - template class FEFactoryBase; + template class FEFactoryBase; + + template FiniteElement * + get_fe_from_name(const std::string &); - template FiniteElement * - get_fe_from_name (const std::string &); + template FullMatrix + compute_node_matrix(const FiniteElement &); - template - FullMatrix - compute_node_matrix(const FiniteElement &); + template void + compute_component_wise(const FiniteElement &, + std::vector &, + std::vector> &); - template - void compute_component_wise( + template void + get_back_interpolation_matrix( const FiniteElement &, - std::vector &, std::vector > &); - - template - void get_back_interpolation_matrix - (const FiniteElement &, - const FiniteElement &, - FullMatrix &); - template - void get_interpolation_difference_matrix - (const FiniteElement &, - const FiniteElement &, - FullMatrix &); - template - void get_interpolation_matrix - (const FiniteElement &, - const FiniteElement &, - FullMatrix &); - template - void get_back_interpolation_matrix - (const FiniteElement &, - const FiniteElement &, - FullMatrix &); - template - void get_interpolation_difference_matrix - (const FiniteElement &, - const FiniteElement &, - FullMatrix &); - - template - void get_projection_matrix - (const FiniteElement &, - const FiniteElement &, - FullMatrix &); - - template - void compute_face_embedding_matrices - (const FiniteElement &, FullMatrix ( &)[GeometryInfo::max_children_per_face], - unsigned int, unsigned int, const double); - - template - void - compute_projection_from_quadrature_points( + const FiniteElement &, + FullMatrix &); + template void + get_interpolation_difference_matrix( + const FiniteElement &, + const FiniteElement &, + FullMatrix &); + template void + get_interpolation_matrix( + const FiniteElement &, + const FiniteElement &, + FullMatrix &); + template void + get_back_interpolation_matrix( + const FiniteElement &, + const FiniteElement &, + FullMatrix &); + template void + get_interpolation_difference_matrix( + const FiniteElement &, + const FiniteElement &, + FullMatrix &); + + template void + get_projection_matrix( + const FiniteElement &, + const FiniteElement &, + FullMatrix &); + + template void + compute_face_embedding_matrices( + const FiniteElement &, + FullMatrix ( + &)[GeometryInfo::max_children_per_face], + unsigned int, + unsigned int, + const double); + + template void + compute_projection_from_quadrature_points( const FullMatrix &, - const std::vector< Tensor<1, deal_II_dimension > > &, - std::vector< Tensor<1, deal_II_dimension > > &); + const std::vector> &, + std::vector> &); - template - void - compute_projection_from_quadrature_points( + template void + compute_projection_from_quadrature_points( const FullMatrix &, - const std::vector > &, - std::vector > &); - -#if deal_II_dimension != 1 - template - void - compute_projection_from_face_quadrature_points_matrix (const FiniteElement &, - const Quadrature &, - const Quadrature &, - const DoFHandler::active_cell_iterator &, - unsigned int, - FullMatrix &); -#endif + const std::vector> &, + std::vector> &); - template - void - hierarchic_to_lexicographic_numbering - (unsigned int, - std::vector &); - - template - void - hierarchic_to_lexicographic_numbering - (const FiniteElementData &, - std::vector &); - - template - void - lexicographic_to_hierarchic_numbering - (const FiniteElementData &, - std::vector &); - - template - std::vector - hierarchic_to_lexicographic_numbering - (const FiniteElementData &); - - template - std::vector - lexicographic_to_hierarchic_numbering - (const FiniteElementData &); +# if deal_II_dimension != 1 + template void + compute_projection_from_face_quadrature_points_matrix( + const FiniteElement &, + const Quadrature &, + const Quadrature &, + const DoFHandler::active_cell_iterator &, + unsigned int, + FullMatrix &); +# endif + + template void + hierarchic_to_lexicographic_numbering( + unsigned int, + std::vector &); + + template void + hierarchic_to_lexicographic_numbering( + const FiniteElementData &, + std::vector &); + + template void + lexicographic_to_hierarchic_numbering( + const FiniteElementData &, + std::vector &); + + template std::vector + hierarchic_to_lexicographic_numbering( + const FiniteElementData &); + + template std::vector + lexicographic_to_hierarchic_numbering( + const FiniteElementData &); #endif \} -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; number : REAL_SCALARS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + number : REAL_SCALARS) + { #if deal_II_dimension <= deal_II_space_dimension namespace FETools \{ - template - void - convert_generalized_support_point_values_to_dof_values ( + template void + convert_generalized_support_point_values_to_dof_values< + deal_II_dimension, + deal_II_space_dimension, + number>( const FiniteElement &, - const std::vector > &, - std::vector &); + const std::vector> &, + std::vector &); \} #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; number : COMPLEX_SCALARS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + number : COMPLEX_SCALARS) + { #if deal_II_dimension <= deal_II_space_dimension namespace FETools \{ - template - void - convert_generalized_support_point_values_to_dof_values ( + template void + convert_generalized_support_point_values_to_dof_values< + deal_II_dimension, + deal_II_space_dimension, + number>( const FiniteElement &, - const std::vector > &, - std::vector &); + const std::vector> &, + std::vector &); \} #endif -} + } diff --git a/source/fe/fe_tools_extrapolate.inst.in b/source/fe/fe_tools_extrapolate.inst.in index 2d6d90b20d..05c06edc43 100644 --- a/source/fe/fe_tools_extrapolate.inst.in +++ b/source/fe/fe_tools_extrapolate.inst.in @@ -15,21 +15,24 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; VEC : VECTOR_TYPES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + VEC : VECTOR_TYPES) + { namespace FETools \{ #if deal_II_dimension == deal_II_space_dimension - template - void extrapolate - (const DoFHandler &, const VEC &, - const DoFHandler &, VEC &); + template void + extrapolate(const DoFHandler &, + const VEC &, + const DoFHandler &, + VEC &); - template - void extrapolate - (const DoFHandler &, const VEC &, - const DoFHandler &, const ConstraintMatrix &, - VEC &); + template void + extrapolate(const DoFHandler &, + const VEC &, + const DoFHandler &, + const ConstraintMatrix &, + VEC &); #endif \} -} + } diff --git a/source/fe/fe_tools_interpolate.inst.in b/source/fe/fe_tools_interpolate.inst.in index 3d2bfeda50..9e62e5b3e9 100644 --- a/source/fe/fe_tools_interpolate.inst.in +++ b/source/fe/fe_tools_interpolate.inst.in @@ -15,93 +15,113 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; Vector : VECTOR_TYPES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + Vector : VECTOR_TYPES) + { namespace FETools \{ #if deal_II_dimension <= deal_II_space_dimension - template - void interpolate - (const DoFHandler &, const Vector &, - const DoFHandler &, Vector &); + template void + interpolate( + const DoFHandler &, + const Vector &, + const DoFHandler &, + Vector &); - template - void interpolate - (const DoFHandler &, const Vector &, - const DoFHandler &, const ConstraintMatrix &, - Vector &); + template void + interpolate( + const DoFHandler &, + const Vector &, + const DoFHandler &, + const ConstraintMatrix &, + Vector &); #endif \} -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace FETools \{ #if deal_II_dimension == deal_II_space_dimension - template - void interpolate - (const hp::DoFHandler &, const Vector &, - const hp::DoFHandler &, Vector &); + template void + interpolate(const hp::DoFHandler &, + const Vector &, + const hp::DoFHandler &, + Vector &); - template - void interpolate - (const hp::DoFHandler &, const Vector &, - const hp::DoFHandler &, const ConstraintMatrix &, - Vector &); + template void + interpolate(const hp::DoFHandler &, + const Vector &, + const hp::DoFHandler &, + const ConstraintMatrix &, + Vector &); - template - void interpolate - (const hp::DoFHandler &, const Vector &, - const hp::DoFHandler &, Vector &); + template void + interpolate(const hp::DoFHandler &, + const Vector &, + const hp::DoFHandler &, + Vector &); - template - void interpolate - (const hp::DoFHandler &, const Vector &, - const hp::DoFHandler &, const ConstraintMatrix &, - Vector &); + template void + interpolate(const hp::DoFHandler &, + const Vector &, + const hp::DoFHandler &, + const ConstraintMatrix &, + Vector &); #endif \} -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; VEC : VECTOR_TYPES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + VEC : VECTOR_TYPES) + { namespace FETools \{ #if deal_II_dimension == deal_II_space_dimension - template - void back_interpolate - (const DoFHandler &, const VEC &, - const FiniteElement &, VEC &); + template void + back_interpolate( + const DoFHandler &, + const VEC &, + const FiniteElement &, + VEC &); - template - void back_interpolate - (const hp::DoFHandler &, const VEC &, - const FiniteElement &, VEC &); + template void + back_interpolate( + const hp::DoFHandler &, + const VEC &, + const FiniteElement &, + VEC &); - template - void back_interpolate - (const DoFHandler &, const ConstraintMatrix &, - const VEC &, - const DoFHandler &, const ConstraintMatrix &, - VEC &); + template void + back_interpolate(const DoFHandler &, + const ConstraintMatrix &, + const VEC &, + const DoFHandler &, + const ConstraintMatrix &, + VEC &); - template - void interpolation_difference - (const DoFHandler &, const VEC &, - const FiniteElement &, VEC &); + template void + interpolation_difference( + const DoFHandler &, + const VEC &, + const FiniteElement &, + VEC &); - template - void interpolation_difference - (const DoFHandler &, const ConstraintMatrix &, - const VEC &, - const DoFHandler &, const ConstraintMatrix &, - VEC &); + template void + interpolation_difference( + const DoFHandler &, + const ConstraintMatrix &, + const VEC &, + const DoFHandler &, + const ConstraintMatrix &, + VEC &); - template - void project_dg - (const DoFHandler &, const VEC &, - const DoFHandler &, VEC &); + template void + project_dg(const DoFHandler &, + const VEC &, + const DoFHandler &, + VEC &); #endif \} -} + } diff --git a/source/fe/fe_trace.inst.in b/source/fe/fe_trace.inst.in index e297ab3334..abcdea5363 100644 --- a/source/fe/fe_trace.inst.in +++ b/source/fe/fe_trace.inst.in @@ -14,6 +14,6 @@ // --------------------------------------------------------------------- for (deal_II_dimension : DIMENSIONS) -{ + { template class FE_TraceQ; -} + } diff --git a/source/fe/fe_values.decl.1.inst.in b/source/fe/fe_values.decl.1.inst.in index 6f3e8e12b0..43f8abf80d 100644 --- a/source/fe/fe_values.decl.1.inst.in +++ b/source/fe/fe_values.decl.1.inst.in @@ -19,13 +19,11 @@ // and derived classes for (VEC : VECTOR_TYPES) -{ + { /// Call /// @p get_interpolated_dof_values /// of the iterator with the /// given arguments. - virtual - void - get_interpolated_dof_values (const VEC &in, - Vector &out) const = 0; -} + virtual void get_interpolated_dof_values( + const VEC &in, Vector &out) const = 0; + } diff --git a/source/fe/fe_values.decl.2.inst.in b/source/fe/fe_values.decl.2.inst.in index 13c6a5c205..8018699b6d 100644 --- a/source/fe/fe_values.decl.2.inst.in +++ b/source/fe/fe_values.decl.2.inst.in @@ -19,13 +19,11 @@ // and derived classes for (VEC : VECTOR_TYPES) -{ + { /// Call /// @p get_interpolated_dof_values /// of the iterator with the /// given arguments. - virtual - void - get_interpolated_dof_values (const VEC &in, - Vector &out) const override; -} + virtual void get_interpolated_dof_values( + const VEC &in, Vector &out) const override; + } diff --git a/source/fe/fe_values.impl.1.inst.in b/source/fe/fe_values.impl.1.inst.in index 7497b54c3d..7fa9a8cb5d 100644 --- a/source/fe/fe_values.impl.1.inst.in +++ b/source/fe/fe_values.impl.1.inst.in @@ -15,14 +15,13 @@ for (VEC : VECTOR_TYPES) -{ + { template template void - FEValuesBase::CellIterator:: - get_interpolated_dof_values (const VEC &in, - Vector &out) const - { // - cell->get_interpolated_dof_values (in, out); + FEValuesBase::CellIterator::get_interpolated_dof_values( + const VEC &in, Vector &out) const + { // + cell->get_interpolated_dof_values(in, out); \} -} + } diff --git a/source/fe/fe_values.impl.2.inst.in b/source/fe/fe_values.impl.2.inst.in index 48d8211eac..e78db0f3c7 100644 --- a/source/fe/fe_values.impl.2.inst.in +++ b/source/fe/fe_values.impl.2.inst.in @@ -15,13 +15,12 @@ for (VEC : VECTOR_TYPES) -{ + { template void - FEValuesBase::TriaCellIterator:: - get_interpolated_dof_values (const VEC &, - Vector &) const - { // - Assert (false, ExcMessage (message_string)); + FEValuesBase::TriaCellIterator::get_interpolated_dof_values( + const VEC &, Vector &) const + { // + Assert(false, ExcMessage(message_string)); \} -} + } diff --git a/source/fe/fe_values.inst.in b/source/fe/fe_values.inst.in index beb3673670..177410e871 100644 --- a/source/fe/fe_values.inst.in +++ b/source/fe/fe_values.inst.in @@ -14,498 +14,766 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template class FEValuesBase; - template class FEValues; - template class FEValuesBase:: - CellIterator::cell_iterator>; + template class FEValuesBase; + template class FEValues; + template class FEValuesBase:: + CellIterator< + DoFHandler::cell_iterator>; - template class FEFaceValuesBase; - template class FEFaceValues; - template class FESubfaceValues; + template class FEFaceValuesBase; + template class FEFaceValues; + template class FESubfaceValues; namespace FEValuesViews \{ - template class Scalar; - template class Vector; - template class SymmetricTensor<2, deal_II_dimension, deal_II_space_dimension>; - template class Tensor<2, deal_II_dimension, deal_II_space_dimension>; + template class Scalar; + template class Vector; + template class SymmetricTensor<2, + deal_II_dimension, + deal_II_space_dimension>; + template class Tensor<2, deal_II_dimension, deal_II_space_dimension>; \} namespace internal \{ - namespace FEValuesImplementation - \{ - template class MappingRelatedData; - template class FiniteElementRelatedData; - \} + namespace FEValuesImplementation + \{ + template class MappingRelatedData; + template class FiniteElementRelatedData; + \} \} #endif -} + } -for (dof_handler : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; lda : BOOL) -{ +for (dof_handler : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS; + lda : BOOL) + { #if deal_II_dimension <= deal_II_space_dimension - template void FEValues::reinit( - const TriaIterator, lda> >&); - template void FEFaceValues::reinit( - const TriaIterator, lda> >&, unsigned int); - template void FESubfaceValues::reinit( - const TriaIterator, lda> >&, unsigned int, unsigned int); + template void FEValues::reinit( + const TriaIterator< + DoFCellAccessor, + lda>> &); + template void + FEFaceValues::reinit( + const TriaIterator< + DoFCellAccessor, + lda>> &, + unsigned int); + template void + FESubfaceValues::reinit( + const TriaIterator< + DoFCellAccessor, + lda>> &, + unsigned int, + unsigned int); #endif -} + } -for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template - void FEValuesViews::Scalar - ::get_function_values - (const dealii::VEC&, std::vector::type>&) const; - template - void FEValuesViews::Scalar - ::get_function_gradients - (const dealii::VEC&, std::vector >::type>&) const; - template - void FEValuesViews::Scalar - ::get_function_hessians - (const dealii::VEC&, std::vector >::type>&) const; - template - void FEValuesViews::Scalar - ::get_function_laplacians - (const dealii::VEC&, std::vector::type> &) const; - template - void FEValuesViews::Scalar - ::get_function_third_derivatives - (const dealii::VEC&, std::vector >::type>&) const; - - template - void FEValuesViews::Vector - ::get_function_values - (const dealii::VEC&, std::vector >::type >&) const; - template - void FEValuesViews::Vector - ::get_function_gradients - (const dealii::VEC&, std::vector >::type >&) const; - template - void FEValuesViews::Vector - ::get_function_symmetric_gradients - (const dealii::VEC&, std::vector >::type >&) const; - template - void FEValuesViews::Vector - ::get_function_curls - (const dealii::VEC&, std::vector::type>&) const; - template - void FEValuesViews::Vector - ::get_function_divergences - (const dealii::VEC&, std::vector::type>&) const; - template - void FEValuesViews::Vector - ::get_function_hessians - (const dealii::VEC&, std::vector >::type >&) const; - template - void FEValuesViews::Vector - ::get_function_laplacians - (const dealii::VEC&, std::vector >::type >&) const; - template - void FEValuesViews::Vector - ::get_function_third_derivatives - (const dealii::VEC&, std::vector >::type >&) const; - - template - void FEValuesViews::SymmetricTensor<2, deal_II_dimension, deal_II_space_dimension> - ::get_function_values - (const dealii::VEC&, std::vector >::type>&) const; - template - void FEValuesViews::SymmetricTensor<2, deal_II_dimension, deal_II_space_dimension> - ::get_function_divergences - (const dealii::VEC&, std::vector >::type>&) const; - - template - void FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension> - ::get_function_values - (const dealii::VEC&, std::vector >::type>&) const; - template - void FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension> - ::get_function_divergences - (const dealii::VEC&, std::vector >::type>&) const; - template - void FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension> - ::get_function_gradients - (const dealii::VEC&, std::vector >::type>&) const; + template void + FEValuesViews::Scalar:: + get_function_values( + const dealii::VEC &, + std::vector::type> &) + const; + template void + FEValuesViews::Scalar:: + get_function_gradients( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Scalar:: + get_function_hessians( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Scalar:: + get_function_laplacians( + const dealii::VEC &, + std::vector::type> &) + const; + template void + FEValuesViews::Scalar:: + get_function_third_derivatives( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + + template void + FEValuesViews::Vector:: + get_function_values( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_gradients( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_symmetric_gradients( + const dealii::VEC &, + std::vector>::type> &) const; + template void + FEValuesViews::Vector:: + get_function_curls( + const dealii::VEC &, + std::vector::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_divergences( + const dealii::VEC &, + std::vector::type> + &) const; + template void + FEValuesViews::Vector:: + get_function_hessians( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_laplacians( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_third_derivatives( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + + template void FEValuesViews::SymmetricTensor<2, + deal_II_dimension, + deal_II_space_dimension>:: + get_function_values( + const dealii::VEC &, + std::vector>::type> &) const; + template void FEValuesViews:: + SymmetricTensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_divergences( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + + template void + FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_values( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_divergences( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_gradients( + const dealii::VEC &, + std::vector< + ProductType>::type> &) + const; #endif -} + } -for (VEC : GENERAL_CONTAINER_TYPES; - Number : ALL_SCALAR_TYPES; - deal_II_dimension : DIMENSIONS; - deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : GENERAL_CONTAINER_TYPES; Number : ALL_SCALAR_TYPES; + deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template - void FEValuesViews::Scalar - ::get_function_values_from_local_dof_values> - (const VEC&, std::vector::value_type>&) const; - - template - void FEValuesViews::Scalar - ::get_function_gradients_from_local_dof_values> - (const VEC&, std::vector::gradient_type>&) const; - - template - void FEValuesViews::Scalar - ::get_function_hessians_from_local_dof_values> - (const VEC&, std::vector::hessian_type>&) const; - - template - void FEValuesViews::Scalar - ::get_function_laplacians_from_local_dof_values> - (const VEC&, std::vector::value_type>&) const; - - template - void FEValuesViews::Scalar - ::get_function_third_derivatives_from_local_dof_values> - (const VEC&, std::vector::third_derivative_type>&) const; - - - - template - void FEValuesViews::Vector - ::get_function_values_from_local_dof_values> - (const VEC&, std::vector::value_type>&) const; - - template - void FEValuesViews::Vector - ::get_function_gradients_from_local_dof_values> - (const VEC&, std::vector::gradient_type>&) const; - - template - void FEValuesViews::Vector - ::get_function_symmetric_gradients_from_local_dof_values> - (const VEC&, std::vector::symmetric_gradient_type>&) const; - - template - void FEValuesViews::Vector - ::get_function_divergences_from_local_dof_values> - (const VEC&, std::vector::divergence_type>&) const; - - template - void FEValuesViews::Vector - ::get_function_curls_from_local_dof_values> - (const VEC&, std::vector::curl_type>&) const; - - template - void FEValuesViews::Vector - ::get_function_hessians_from_local_dof_values> - (const VEC&, std::vector::hessian_type>&) const; - - template - void FEValuesViews::Vector - ::get_function_laplacians_from_local_dof_values> - (const VEC&, std::vector::value_type>&) const; - - template - void FEValuesViews::Vector - ::get_function_third_derivatives_from_local_dof_values> - (const VEC&, std::vector::third_derivative_type>&) const; - - - - template - void FEValuesViews::SymmetricTensor<2,deal_II_dimension, deal_II_space_dimension> - ::get_function_values_from_local_dof_values> - (const VEC&, std::vector::value_type>&) const; - - template - void FEValuesViews::SymmetricTensor<2,deal_II_dimension, deal_II_space_dimension> - ::get_function_divergences_from_local_dof_values> - (const VEC&, std::vector::divergence_type>&) const; - - - - template - void FEValuesViews::Tensor<2,deal_II_dimension, deal_II_space_dimension> - ::get_function_values_from_local_dof_values> - (const VEC&, std::vector::value_type>&) const; - - template - void FEValuesViews::Tensor<2,deal_II_dimension, deal_II_space_dimension> - ::get_function_divergences_from_local_dof_values> - (const VEC&, std::vector::divergence_type>&) const; - - template - void FEValuesViews::Tensor<2,deal_II_dimension, deal_II_space_dimension> - ::get_function_gradients_from_local_dof_values> - (const VEC&, std::vector::gradient_type>&) const; + template void + FEValuesViews::Scalar:: + get_function_values_from_local_dof_values>( + const VEC &, + std::vector::value_type> &) const; + + template void + FEValuesViews::Scalar:: + get_function_gradients_from_local_dof_values>( + const VEC &, + std::vector::gradient_type> &) const; + + template void + FEValuesViews::Scalar:: + get_function_hessians_from_local_dof_values>( + const VEC &, + std::vector::hessian_type> &) const; + + template void + FEValuesViews::Scalar:: + get_function_laplacians_from_local_dof_values>( + const VEC &, + std::vector::value_type> &) const; + + template void + FEValuesViews::Scalar:: + get_function_third_derivatives_from_local_dof_values>( + const VEC &, + std::vector::third_derivative_type> &) + const; + + + + template void + FEValuesViews::Vector:: + get_function_values_from_local_dof_values>( + const VEC &, + std::vector::value_type> &) const; + + template void + FEValuesViews::Vector:: + get_function_gradients_from_local_dof_values>( + const VEC &, + std::vector::gradient_type> &) const; + + template void + FEValuesViews::Vector:: + get_function_symmetric_gradients_from_local_dof_values>( + const VEC &, + std::vector::symmetric_gradient_type> &) + const; + + template void + FEValuesViews::Vector:: + get_function_divergences_from_local_dof_values>( + const VEC &, + std::vector::divergence_type> &) const; + + template void + FEValuesViews::Vector:: + get_function_curls_from_local_dof_values>( + const VEC &, + std::vector::curl_type> &) const; + + template void + FEValuesViews::Vector:: + get_function_hessians_from_local_dof_values>( + const VEC &, + std::vector::hessian_type> &) const; + + template void + FEValuesViews::Vector:: + get_function_laplacians_from_local_dof_values>( + const VEC &, + std::vector::value_type> &) const; + + template void + FEValuesViews::Vector:: + get_function_third_derivatives_from_local_dof_values>( + const VEC &, + std::vector::third_derivative_type> &) + const; + + + + template void FEValuesViews:: + SymmetricTensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_values_from_local_dof_values>( + const VEC &, + std::vector::value_type> &) const; + + template void FEValuesViews:: + SymmetricTensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_divergences_from_local_dof_values>( + const VEC &, + std::vector::divergence_type> &) const; + + + + template void + FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_values_from_local_dof_values>( + const VEC &, + std::vector::value_type> &) const; + + template void + FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_divergences_from_local_dof_values>( + const VEC &, + std::vector::divergence_type> &) const; + + template void + FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_gradients_from_local_dof_values>( + const VEC &, + std::vector::gradient_type> &) const; #endif -} + } -for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template - void FEValuesBase::get_function_values - (const VEC&, std::vector&) const; - template - void FEValuesBase::get_function_values - (const VEC&, const VectorSlice >&, std::vector&) const; - - template - void FEValuesBase::get_function_values - (const VEC&, std::vector > &) const; - - template - void FEValuesBase::get_function_values - (const VEC&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_values - (const VEC&, const VectorSlice >&, - VectorSlice > >, bool) const; - - template - void FEValuesBase::get_function_gradients - (const VEC&, std::vector > &) const; - template - void FEValuesBase::get_function_gradients - (const VEC&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_gradients - (const VEC&, std::vector > > &) const; - template - void FEValuesBase::get_function_gradients - (const VEC&, const VectorSlice >&, - VectorSlice > > >, bool) const; - - template - void FEValuesBase::get_function_hessians - (const VEC&, std::vector > &) const; - template - void FEValuesBase::get_function_hessians - (const VEC&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_hessians - (const VEC&, std::vector > > &, bool) const; - template - void FEValuesBase::get_function_hessians - (const VEC&, const VectorSlice >&, - VectorSlice > > >, bool) const; - - template - void FEValuesBase::get_function_laplacians - (const VEC&, std::vector&) const; - template - void FEValuesBase::get_function_laplacians - (const VEC&, const VectorSlice >&, std::vector&) const; - - template - void FEValuesBase::get_function_laplacians - (const VEC&, std::vector > &) const; - - template - void FEValuesBase::get_function_laplacians - (const VEC&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_laplacians - (const VEC&, const VectorSlice >&, - std::vector > &, bool) const; - - template - void FEValuesBase::get_function_third_derivatives - (const VEC&, std::vector > &) const; - template - void FEValuesBase::get_function_third_derivatives - (const VEC&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_third_derivatives - (const VEC&, std::vector > > &, bool) const; - template - void FEValuesBase::get_function_third_derivatives - (const VEC&, const VectorSlice >&, - VectorSlice > > >, bool) const; + template void FEValuesBase:: + get_function_values(const VEC &, std::vector &) + const; + template void FEValuesBase:: + get_function_values( + const VEC &, + const VectorSlice> &, + std::vector &) const; + + template void FEValuesBase:: + get_function_values(const VEC &, + std::vector> &) const; + + template void FEValuesBase:: + get_function_values( + const VEC &, + const VectorSlice> &, + std::vector> &) const; + + template void FEValuesBase:: + get_function_values( + const VEC &, + const VectorSlice> &, + VectorSlice>>, + bool) const; + + template void FEValuesBase:: + get_function_gradients( + const VEC &, + std::vector> + &) const; + template void FEValuesBase:: + get_function_gradients( + const VEC &, + const VectorSlice> &, + std::vector> + &) const; + + template void FEValuesBase:: + get_function_gradients( + const VEC &, + std::vector>> &) + const; + template void FEValuesBase:: + get_function_gradients( + const VEC &, + const VectorSlice> &, + VectorSlice>>>, + bool) const; + + template void FEValuesBase:: + get_function_hessians( + const VEC &, + std::vector> + &) const; + template void FEValuesBase:: + get_function_hessians( + const VEC &, + const VectorSlice> &, + std::vector> + &) const; + + template void FEValuesBase:: + get_function_hessians( + const VEC &, + std::vector>> &, + bool) const; + template void FEValuesBase:: + get_function_hessians( + const VEC &, + const VectorSlice> &, + VectorSlice>>>, + bool) const; + + template void FEValuesBase:: + get_function_laplacians(const VEC &, std::vector &) + const; + template void FEValuesBase:: + get_function_laplacians( + const VEC &, + const VectorSlice> &, + std::vector &) const; + + template void FEValuesBase:: + get_function_laplacians( + const VEC &, std::vector> &) const; + + template void FEValuesBase:: + get_function_laplacians( + const VEC &, + const VectorSlice> &, + std::vector> &) const; + + template void FEValuesBase:: + get_function_laplacians( + const VEC &, + const VectorSlice> &, + std::vector> &, + bool) const; + + template void FEValuesBase:: + get_function_third_derivatives( + const VEC &, + std::vector> + &) const; + template void FEValuesBase:: + get_function_third_derivatives( + const VEC &, + const VectorSlice> &, + std::vector> + &) const; + + template void FEValuesBase:: + get_function_third_derivatives( + const VEC &, + std::vector>> &, + bool) const; + template void FEValuesBase:: + get_function_third_derivatives( + const VEC &, + const VectorSlice> &, + VectorSlice>>>, + bool) const; #endif -} + } // instantiations for VEC=IndexSet for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension - template - void FEValuesViews::Scalar::get_function_values - (const dealii::IndexSet&, std::vector::type> &) const; - template - void FEValuesViews::Scalar::get_function_gradients - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::Scalar::get_function_hessians - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::Scalar::get_function_laplacians - (const dealii::IndexSet&, std::vector::type>&) const; - template - void FEValuesViews::Scalar::get_function_third_derivatives - (const dealii::IndexSet&, std::vector >::type>&) const; - - template - void FEValuesViews::Vector::get_function_values - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::Vector::get_function_gradients - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::Vector::get_function_symmetric_gradients - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::Vector::get_function_curls - (const dealii::IndexSet&, std::vector::type>&) const; - template - void FEValuesViews::Vector::get_function_divergences - (const dealii::IndexSet&, std::vector::type>&) const; - template - void FEValuesViews::Vector::get_function_hessians - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::Vector::get_function_laplacians - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::Vector::get_function_third_derivatives - (const dealii::IndexSet&, std::vector >::type>&) const; - - template - void FEValuesViews::SymmetricTensor<2,deal_II_dimension,deal_II_space_dimension>::get_function_values - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::SymmetricTensor<2,deal_II_dimension,deal_II_space_dimension>::get_function_divergences - (const dealii::IndexSet&, std::vector >::type>&) const; - - template - void FEValuesViews::Tensor<2,deal_II_dimension,deal_II_space_dimension>::get_function_values - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::Tensor<2,deal_II_dimension,deal_II_space_dimension>::get_function_divergences - (const dealii::IndexSet&, std::vector >::type>&) const; - template - void FEValuesViews::Tensor<2,deal_II_dimension,deal_II_space_dimension>::get_function_gradients - (const dealii::IndexSet&, std::vector >::type>&) const; + template void + FEValuesViews::Scalar:: + get_function_values( + const dealii::IndexSet &, + std::vector::type> &) const; + template void + FEValuesViews::Scalar:: + get_function_gradients( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Scalar:: + get_function_hessians( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Scalar:: + get_function_laplacians( + const dealii::IndexSet &, + std::vector::type> &) const; + template void + FEValuesViews::Scalar:: + get_function_third_derivatives( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + + template void + FEValuesViews::Vector:: + get_function_values( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_gradients( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_symmetric_gradients( + const dealii::IndexSet &, + std::vector>::type> &) const; + template void + FEValuesViews::Vector:: + get_function_curls( + const dealii::IndexSet &, + std::vector::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_divergences( + const dealii::IndexSet &, + std::vector::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_hessians( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_laplacians( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Vector:: + get_function_third_derivatives( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + + template void FEValuesViews::SymmetricTensor<2, + deal_II_dimension, + deal_II_space_dimension>:: + get_function_values( + const dealii::IndexSet &, + std::vector>::type> &) const; + template void FEValuesViews:: + SymmetricTensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_divergences( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + + template void + FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_values( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_divergences( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; + template void + FEValuesViews::Tensor<2, deal_II_dimension, deal_II_space_dimension>:: + get_function_gradients( + const dealii::IndexSet &, + std::vector< + ProductType>::type> &) + const; #endif -} + } // Instantiations of functions in FEValuesBase and IndexSet=IndexSet for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension - template - void FEValuesBase::get_function_values - (const IndexSet&, std::vector&) const; - template - void FEValuesBase::get_function_values - (const IndexSet&, const VectorSlice >&, std::vector&) const; - - template - void FEValuesBase::get_function_values - (const IndexSet&, std::vector > &) const; - - template - void FEValuesBase::get_function_values - (const IndexSet&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_values - (const IndexSet&, const VectorSlice >&, - VectorSlice > >, bool) const; - - template - void FEValuesBase::get_function_gradients - (const IndexSet&, std::vector > &) const; - template - void FEValuesBase::get_function_gradients - (const IndexSet&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_gradients - (const IndexSet&, std::vector > > &) const; - template - void FEValuesBase::get_function_gradients - (const IndexSet&, const VectorSlice >&, - VectorSlice > > >, bool) const; - - template - void FEValuesBase::get_function_hessians - (const IndexSet&, std::vector > &) const; - template - void FEValuesBase::get_function_hessians - (const IndexSet&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_hessians - (const IndexSet&, std::vector > > &, bool) const; - template - void FEValuesBase::get_function_hessians - (const IndexSet&, const VectorSlice >&, - VectorSlice > > >, bool) const; - - template - void FEValuesBase::get_function_laplacians - (const IndexSet&, std::vector&) const; - template - void FEValuesBase::get_function_laplacians - (const IndexSet&, const VectorSlice >&, std::vector&) const; - - template - void FEValuesBase::get_function_laplacians - (const IndexSet&, std::vector > &) const; - - template - void FEValuesBase::get_function_laplacians - (const IndexSet&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_laplacians - (const IndexSet&, const VectorSlice >&, - std::vector > &, bool) const; - - template - void FEValuesBase::get_function_third_derivatives - (const IndexSet&, std::vector > &) const; - template - void FEValuesBase::get_function_third_derivatives - (const IndexSet&, const VectorSlice >&, - std::vector > &) const; - - template - void FEValuesBase::get_function_third_derivatives - (const IndexSet&, std::vector > > &, bool) const; - template - void FEValuesBase::get_function_third_derivatives - (const IndexSet&, const VectorSlice >&, - VectorSlice > > >, bool) const; + template void FEValuesBase:: + get_function_values(const IndexSet &, + std::vector &) const; + template void FEValuesBase:: + get_function_values( + const IndexSet &, + const VectorSlice> &, + std::vector &) const; + + template void FEValuesBase:: + get_function_values( + const IndexSet &, std::vector> &) const; + + template void FEValuesBase:: + get_function_values( + const IndexSet &, + const VectorSlice> &, + std::vector> &) const; + + template void FEValuesBase:: + get_function_values( + const IndexSet &, + const VectorSlice> &, + VectorSlice>>, + bool) const; + + template void FEValuesBase:: + get_function_gradients( + const IndexSet &, + std::vector< + dealii::Tensor<1, deal_II_space_dimension, IndexSet::value_type>> &) + const; + template void FEValuesBase:: + get_function_gradients( + const IndexSet &, + const VectorSlice> &, + std::vector< + dealii::Tensor<1, deal_II_space_dimension, IndexSet::value_type>> &) + const; + + template void FEValuesBase:: + get_function_gradients( + const IndexSet &, + std::vector>> &) + const; + template void FEValuesBase:: + get_function_gradients( + const IndexSet &, + const VectorSlice> &, + VectorSlice>>>, + bool) const; + + template void FEValuesBase:: + get_function_hessians( + const IndexSet &, + std::vector< + dealii::Tensor<2, deal_II_space_dimension, IndexSet::value_type>> &) + const; + template void FEValuesBase:: + get_function_hessians( + const IndexSet &, + const VectorSlice> &, + std::vector< + dealii::Tensor<2, deal_II_space_dimension, IndexSet::value_type>> &) + const; + + template void FEValuesBase:: + get_function_hessians( + const IndexSet &, + std::vector>> &, + bool) const; + template void FEValuesBase:: + get_function_hessians( + const IndexSet &, + const VectorSlice> &, + VectorSlice>>>, + bool) const; + + template void FEValuesBase:: + get_function_laplacians( + const IndexSet &, std::vector &) const; + template void FEValuesBase:: + get_function_laplacians( + const IndexSet &, + const VectorSlice> &, + std::vector &) const; + + template void FEValuesBase:: + get_function_laplacians( + const IndexSet &, std::vector> &) const; + + template void FEValuesBase:: + get_function_laplacians( + const IndexSet &, + const VectorSlice> &, + std::vector> &) const; + + template void FEValuesBase:: + get_function_laplacians( + const IndexSet &, + const VectorSlice> &, + std::vector> &, + bool) const; + + template void FEValuesBase:: + get_function_third_derivatives( + const IndexSet &, + std::vector< + dealii::Tensor<3, deal_II_space_dimension, IndexSet::value_type>> &) + const; + template void FEValuesBase:: + get_function_third_derivatives( + const IndexSet &, + const VectorSlice> &, + std::vector< + dealii::Tensor<3, deal_II_space_dimension, IndexSet::value_type>> &) + const; + + template void FEValuesBase:: + get_function_third_derivatives( + const IndexSet &, + std::vector>> &, + bool) const; + template void FEValuesBase:: + get_function_third_derivatives( + const IndexSet &, + const VectorSlice> &, + VectorSlice>>>, + bool) const; #endif -} + } diff --git a/source/fe/mapping.inst.in b/source/fe/mapping.inst.in index 820ebcf974..3827453ead 100644 --- a/source/fe/mapping.inst.in +++ b/source/fe/mapping.inst.in @@ -15,11 +15,9 @@ - -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class Mapping; #endif -} - + } diff --git a/source/fe/mapping_c1.inst.in b/source/fe/mapping_c1.inst.in index f126307023..e1cb74878f 100644 --- a/source/fe/mapping_c1.inst.in +++ b/source/fe/mapping_c1.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class MappingC1; -} - + } diff --git a/source/fe/mapping_cartesian.inst.in b/source/fe/mapping_cartesian.inst.in index 0a2c6fc192..54e61fbe55 100644 --- a/source/fe/mapping_cartesian.inst.in +++ b/source/fe/mapping_cartesian.inst.in @@ -16,7 +16,6 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class MappingCartesian; -} - + } diff --git a/source/fe/mapping_fe_field.inst.in b/source/fe/mapping_fe_field.inst.in index 65dbf47920..763e24da0a 100644 --- a/source/fe/mapping_fe_field.inst.in +++ b/source/fe/mapping_fe_field.inst.in @@ -15,12 +15,14 @@ - -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; VEC : REAL_VECTOR_TYPES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + VEC : REAL_VECTOR_TYPES) + { #if deal_II_dimension <= deal_II_space_dimension - template class MappingFEField >; + template class MappingFEField< + deal_II_dimension, + deal_II_space_dimension, + VEC, + dealii::DoFHandler>; #endif -} - + } diff --git a/source/fe/mapping_manifold.inst.in b/source/fe/mapping_manifold.inst.in index fb68263630..73307b6d04 100644 --- a/source/fe/mapping_manifold.inst.in +++ b/source/fe/mapping_manifold.inst.in @@ -14,10 +14,9 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class MappingManifold; #endif -} - + } diff --git a/source/fe/mapping_q.inst.in b/source/fe/mapping_q.inst.in index 3c3b8bfcc9..dbcc9b1c6a 100644 --- a/source/fe/mapping_q.inst.in +++ b/source/fe/mapping_q.inst.in @@ -15,11 +15,9 @@ - -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class MappingQ; #endif -} - + } diff --git a/source/fe/mapping_q1.inst.in b/source/fe/mapping_q1.inst.in index e874583f4a..4e20fde96c 100644 --- a/source/fe/mapping_q1.inst.in +++ b/source/fe/mapping_q1.inst.in @@ -14,11 +14,10 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class MappingQ1; template struct StaticMappingQ1; #endif -} - + } diff --git a/source/fe/mapping_q1_eulerian.inst.in b/source/fe/mapping_q1_eulerian.inst.in index a8b83d432a..3a2b1db15c 100644 --- a/source/fe/mapping_q1_eulerian.inst.in +++ b/source/fe/mapping_q1_eulerian.inst.in @@ -14,11 +14,12 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; VEC : REAL_VECTOR_TYPES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + VEC : REAL_VECTOR_TYPES) + { #if deal_II_dimension <= deal_II_space_dimension - template class MappingQ1Eulerian; + template class MappingQ1Eulerian; #endif -} - - + } diff --git a/source/fe/mapping_q_eulerian.inst.in b/source/fe/mapping_q_eulerian.inst.in index 6c185c98b2..34a09d2079 100644 --- a/source/fe/mapping_q_eulerian.inst.in +++ b/source/fe/mapping_q_eulerian.inst.in @@ -14,11 +14,12 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; VEC : REAL_VECTOR_TYPES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + VEC : REAL_VECTOR_TYPES) + { #if deal_II_dimension <= deal_II_space_dimension - template class MappingQEulerian; + template class MappingQEulerian; #endif -} - - + } diff --git a/source/fe/mapping_q_generic.inst.in b/source/fe/mapping_q_generic.inst.in index 886b9cb402..901e5665a4 100644 --- a/source/fe/mapping_q_generic.inst.in +++ b/source/fe/mapping_q_generic.inst.in @@ -14,10 +14,9 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class MappingQGeneric; #endif -} - + } diff --git a/source/gmsh/utilities.inst.in b/source/gmsh/utilities.inst.in index a26d5f8ddc..ac723ddea3 100644 --- a/source/gmsh/utilities.inst.in +++ b/source/gmsh/utilities.inst.in @@ -14,14 +14,13 @@ // --------------------------------------------------------------------- for (deal_II_dimension : DIMENSIONS) -{ + { #if deal_II_dimension > 1 - template - void - create_triangulation_from_boundary_curve(const TopoDS_Edge &boundary, - Triangulation<2,deal_II_dimension> &tria, - const AdditionalParameters &prm); + template void create_triangulation_from_boundary_curve( + const TopoDS_Edge & boundary, + Triangulation<2, deal_II_dimension> &tria, + const AdditionalParameters & prm); #endif -} + } diff --git a/source/grid/cell_id.inst.in b/source/grid/cell_id.inst.in index 61ff77fe99..1bdf2493dd 100644 --- a/source/grid/cell_id.inst.in +++ b/source/grid/cell_id.inst.in @@ -15,14 +15,18 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template Triangulation::cell_iterator CellId::to_cell(const Triangulation &tria) const; + template Triangulation::cell_iterator + CellId::to_cell( + const Triangulation &tria) + const; #endif -} + } for (deal_II_dimension : DIMENSIONS) -{ + { template CellId::binary_type CellId::to_binary() const; -} + } diff --git a/source/grid/grid_generator.inst.in b/source/grid/grid_generator.inst.in index 95fa64890e..4fd6e2958f 100644 --- a/source/grid/grid_generator.inst.in +++ b/source/grid/grid_generator.inst.in @@ -14,182 +14,205 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace GridGenerator \{ #if deal_II_dimension <= deal_II_space_dimension - template void - hyper_rectangle ( + template void + hyper_rectangle( Triangulation &, - const Point&, const Point&, + const Point &, + const Point &, const bool); - template void - hyper_cube ( - Triangulation &, const double, const double, const bool); + template void + hyper_cube( + Triangulation &, + const double, + const double, + const bool); + + template void + subdivided_hyper_cube( + Triangulation &, + const unsigned int, + const double, + const double); + + + template void + subdivided_hyper_rectangle( + Triangulation &, + const std::vector &, + const Point &, + const Point &, + const bool); + + template void + subdivided_parallelepiped( + Triangulation &, + const Point &, + const std::array, deal_II_dimension> + &, + const std::vector &, + const bool colorize); + + template void + hyper_cross( + Triangulation &, + const std::vector &, + const bool); - template void - subdivided_hyper_cube ( + template void + cheese( Triangulation &, - const unsigned int, const double, const double); - - - template void - subdivided_hyper_rectangle - (Triangulation &, - const std::vector&, - const Point&, - const Point&, - const bool); - - template void - subdivided_parallelepiped - (Triangulation &, - const Point &, - const std::array,deal_II_dimension> &, - const std::vector &, - const bool colorize); - - template void - hyper_cross - (Triangulation &, - const std::vector &, const bool); - - template void - cheese - (Triangulation &, - const std::vector &); - - template - void - merge_triangulations - (const Triangulation &triangulation_1, - const Triangulation &triangulation_2, - Triangulation &result); - - template - void - create_union_triangulation - (const Triangulation &triangulation_1, - const Triangulation &triangulation_2, - Triangulation &result); - - template - void - create_triangulation_with_removed_cells (const Triangulation &input_triangulation, - const std::set::active_cell_iterator> &cells_to_remove, - Triangulation &result); + const std::vector &); + + template void + merge_triangulations( + const Triangulation + &triangulation_1, + const Triangulation + &triangulation_2, + Triangulation &result); + + template void + create_union_triangulation( + const Triangulation + &triangulation_1, + const Triangulation + &triangulation_2, + Triangulation &result); + + template void + create_triangulation_with_removed_cells( + const Triangulation + &input_triangulation, + const std::set< + Triangulation::active_cell_iterator> + &cells_to_remove, + Triangulation &result); #endif \} -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; Container : TRIANGULATION_AND_DOFHANDLER_TEMPLATES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + Container : TRIANGULATION_AND_DOFHANDLER_TEMPLATES) + { #if deal_II_dimension <= deal_II_space_dimension - namespace GridGenerator \{ + namespace GridGenerator + \{ -#if deal_II_dimension != 1 - template -#ifndef _MSC_VER - std::map::cell_iterator, - Container::face_iterator> -#else - ExtractBoundaryMesh::return_type -#endif - extract_boundary_mesh (const Container &mesh, - Container &boundary_mesh, - const std::set &boundary_ids); -#endif +# if deal_II_dimension != 1 + template +# ifndef _MSC_VER + std::map< + Container::cell_iterator, + Container::face_iterator> +# else + ExtractBoundaryMesh::return_type +# endif + extract_boundary_mesh( + const Container &mesh, + Container + & boundary_mesh, + const std::set &boundary_ids); +# endif \} #endif - -} + } for (deal_II_dimension : DIMENSIONS) -{ - namespace GridGenerator \{ - - template - void - subdivided_hyper_rectangle( - Triangulation &, - const std::vector > &, - const Point &, - const Point &, - const bool ); - - template - void - general_cell (Triangulation &, - const std::vector > &, - const bool); - - template void - simplex ( + { + namespace GridGenerator + \{ + + template void + subdivided_hyper_rectangle(Triangulation &, + const std::vector> &, + const Point &, + const Point &, + const bool); + + template void + general_cell(Triangulation &, + const std::vector> &, + const bool); + + template void + simplex( Triangulation &, - const std::vector >&); + const std::vector> &); - template void - parallelepiped ( - Triangulation&, - const Point (&) [deal_II_dimension], + template void + parallelepiped( + Triangulation &, + const Point (&)[deal_II_dimension], const bool); - template void - subdivided_parallelepiped ( - Triangulation&, + template void + subdivided_parallelepiped( + Triangulation &, const unsigned int, - const Point (&) [deal_II_dimension], + const Point (&)[deal_II_dimension], const bool); #ifndef _MSC_VER - template void - subdivided_parallelepiped ( - Triangulation&, - const unsigned int (&) [deal_II_dimension], - const Point (&) [deal_II_dimension], + template void + subdivided_parallelepiped( + Triangulation &, + const unsigned int (&)[deal_II_dimension], + const Point (&)[deal_II_dimension], const bool); #else - template void - subdivided_parallelepiped ( - Triangulation&, - const unsigned int*, - const Point (&) [deal_II_dimension], + template void + subdivided_parallelepiped( + Triangulation &, + const unsigned int *, + const Point (&)[deal_II_dimension], const bool); #endif \} -} + } for (deal_II_space_dimension : DIMENSIONS) -{ - namespace GridGenerator \{ + { + namespace GridGenerator + \{ #if deal_II_space_dimension >= 2 - template void - hyper_sphere ( - Triangulation &, const Point &, double); + template void hyper_sphere( + Triangulation &, + const Point &, + double); #endif \} -} - -for (deal_II_dimension : DIMENSIONS ; deal_II_space_dimension : SPACE_DIMENSIONS; deal_II_space_dimension_2 : SPACE_DIMENSIONS) -{ - namespace GridGenerator \{ -#if (deal_II_dimension <= deal_II_space_dimension) && (deal_II_dimension <= deal_II_space_dimension_2) - template - void - flatten_triangulation<>(const Triangulation &, - Triangulation&); + } + +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + deal_II_space_dimension_2 : SPACE_DIMENSIONS) + { + namespace GridGenerator + \{ +#if (deal_II_dimension <= deal_II_space_dimension) && \ + (deal_II_dimension <= deal_II_space_dimension_2) + template void + flatten_triangulation<>( + const Triangulation &, + Triangulation &); #endif \} -} - + } diff --git a/source/grid/grid_in.inst.in b/source/grid/grid_in.inst.in index 8b6bcb36aa..a91a9697ce 100644 --- a/source/grid/grid_in.inst.in +++ b/source/grid/grid_in.inst.in @@ -15,9 +15,8 @@ for (deal_II_dimension, deal_II_space_dimension : DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension template class GridIn; #endif -} - + } diff --git a/source/grid/grid_out.inst.in b/source/grid/grid_out.inst.in index ccda16f1a3..9dc0647328 100644 --- a/source/grid/grid_out.inst.in +++ b/source/grid/grid_out.inst.in @@ -16,93 +16,90 @@ for (deal_II_dimension : DIMENSIONS) -{ + { #if deal_II_dimension > 1 - template void GridOut::write_dx - (const Triangulation&, - std::ostream&) const; - template void GridOut::write_mathgl - (const Triangulation&, - std::ostream&) const; + template void GridOut::write_dx(const Triangulation &, + std::ostream &) const; + template void GridOut::write_mathgl( + const Triangulation &, std::ostream &) const; #endif - template void GridOut::write_msh - (const Triangulation&, - std::ostream&) const; + template void GridOut::write_msh(const Triangulation &, + std::ostream &) const; #if deal_II_dimension != 2 - template void GridOut::write_xfig - (const Triangulation&, - std::ostream&, - const Mapping*) const; + template void GridOut::write_xfig( + const Triangulation &, + std::ostream &, + const Mapping *) const; #endif - template void GridOut::write_gnuplot - (const Triangulation&, - std::ostream&, - const Mapping*) const; - template void GridOut::write_ucd - (const Triangulation &, - std::ostream &) const; - template void GridOut::write_eps - (const Triangulation &, - std::ostream &, - const Mapping *) const; - template void GridOut::write_vtk - (const Triangulation&, - std::ostream&) const; - template void GridOut::write_vtu - (const Triangulation&, - std::ostream&) const; - template void GridOut::write_mesh_per_processor_as_vtu - (const Triangulation&, - const std::string&, - const bool, - const bool) const; + template void GridOut::write_gnuplot( + const Triangulation &, + std::ostream &, + const Mapping *) const; + template void GridOut::write_ucd( + const Triangulation &, std::ostream &) const; + template void GridOut::write_eps( + const Triangulation &, + std::ostream &, + const Mapping *) const; + template void GridOut::write_vtk(const Triangulation &, + std::ostream &) const; + template void GridOut::write_vtu(const Triangulation &, + std::ostream &) const; + template void GridOut::write_mesh_per_processor_as_vtu( + const Triangulation &, + const std::string &, + const bool, + const bool) const; - template void GridOut::write - (const Triangulation &, - std::ostream &, const OutputFormat, - const Mapping *) const; - template void GridOut::write - (const Triangulation &, - std::ostream &, const Mapping *) const; -} + template void GridOut::write( + const Triangulation &, + std::ostream &, + const OutputFormat, + const Mapping *) const; + template void GridOut::write( + const Triangulation &, + std::ostream &, + const Mapping *) const; + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension < deal_II_space_dimension - template void GridOut::write_msh - (const Triangulation&, - std::ostream&) const; - template void GridOut::write_ucd - (const Triangulation &, - std::ostream &) const; - template void GridOut::write_gnuplot - (const Triangulation&, - std::ostream&, - const Mapping*) const; - template void GridOut::write_vtk - (const Triangulation&, - std::ostream&) const; - template void GridOut::write_vtu - (const Triangulation&, - std::ostream&) const; - template void GridOut::write_mesh_per_processor_as_vtu - (const Triangulation&, - const std::string&, - const bool, - const bool) const; + template void GridOut::write_msh( + const Triangulation &, + std::ostream &) const; + template void GridOut::write_ucd( + const Triangulation &, + std::ostream &) const; + template void GridOut::write_gnuplot( + const Triangulation &, + std::ostream &, + const Mapping *) const; + template void GridOut::write_vtk( + const Triangulation &, + std::ostream &) const; + template void GridOut::write_vtu( + const Triangulation &, + std::ostream &) const; + template void GridOut::write_mesh_per_processor_as_vtu( + const Triangulation &, + const std::string &, + const bool, + const bool) const; - template void GridOut::write - (const Triangulation &, - std::ostream &, const OutputFormat, - const Mapping *) const; - template void GridOut::write - (const Triangulation &, - std::ostream &, const Mapping *) const; + template void GridOut::write( + const Triangulation &, + std::ostream &, + const OutputFormat, + const Mapping *) const; + template void GridOut::write( + const Triangulation &, + std::ostream &, + const Mapping *) const; #endif -} - + } diff --git a/source/grid/grid_refinement.inst.in b/source/grid/grid_refinement.inst.in index 1393ff0e09..873b0ac43f 100644 --- a/source/grid/grid_refinement.inst.in +++ b/source/grid/grid_refinement.inst.in @@ -15,111 +15,90 @@ - for (S : REAL_SCALARS; deal_II_dimension : DIMENSIONS) -{ - template - void - GridRefinement:: - refine - (Triangulation &, - const dealii::Vector &, - const double, - const unsigned int); + { + template void + GridRefinement::refine( + Triangulation &, + const dealii::Vector &, + const double, + const unsigned int); - template - void - GridRefinement:: - coarsen - (Triangulation &, - const dealii::Vector &, - const double); + template void + GridRefinement::coarsen( + Triangulation &, + const dealii::Vector &, + const double); - template - void - GridRefinement:: - refine_and_coarsen_fixed_number - (Triangulation &, - const dealii::Vector &, - const double, - const double, - const unsigned int); + template void GridRefinement:: + refine_and_coarsen_fixed_number( + Triangulation &, + const dealii::Vector &, + const double, + const double, + const unsigned int); - template - void - GridRefinement:: - refine_and_coarsen_fixed_fraction - (Triangulation &, - const dealii::Vector &, - const double, - const double, - const unsigned int); + template void + GridRefinement::refine_and_coarsen_fixed_fraction( + Triangulation &, + const dealii::Vector &, + const double, + const double, + const unsigned int); - template - void - GridRefinement:: - refine_and_coarsen_optimize - (Triangulation &, - const dealii::Vector &, - const unsigned int); + template void GridRefinement:: + refine_and_coarsen_optimize( + Triangulation &, + const dealii::Vector &, + const unsigned int); #if deal_II_dimension < 3 - template - void - GridRefinement:: - refine - (Triangulation &, - const dealii::Vector &, - const double, - const unsigned int); + template void + GridRefinement::refine( + Triangulation &, + const dealii::Vector &, + const double, + const unsigned int); - template - void - GridRefinement:: - coarsen - (Triangulation &, - const dealii::Vector &, - const double); + template void + GridRefinement::coarsen( + Triangulation &, + const dealii::Vector &, + const double); - template - void - GridRefinement:: - refine_and_coarsen_fixed_number - (Triangulation &, - const dealii::Vector &, - const double, - const double, - const unsigned int); + template void + GridRefinement::refine_and_coarsen_fixed_number( + Triangulation &, + const dealii::Vector &, + const double, + const double, + const unsigned int); - template - void - GridRefinement:: - refine_and_coarsen_fixed_fraction - (Triangulation &, - const dealii::Vector &, - const double, - const double, - const unsigned int); + template void + GridRefinement::refine_and_coarsen_fixed_fraction( + Triangulation &, + const dealii::Vector &, + const double, + const double, + const unsigned int); - template - void - GridRefinement:: - refine_and_coarsen_optimize - (Triangulation &, - const dealii::Vector &, - const unsigned int); + template void GridRefinement:: + refine_and_coarsen_optimize( + Triangulation &, + const dealii::Vector &, + const unsigned int); #endif -} + } for (deal_II_dimension : DIMENSIONS) -{ - template - std::pair - GridRefinement:: - adjust_refine_and_coarsen_number_fraction - (const unsigned int, - const unsigned int, - const double, - const double); -} - + { + template std::pair GridRefinement:: + adjust_refine_and_coarsen_number_fraction( + const unsigned int, const unsigned int, const double, const double); + } diff --git a/source/grid/grid_tools.inst.in b/source/grid/grid_tools.inst.in index 87e9f54bc4..27c26eb78e 100644 --- a/source/grid/grid_tools.inst.in +++ b/source/grid/grid_tools.inst.in @@ -13,347 +13,399 @@ // // --------------------------------------------------------------------- -for (X : TRIANGULATIONS; deal_II_dimension : DIMENSIONS ; deal_II_space_dimension : SPACE_DIMENSIONS) -{ - +for (X : TRIANGULATIONS; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace GridTools \{ - template - std::pair::type, Point > - find_active_cell_around_point (const Mapping &, - const X &, - const Point &, - const std::vector::type> > &, - const std::vector > > &, - const dealii::internal::ActiveCellIterator::type &, - const std::vector &); - - template - std::vector < BoundingBox< deal_II_space_dimension > > - compute_mesh_predicate_bounding_box< X > - (const X &, - const std::function::type&)> &, - const unsigned int, - const bool, - const unsigned int); + namespace GridTools + \{ + template std::pair< + dealii::internal::ActiveCellIterator::type, + Point> + find_active_cell_around_point( + const Mapping &, + const X &, + const Point &, + const std::vector::type>> &, + const std::vector>> &, + const dealii::internal::ActiveCellIterator::type &, + const std::vector &); + + template std::vector> + compute_mesh_predicate_bounding_box( + const X &, + const std::function::type &)> &, + const unsigned int, + const bool, + const unsigned int); \} #endif -} - + } -// now also instantiate a few additional functions for parallel::distributed::Triangulation -for (deal_II_dimension : DIMENSIONS ; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +// now also instantiate a few additional functions for +// parallel::distributed::Triangulation +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace GridTools \{ - - template - unsigned int - find_closest_vertex_of_cell - (const typename Triangulation::active_cell_iterator &, - const Point &); - - template - std::map - compute_local_to_global_vertex_index_map(const parallel::distributed::Triangulation &triangulation); - - template - std::map > - extract_used_vertices(const Triangulation&mesh, - const Mapping &mapping); - - template - std::pair::active_cell_iterator, - Point > - find_active_cell_around_point(const Cache&, - const Point &, - const typename Triangulation::active_cell_iterator &, - const std::vector &); - - template - std::tuple< std::vector< typename Triangulation< deal_II_dimension, deal_II_space_dimension>::active_cell_iterator >, - std::vector< std::vector< Point< deal_II_dimension > > >, std::vector< std::vector< unsigned int > > > - compute_point_locations(const Cache< deal_II_dimension, deal_II_space_dimension > &, - const std::vector< Point< deal_II_space_dimension > > &, - const typename Triangulation< deal_II_dimension, deal_II_space_dimension>::active_cell_iterator &); - - template - std::tuple< - std::vector< typename Triangulation< deal_II_dimension, deal_II_space_dimension>::active_cell_iterator >, - std::vector< std::vector< Point > >, - std::vector< std::vector< unsigned int > >, - std::vector< std::vector< Point > >, - std::vector< std::vector< unsigned int > > - > - distributed_compute_point_locations - (const Cache< deal_II_dimension, deal_II_space_dimension > &, - const std::vector< Point< deal_II_space_dimension > > &, - const std::vector< std::vector< BoundingBox< deal_II_space_dimension > > > &); + namespace GridTools + \{ + + template unsigned int + find_closest_vertex_of_cell( + const typename Triangulation< + deal_II_dimension, + deal_II_space_dimension>::active_cell_iterator &, + const Point &); + + template std::map + compute_local_to_global_vertex_index_map( + const parallel::distributed::Triangulation + &triangulation); + + template std::map> + extract_used_vertices( + const Triangulation &mesh, + const Mapping &mapping); + + template std::pair< + typename Triangulation::active_cell_iterator, + Point> + find_active_cell_around_point( + const Cache &, + const Point &, + const typename Triangulation< + deal_II_dimension, + deal_II_space_dimension>::active_cell_iterator &, + const std::vector &); + + template std::tuple::active_cell_iterator>, + std::vector>>, + std::vector>> + compute_point_locations( + const Cache &, + const std::vector> &, + const typename Triangulation< + deal_II_dimension, + deal_II_space_dimension>::active_cell_iterator &); + + template std::tuple< + std::vector::active_cell_iterator>, + std::vector>>, + std::vector>, + std::vector>>, + std::vector>> + distributed_compute_point_locations( + const Cache &, + const std::vector> &, + const std::vector>> &); \} #endif -} + } for (deal_II_space_dimension : SPACE_DIMENSIONS) -{ - - dealii::internal::ActiveCellIterator >::type - find_active_cell_around_point (const parallel::distributed::Triangulation &, - const Point &p); - - - std::pair >::type, Point > - find_active_cell_around_point (const Mapping &, - const parallel::distributed::Triangulation &, - const Point &); - - template unsigned int - GridTools::find_closest_vertex(const std::map >& vertices, - const Point& p); - - template std::vector< std::vector< BoundingBox > > - GridTools::exchange_local_bounding_boxes(const std::vector< BoundingBox >&, - MPI_Comm); - - template - std::tuple< std::vector< std::vector< unsigned int > >, - std::map< unsigned int, unsigned int>, - std::map< unsigned int, std::vector< unsigned int > > > - GridTools::guess_point_owner (const std::vector< std::vector< BoundingBox > > &, - const std::vector > &); - -} - - -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ + { + dealii::internal::ActiveCellIterator< + deal_II_space_dimension, + deal_II_space_dimension, + parallel::distributed::Triangulation>::type + find_active_cell_around_point( + const parallel::distributed::Triangulation &, + const Point &p); + + + std::pair< + dealii::internal::ActiveCellIterator< + deal_II_space_dimension, + deal_II_space_dimension, + parallel::distributed::Triangulation>::type, + Point> + find_active_cell_around_point( + const Mapping &, + const parallel::distributed::Triangulation &, + const Point &); + + template unsigned int GridTools::find_closest_vertex( + const std::map> &vertices, + const Point & p); + + template std::vector>> + GridTools::exchange_local_bounding_boxes( + const std::vector> &, MPI_Comm); + + template std::tuple>, + std::map, + std::map>> + GridTools::guess_point_owner( + const std::vector>> &, + const std::vector> &); + } + + +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace GridTools \{ - - template - double - diameter - (const Triangulation &); - - template - double - volume - (const Triangulation &, - const Mapping &); - - template - BoundingBox - compute_bounding_box - (const Triangulation &); - - template - void delete_unused_vertices (std::vector > &, - std::vector > &, - SubCellData &); - - template - void delete_duplicated_vertices (std::vector > &, - std::vector > &, - SubCellData &, - std::vector &, - double); - - template - void shift (const Tensor<1,deal_II_space_dimension> &, - Triangulation &); - - template - void scale (const double, - Triangulation &); - -#if deal_II_space_dimension==3 - template - void - rotate (const double, - const unsigned int, - Triangulation &); -#endif + namespace GridTools + \{ + + template double + diameter( + const Triangulation &); + + template double + volume(const Triangulation &, + const Mapping &); + + template BoundingBox + compute_bounding_box( + const Triangulation &); + + template void + delete_unused_vertices(std::vector> &, + std::vector> &, + SubCellData &); + + template void + delete_duplicated_vertices(std::vector> &, + std::vector> &, + SubCellData &, + std::vector &, + double); + + template void + shift( + const Tensor<1, deal_II_space_dimension> &, + Triangulation &); + + template void + scale( + const double, + Triangulation &); + +# if deal_II_space_dimension == 3 + template void + rotate( + const double, + const unsigned int, + Triangulation &); +# endif + + template void + distort_random( + const double, + Triangulation &, + const bool); + + template void + get_face_connectivity_of_cells( + const Triangulation + & triangulation, + DynamicSparsityPattern &cell_connectivity); + + template void + get_vertex_connectivity_of_cells( + const Triangulation + & triangulation, + DynamicSparsityPattern &cell_connectivity); + + template void + get_vertex_connectivity_of_cells_on_level( + const Triangulation + & triangulation, + const unsigned int level, + DynamicSparsityPattern &cell_connectivity); + + template void + partition_triangulation( + const unsigned int, + Triangulation &, + const SparsityTools::Partitioner); + + template void + partition_triangulation( + const unsigned int, + const std::vector &, + Triangulation &, + const SparsityTools::Partitioner); + + template void + partition_triangulation( + const unsigned int, + const SparsityPattern &, + Triangulation &, + const SparsityTools::Partitioner); + + template void + partition_triangulation( + const unsigned int, + const std::vector &, + const SparsityPattern &, + Triangulation &, + const SparsityTools::Partitioner); + + template void + partition_triangulation_zorder( + const unsigned int, + Triangulation &); + + template void + partition_multigrid_levels( + Triangulation &); + + template void + get_subdomain_association( + const Triangulation &, + std::vector &); - template - void distort_random (const double, - Triangulation &, - const bool); - - template - void get_face_connectivity_of_cells - (const Triangulation &triangulation, - DynamicSparsityPattern &cell_connectivity); - - template - void get_vertex_connectivity_of_cells - (const Triangulation &triangulation, - DynamicSparsityPattern &cell_connectivity); - - template - void get_vertex_connectivity_of_cells_on_level - (const Triangulation &triangulation, - const unsigned int level, - DynamicSparsityPattern &cell_connectivity); - - template - void partition_triangulation (const unsigned int, - Triangulation &, - const SparsityTools::Partitioner); - - template - void partition_triangulation (const unsigned int, - const std::vector &, - Triangulation &, - const SparsityTools::Partitioner); - - template - void partition_triangulation (const unsigned int, - const SparsityPattern &, - Triangulation &, - const SparsityTools::Partitioner); - - template - void partition_triangulation (const unsigned int, - const std::vector &, - const SparsityPattern &, - Triangulation &, - const SparsityTools::Partitioner); - - template - void partition_triangulation_zorder (const unsigned int, - Triangulation &); - - template - void partition_multigrid_levels (Triangulation &); - - template - void get_subdomain_association (const Triangulation &, - std::vector &); - - template - unsigned int count_cells_with_subdomain_association( + template unsigned int + count_cells_with_subdomain_association( const Triangulation &, const types::subdomain_id); - template - std::vector - get_locally_owned_vertices (const Triangulation &); - - template - double - minimal_cell_diameter (const Triangulation &triangulation, - const Mapping &); - - template - double - maximal_cell_diameter (const Triangulation &triangulation, - const Mapping &); - - template - std::map > - get_all_vertices_at_boundary (const Triangulation &tria); - - template - std::vector::active_cell_iterator> > - vertex_to_cell_map(const Triangulation &triangulation); - - template - std::vector > > - vertex_to_cell_centers_directions(const Triangulation &mesh, - const std::vector::active_cell_iterator> > &vertex_to_cells); - -#if deal_II_dimension == deal_II_space_dimension -# if deal_II_dimension > 1 - template - void - laplace_transform (const std::map > &new_points, - Triangulation &triangulation, - const Function *coefficient, - const bool); + template std::vector + get_locally_owned_vertices( + const Triangulation &); + + template double + minimal_cell_diameter( + const Triangulation + &triangulation, + const Mapping &); + + template double + maximal_cell_diameter( + const Triangulation + &triangulation, + const Mapping &); + + template std::map> + get_all_vertices_at_boundary( + const Triangulation &tria); + + template std::vector< + std::set::active_cell_iterator>> + vertex_to_cell_map( + const Triangulation + &triangulation); + + template std::vector>> + vertex_to_cell_centers_directions( + const Triangulation &mesh, + const std::vector::active_cell_iterator>> &vertex_to_cells); + +# if deal_II_dimension == deal_II_space_dimension +# if deal_II_dimension > 1 + template void + laplace_transform( + const std::map> &new_points, + Triangulation & triangulation, + const Function * coefficient, + const bool); + +# endif + + template Triangulation::DistortedCellList + fix_up_distorted_child_cells( + const Triangulation::DistortedCellList + &distorted_cells, + Triangulation + &triangulation); # endif - template - Triangulation::DistortedCellList - fix_up_distorted_child_cells - (const Triangulation::DistortedCellList &distorted_cells, - Triangulation &triangulation); - -#endif - \} #endif + } - - -} - -for (deal_II_dimension : DIMENSIONS ; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_space_dimension >= deal_II_dimension - namespace GridTools \{ - template void copy_boundary_to_manifold_id - (Triangulation &, const bool); - - template void copy_material_to_manifold_id - (Triangulation &, const bool); - - template void map_boundary_to_manifold_ids - (const std::vector &, - const std::vector &, - Triangulation &, - const std::vector &); - - template - void regularize_corner_cells - (Triangulation &, double); + namespace GridTools + \{ + template void + copy_boundary_to_manifold_id( + Triangulation &, + const bool); + + template void + copy_material_to_manifold_id( + Triangulation &, + const bool); + + template void + map_boundary_to_manifold_ids( + const std::vector &, + const std::vector &, + Triangulation &, + const std::vector &); + + template void + regularize_corner_cells( + Triangulation &, + double); \} #endif -} + } for (deal_II_dimension : DIMENSIONS) -{ - template - std::pair - GridTools:: - get_longest_direction - (Triangulation::active_cell_iterator); - - template - void - GridTools:: - remove_hanging_nodes - (Triangulation &tria, bool, unsigned int); - - template - void - GridTools:: - remove_anisotropy - (Triangulation &, double, unsigned int); + { + template std::pair + GridTools::get_longest_direction( + Triangulation::active_cell_iterator); + + template void + GridTools::remove_hanging_nodes( + Triangulation & tria, bool, unsigned int); + + template void + GridTools::remove_anisotropy( + Triangulation &, double, unsigned int); #if deal_II_dimension < 3 - template - std::pair - GridTools:: - get_longest_direction - (Triangulation::active_cell_iterator); - - template - void - GridTools:: - remove_hanging_nodes - (Triangulation &tria, bool, unsigned int); - - template - void - GridTools:: - remove_anisotropy - (Triangulation &, double, unsigned int); + template std::pair + GridTools::get_longest_direction( + Triangulation::active_cell_iterator); + + template void + GridTools::remove_hanging_nodes( + Triangulation & tria, + bool, + unsigned int); + + template void + GridTools::remove_anisotropy( + Triangulation &, + double, + unsigned int); #endif -} + } diff --git a/source/grid/grid_tools_cache.inst.in b/source/grid/grid_tools_cache.inst.in index b50399a44e..acc68a648a 100644 --- a/source/grid/grid_tools_cache.inst.in +++ b/source/grid/grid_tools_cache.inst.in @@ -16,8 +16,8 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension template class Cache; #endif -} + } diff --git a/source/grid/grid_tools_dof_handlers.inst.in b/source/grid/grid_tools_dof_handlers.inst.in index 1444b26d71..f2f0f185b0 100644 --- a/source/grid/grid_tools_dof_handlers.inst.in +++ b/source/grid/grid_tools_dof_handlers.inst.in @@ -1,242 +1,312 @@ -for (X : TRIANGULATION_AND_DOFHANDLERS; deal_II_dimension : DIMENSIONS ; deal_II_space_dimension : SPACE_DIMENSIONS) -{ - +for (X : TRIANGULATION_AND_DOFHANDLERS; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace GridTools \{ - - template - unsigned int - find_closest_vertex (const X &, - const Point &, - const std::vector &); - - template - unsigned int - find_closest_vertex (const Mapping&, - const X &, - const Point &, - const std::vector &); - - template - std::vector::type> - find_cells_adjacent_to_vertex(const X &, - const unsigned int); - - template - dealii::internal::ActiveCellIterator::type - find_active_cell_around_point (const X &, - const Point &, - const std::vector &); - - template - std::pair::type, Point > - find_active_cell_around_point (const Mapping &, - const X &, - const Point &, - const std::vector &); - - template - std::vector::type> - compute_active_cell_halo_layer (const X &, - const std::function::type&)> &); - - template - std::vector - compute_cell_halo_layer_on_level (const X &, - const std::function &, - const unsigned int); - - template - std::vector::type> - compute_ghost_cell_halo_layer (const X &); - - - template - std::vector::type> - compute_active_cell_layer_within_distance (const X &, - const std::function::type&)> &, - const double); - - - template - std::vector::type> - compute_ghost_cell_layer_within_distance (const X &, const double); - - - template - std::pair< Point, Point > - compute_bounding_box (const X &, - const std::function::type&)> &); - - - template - std::list > - get_finest_common_cells (const X &mesh_1, - const X &mesh_2); - - - template - bool - have_same_coarse_mesh (const X &mesh_1, - const X &mesh_2); + namespace GridTools + \{ + + template unsigned int + find_closest_vertex(const X &, + const Point &, + const std::vector &); + + template unsigned int + find_closest_vertex( + const Mapping &, + const X &, + const Point &, + const std::vector &); + + template std::vector< + dealii::internal::ActiveCellIterator::type> + find_cells_adjacent_to_vertex(const X &, const unsigned int); + + template dealii::internal:: + ActiveCellIterator::type + find_active_cell_around_point(const X &, + const Point &, + const std::vector &); + + template std::pair< + dealii::internal::ActiveCellIterator::type, + Point> + find_active_cell_around_point( + const Mapping &, + const X &, + const Point &, + const std::vector &); + + template std::vector< + dealii::internal::ActiveCellIterator::type> + compute_active_cell_halo_layer( + const X &, + const std::function::type &)> &); + + template std::vector + compute_cell_halo_layer_on_level( + const X &, + const std::function &, + const unsigned int); + + template std::vector< + dealii::internal::ActiveCellIterator::type> + compute_ghost_cell_halo_layer(const X &); + + + template std::vector< + dealii::internal::ActiveCellIterator::type> + compute_active_cell_layer_within_distance( + const X &, + const std::function::type &)> &, + const double); + + + template std::vector< + dealii::internal::ActiveCellIterator::type> + compute_ghost_cell_layer_within_distance(const X &, const double); + + + template std::pair, Point> + compute_bounding_box( + const X &, + const std::function::type &)> &); + + + template std::list> + get_finest_common_cells(const X &mesh_1, const X &mesh_2); + + + template bool + have_same_coarse_mesh(const X &mesh_1, const X &mesh_2); \} #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace GridTools \{ - - template - std::pair::active_cell_iterator, - Point > - find_active_cell_around_point - (const hp::MappingCollection &, - const hp::DoFHandler &, - const Point &); + namespace GridTools + \{ + + template std::pair< + hp::DoFHandler::active_cell_iterator, + Point> + find_active_cell_around_point( + const hp::MappingCollection + &, + const hp::DoFHandler &, + const Point &); - \} + \} #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; Container : TRIANGULATION_AND_DOFHANDLER_TEMPLATES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + Container : TRIANGULATION_AND_DOFHANDLER_TEMPLATES) + { #if deal_II_dimension <= deal_II_space_dimension - namespace GridTools \{ - - template - std::vector::active_cell_iterator> - get_patch_around_cell > - (const Container::active_cell_iterator &cell); - - template - std::vector< Container::cell_iterator> - get_cells_at_coarsest_common_level > ( - const std::vector< Container::active_cell_iterator> & patch_cells); - - template - void build_triangulation_from_patch > ( - const std::vector::active_cell_iterator> &patch, - Triangulation::dimension,Container::space_dimension> &local_triangulation, - std::map::active_cell_iterator, - Container::active_cell_iterator > &patch_to_global_tria_map); + namespace GridTools + \{ + + template std::vector< + Container::active_cell_iterator> + get_patch_around_cell< + Container>( + const Container::active_cell_iterator &cell); + + template std::vector< + Container::cell_iterator> + get_cells_at_coarsest_common_level< + Container>( + const std::vector< + Container::active_cell_iterator> + &patch_cells); + + template void + build_triangulation_from_patch< + Container>( + const std::vector< + Container::active_cell_iterator> &patch, + Triangulation< + Container::dimension, + Container::space_dimension> + &local_triangulation, + std::map::active_cell_iterator, + Container::active_cell_iterator> + &patch_to_global_tria_map); \} #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; Container : DOFHANDLER_TEMPLATES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + Container : DOFHANDLER_TEMPLATES) + { #if deal_II_dimension <= deal_II_space_dimension - namespace GridTools \{ + namespace GridTools + \{ - template - std::map< types::global_dof_index,std::vector::active_cell_iterator> > - get_dof_to_support_patch_map > - (Container &dof_handler); + template std::map< + types::global_dof_index, + std::vector::active_cell_iterator>> + get_dof_to_support_patch_map< + Container>( + Container &dof_handler); \} #endif -} + } -// instantiate the following functions only for the "sequential" containers. this -// is a misnomer here, however: the point is simply that we only instantiate -// these functions for certain *iterator* types, and the iterator types are -// the same for sequential and parallel containers; consequently, we get duplicate -// instantiation errors if we instantiate for *all* container types, rather than -// only the sequential ones -for (X : SEQUENTIAL_TRIANGULATION_AND_DOFHANDLERS; deal_II_dimension : DIMENSIONS ; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +// instantiate the following functions only for the "sequential" containers. +// this is a misnomer here, however: the point is simply that we only +// instantiate these functions for certain *iterator* types, and the iterator +// types are the same for sequential and parallel containers; consequently, we +// get duplicate instantiation errors if we instantiate for *all* container +// types, rather than only the sequential ones +for (X : SEQUENTIAL_TRIANGULATION_AND_DOFHANDLERS; + deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace GridTools \{ - - template - bool orthogonal_equality (std::bitset<3> &, - const X::active_face_iterator&, - const X::active_face_iterator&, - const int, - const Tensor<1,deal_II_space_dimension> &, - const FullMatrix &); - - template - bool orthogonal_equality (std::bitset<3> &, - const X::face_iterator&, - const X::face_iterator&, - const int, - const Tensor<1,deal_II_space_dimension> &, - const FullMatrix &); - - template - bool orthogonal_equality (const X::active_face_iterator&, - const X::active_face_iterator&, - const int, - const Tensor<1,deal_II_space_dimension> &, - const FullMatrix &); - - template - bool orthogonal_equality (const X::face_iterator&, - const X::face_iterator&, - const int, - const Tensor<1,deal_II_space_dimension> &, - const FullMatrix &); - - template - void collect_periodic_faces (const X &, - const types::boundary_id, - const types::boundary_id, - const int, - std::vector > &, - const Tensor<1,X::space_dimension> &, - const FullMatrix &); - - template - void collect_periodic_faces (const X &, - const types::boundary_id, - const int, - std::vector > &, - const Tensor<1,X::space_dimension> &, - const FullMatrix &); + namespace GridTools + \{ + + template bool orthogonal_equality( + std::bitset<3> &, + const X::active_face_iterator &, + const X::active_face_iterator &, + const int, + const Tensor<1, deal_II_space_dimension> &, + const FullMatrix &); + + template bool orthogonal_equality( + std::bitset<3> &, + const X::face_iterator &, + const X::face_iterator &, + const int, + const Tensor<1, deal_II_space_dimension> &, + const FullMatrix &); + + template bool + orthogonal_equality( + const X::active_face_iterator &, + const X::active_face_iterator &, + const int, + const Tensor<1, deal_II_space_dimension> &, + const FullMatrix &); + + template bool + orthogonal_equality( + const X::face_iterator &, + const X::face_iterator &, + const int, + const Tensor<1, deal_II_space_dimension> &, + const FullMatrix &); + + template void + collect_periodic_faces( + const X &, + const types::boundary_id, + const types::boundary_id, + const int, + std::vector> &, + const Tensor<1, X::space_dimension> &, + const FullMatrix &); + + template void + collect_periodic_faces( + const X &, + const types::boundary_id, + const int, + std::vector> &, + const Tensor<1, X::space_dimension> &, + const FullMatrix &); \} #endif -} + } -// TODO the text above the last instantiation block implies that this should not be necessary... is it? -for (deal_II_dimension : DIMENSIONS ; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +// TODO the text above the last instantiation block implies that this should not +// be necessary... is it? +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension -#if deal_II_dimension >= 2 - - namespace GridTools \{ - template - void - collect_periodic_faces > - (const parallel::distributed::Triangulation &, - const types::boundary_id, - const types::boundary_id, - const int, - std::vector::cell_iterator> > &, - const Tensor<1,parallel::distributed::Triangulation::space_dimension> &, - const FullMatrix &); - - template - void - collect_periodic_faces > - (const parallel::distributed::Triangulation &, - const types::boundary_id, - const int, - std::vector::cell_iterator> > &, - const Tensor<1,parallel::distributed::Triangulation::space_dimension> &, - const FullMatrix &); +# if deal_II_dimension >= 2 + + namespace GridTools + \{ + template void + collect_periodic_faces< + parallel::distributed::Triangulation>( + const parallel::distributed::Triangulation &, + const types::boundary_id, + const types::boundary_id, + const int, + std::vector::cell_iterator>> &, + const Tensor<1, + parallel::distributed::Triangulation< + deal_II_dimension, + deal_II_space_dimension>::space_dimension> &, + const FullMatrix &); + + template void + collect_periodic_faces< + parallel::distributed::Triangulation>( + const parallel::distributed::Triangulation &, + const types::boundary_id, + const int, + std::vector::cell_iterator>> &, + const Tensor<1, + parallel::distributed::Triangulation< + deal_II_dimension, + deal_II_space_dimension>::space_dimension> &, + const FullMatrix &); \} +# endif #endif -#endif -} + } diff --git a/source/grid/intergrid_map.inst.in b/source/grid/intergrid_map.inst.in index 86f16a652b..550822e371 100644 --- a/source/grid/intergrid_map.inst.in +++ b/source/grid/intergrid_map.inst.in @@ -15,9 +15,10 @@ -for (X : TRIANGULATION_AND_DOFHANDLERS; deal_II_dimension : DIMENSIONS ; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (X : TRIANGULATION_AND_DOFHANDLERS; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class InterGridMap; #endif -} + } diff --git a/source/grid/manifold.inst.in b/source/grid/manifold.inst.in index 5ee4a8db72..76ded2bd4c 100644 --- a/source/grid/manifold.inst.in +++ b/source/grid/manifold.inst.in @@ -15,17 +15,20 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class Manifold; template class FlatManifold; #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; deal_II_chart_dimension : DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + deal_II_chart_dimension : DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template class ChartManifold; + template class ChartManifold; #endif -} + } diff --git a/source/grid/manifold_lib.inst.in b/source/grid/manifold_lib.inst.in index b0f8f3d54b..c8156074c7 100644 --- a/source/grid/manifold_lib.inst.in +++ b/source/grid/manifold_lib.inst.in @@ -13,24 +13,30 @@ // // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class PolarManifold; - template class SphericalManifold; - template class TransfiniteInterpolationManifold; - template class CylindricalManifold; + template class SphericalManifold; + template class TransfiniteInterpolationManifold; + template class CylindricalManifold; #endif #if deal_II_dimension == deal_II_space_dimension template class TorusManifold; #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; deal_II_chart_dimension : DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + deal_II_chart_dimension : DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension -#if deal_II_chart_dimension <= deal_II_space_dimension - template class FunctionManifold; +# if deal_II_chart_dimension <= deal_II_space_dimension + template class FunctionManifold; +# endif #endif -#endif -} + } diff --git a/source/grid/tria.inst.in b/source/grid/tria.inst.in index 93cf0c761d..8d1fb43f05 100644 --- a/source/grid/tria.inst.in +++ b/source/grid/tria.inst.in @@ -15,12 +15,12 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension template class Triangulation; #endif #if deal_II_dimension == deal_II_space_dimension template struct CellData; #endif -} + } diff --git a/source/grid/tria_accessor.inst.in b/source/grid/tria_accessor.inst.in index 28a04eb5cf..9cf8da7f17 100644 --- a/source/grid/tria_accessor.inst.in +++ b/source/grid/tria_accessor.inst.in @@ -16,78 +16,96 @@ for (deal_II_dimension : DIMENSIONS) -{ - template class TriaAccessorBase<1,deal_II_dimension>; + { + template class TriaAccessorBase<1, deal_II_dimension>; #if deal_II_dimension >= 2 - template class TriaAccessorBase<2,deal_II_dimension>; + template class TriaAccessorBase<2, deal_II_dimension>; #endif #if deal_II_dimension >= 3 - template class TriaAccessorBase<3,deal_II_dimension>; + template class TriaAccessorBase<3, deal_II_dimension>; #endif - template class TriaAccessor<1,deal_II_dimension,deal_II_dimension>; + template class TriaAccessor<1, deal_II_dimension, deal_II_dimension>; #if deal_II_dimension >= 2 - template class TriaAccessor<2,deal_II_dimension,deal_II_dimension>; + template class TriaAccessor<2, deal_II_dimension, deal_II_dimension>; #endif #if deal_II_dimension >= 3 - template class TriaAccessor<3,deal_II_dimension,deal_II_dimension>; + template class TriaAccessor<3, deal_II_dimension, deal_II_dimension>; #endif template class CellAccessor; - template class TriaRawIterator >; - template class TriaRawIterator >; - template class TriaIterator >; - template class TriaIterator >; - template class TriaActiveIterator >; - template class TriaActiveIterator >; + template class TriaRawIterator< + TriaAccessor<1, deal_II_dimension, deal_II_dimension>>; + template class TriaRawIterator>; + template class TriaIterator< + TriaAccessor<1, deal_II_dimension, deal_II_dimension>>; + template class TriaIterator>; + template class TriaActiveIterator< + TriaAccessor<1, deal_II_dimension, deal_II_dimension>>; + template class TriaActiveIterator>; #if deal_II_dimension >= 2 - template class TriaRawIterator >; - template class TriaIterator >; - template class TriaActiveIterator >; + template class TriaRawIterator< + TriaAccessor<2, deal_II_dimension, deal_II_dimension>>; + template class TriaIterator< + TriaAccessor<2, deal_II_dimension, deal_II_dimension>>; + template class TriaActiveIterator< + TriaAccessor<2, deal_II_dimension, deal_II_dimension>>; #endif #if deal_II_dimension >= 3 - template class TriaRawIterator >; - template class TriaIterator >; - template class TriaActiveIterator >; + template class TriaRawIterator< + TriaAccessor<3, deal_II_dimension, deal_II_dimension>>; + template class TriaIterator< + TriaAccessor<3, deal_II_dimension, deal_II_dimension>>; + template class TriaActiveIterator< + TriaAccessor<3, deal_II_dimension, deal_II_dimension>>; template class CellAccessor<1, 3>; #endif #if deal_II_dimension == 1 - template class TriaAccessorBase<1,deal_II_dimension,2>; - template class TriaAccessorBase<1,deal_II_dimension,3>; + template class TriaAccessorBase<1, deal_II_dimension, 2>; + template class TriaAccessorBase<1, deal_II_dimension, 3>; - template class TriaAccessor<1,deal_II_dimension,2>; - template class TriaAccessor<1,deal_II_dimension,3>; + template class TriaAccessor<1, deal_II_dimension, 2>; + template class TriaAccessor<1, deal_II_dimension, 3>; #endif #if deal_II_dimension == 2 - template class TriaAccessorBase<1,deal_II_dimension,3>; - template class TriaAccessorBase<2,deal_II_dimension,3>; + template class TriaAccessorBase<1, deal_II_dimension, 3>; + template class TriaAccessorBase<2, deal_II_dimension, 3>; - template class TriaAccessor<1,deal_II_dimension,3>; - template class TriaAccessor<2,deal_II_dimension,3>; + template class TriaAccessor<1, deal_II_dimension, 3>; + template class TriaAccessor<2, deal_II_dimension, 3>; #endif #if deal_II_dimension != 3 - template class CellAccessor; - template class TriaRawIterator >; - template class TriaRawIterator >; - template class TriaIterator >; - template class TriaIterator >; - template class TriaActiveIterator >; - template class TriaActiveIterator >; - - -#if deal_II_dimension == 2 - template class TriaRawIterator >; - template class TriaIterator >; - template class TriaActiveIterator >; -#endif + template class CellAccessor; + template class TriaRawIterator< + TriaAccessor<1, deal_II_dimension, deal_II_dimension + 1>>; + template class TriaRawIterator< + CellAccessor>; + template class TriaIterator< + TriaAccessor<1, deal_II_dimension, deal_II_dimension + 1>>; + template class TriaIterator< + CellAccessor>; + template class TriaActiveIterator< + TriaAccessor<1, deal_II_dimension, deal_II_dimension + 1>>; + template class TriaActiveIterator< + CellAccessor>; + + +# if deal_II_dimension == 2 + template class TriaRawIterator< + TriaAccessor<2, deal_II_dimension, deal_II_dimension + 1>>; + template class TriaIterator< + TriaAccessor<2, deal_II_dimension, deal_II_dimension + 1>>; + template class TriaActiveIterator< + TriaAccessor<2, deal_II_dimension, deal_II_dimension + 1>>; +# endif #endif -} + } diff --git a/source/grid/tria_objects.inst.in b/source/grid/tria_objects.inst.in index f13dd4702f..30b20393c1 100644 --- a/source/grid/tria_objects.inst.in +++ b/source/grid/tria_objects.inst.in @@ -15,9 +15,10 @@ for (deal_II_dimension : DIMENSIONS) -{ + { #if deal_II_dimension >= 3 template dealii::Triangulation::raw_hex_iterator - TriaObjects >::next_free_hex(const dealii::Triangulation &, const unsigned int); + TriaObjects>::next_free_hex( + const dealii::Triangulation &, const unsigned int); #endif -} + } diff --git a/source/hp/dof_handler.inst.in b/source/hp/dof_handler.inst.in index c2a273ea78..12810bb924 100644 --- a/source/hp/dof_handler.inst.in +++ b/source/hp/dof_handler.inst.in @@ -15,75 +15,112 @@ for (deal_II_dimension : DIMENSIONS) -{ + { namespace hp \{ - template class DoFHandler; + template class DoFHandler; #if deal_II_dimension != 3 - template class DoFHandler; - - template - types::global_dof_index - DoFHandler::get_dof_index<1> (const unsigned int, const unsigned int, const unsigned int, const unsigned int) const; - - template - void - DoFHandler::set_dof_index<1> (const unsigned int, const unsigned int, const unsigned int, const unsigned int, const types::global_dof_index) const; - -#if deal_II_dimension >= 2 - template - types::global_dof_index - DoFHandler::get_dof_index<2> (const unsigned int, const unsigned int, const unsigned int, const unsigned int) const; - - template - void - DoFHandler::set_dof_index<2> (const unsigned int, const unsigned int, const unsigned int, const unsigned int, const types::global_dof_index) const; -#endif + template class DoFHandler; + + template types::global_dof_index + DoFHandler::get_dof_index<1>( + const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int) const; + + template void + DoFHandler::set_dof_index<1>( + const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int, + const types::global_dof_index) const; + +# if deal_II_dimension >= 2 + template types::global_dof_index + DoFHandler::get_dof_index<2>( + const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int) const; + + template void + DoFHandler::set_dof_index<2>( + const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int, + const types::global_dof_index) const; +# endif #endif #if deal_II_dimension == 3 - template class DoFHandler<1, 3>; - - template - types::global_dof_index - DoFHandler<1,3>::get_dof_index<1> (const unsigned int, const unsigned int, const unsigned int, const unsigned int) const; - - template - void - DoFHandler<1,3>::set_dof_index<1> (const unsigned int, const unsigned int, const unsigned int, const unsigned int, const types::global_dof_index) const; + template class DoFHandler<1, 3>; + + template types::global_dof_index + DoFHandler<1, 3>::get_dof_index<1>(const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int) const; + + template void + DoFHandler<1, 3>::set_dof_index<1>(const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int, + const types::global_dof_index) const; #endif - template - types::global_dof_index - DoFHandler::get_dof_index<1> (const unsigned int, const unsigned int, const unsigned int, const unsigned int) const; + template types::global_dof_index + DoFHandler::get_dof_index<1>(const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int) const; #if deal_II_dimension >= 2 - template - types::global_dof_index - DoFHandler::get_dof_index<2> (const unsigned int, const unsigned int, const unsigned int, const unsigned int) const; - -#if deal_II_dimension >= 3 - template - types::global_dof_index - DoFHandler::get_dof_index<3> (const unsigned int, const unsigned int, const unsigned int, const unsigned int) const; -#endif + template types::global_dof_index + DoFHandler::get_dof_index<2>(const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int) const; + +# if deal_II_dimension >= 3 + template types::global_dof_index + DoFHandler::get_dof_index<3>(const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int) const; +# endif #endif - template - void - DoFHandler::set_dof_index<1> (const unsigned int, const unsigned int, const unsigned int, const unsigned int, const types::global_dof_index) const; + template void + DoFHandler::set_dof_index<1>( + const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int, + const types::global_dof_index) const; #if deal_II_dimension >= 2 - template - void - DoFHandler::set_dof_index<2> (const unsigned int, const unsigned int, const unsigned int, const unsigned int, const types::global_dof_index) const; - -#if deal_II_dimension >= 3 - template - void - DoFHandler::set_dof_index<3> (const unsigned int, const unsigned int, const unsigned int, const unsigned int, const types::global_dof_index) const; -#endif + template void + DoFHandler::set_dof_index<2>( + const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int, + const types::global_dof_index) const; + +# if deal_II_dimension >= 3 + template void + DoFHandler::set_dof_index<3>( + const unsigned int, + const unsigned int, + const unsigned int, + const unsigned int, + const types::global_dof_index) const; +# endif #endif \} -} + } diff --git a/source/hp/fe_collection.inst.in b/source/hp/fe_collection.inst.in index fd8e1dbbe7..ad626c0057 100644 --- a/source/hp/fe_collection.inst.in +++ b/source/hp/fe_collection.inst.in @@ -15,16 +15,16 @@ for (deal_II_dimension : DIMENSIONS) -{ + { namespace hp \{ - template class FECollection; + template class FECollection; #if deal_II_dimension != 3 - template class FECollection; + template class FECollection; #endif #if deal_II_dimension == 3 - template class FECollection<1,3>; + template class FECollection<1, 3>; #endif \} -} + } diff --git a/source/hp/fe_values.inst.in b/source/hp/fe_values.inst.in index ce06a0a806..693e50b7bc 100644 --- a/source/hp/fe_values.inst.in +++ b/source/hp/fe_values.inst.in @@ -15,25 +15,28 @@ for (deal_II_dimension : DIMENSIONS) -{ + { namespace internal \{ - namespace hp - \{ - template class FEValuesBase >; - template class FEValuesBase >; - template class FEValuesBase >; - \} + namespace hp + \{ + template class FEValuesBase>; + template class FEValuesBase>; + template class FEValuesBase>; + \} \} namespace hp \{ - template class FEValues; - template class FEFaceValues; - template class FESubfaceValues; + template class FEValues; + template class FEFaceValues; + template class FESubfaceValues; \} @@ -42,22 +45,28 @@ for (deal_II_dimension : DIMENSIONS) namespace internal \{ - namespace hp - \{ - template class FEValuesBase >; - template class FEValuesBase >; - template class FEValuesBase >; - \} + namespace hp + \{ + template class FEValuesBase< + deal_II_dimension, + deal_II_dimension, + dealii::FEValues>; + template class FEValuesBase< + deal_II_dimension, + deal_II_dimension - 1, + dealii::FEFaceValues>; + template class FEValuesBase< + deal_II_dimension, + deal_II_dimension - 1, + dealii::FESubfaceValues>; + \} \} namespace hp \{ - template class FEValues; - template class FEFaceValues; - template class FESubfaceValues; + template class FEValues; + template class FEFaceValues; + template class FESubfaceValues; \} #endif @@ -65,38 +74,58 @@ for (deal_II_dimension : DIMENSIONS) namespace internal \{ - namespace hp - \{ - template class FEValuesBase<1,1, - dealii::FEValues<1,3> >; - template class FEValuesBase<1,1-1, - dealii::FEFaceValues<1,3> >; - template class FEValuesBase<1,1-1, - dealii::FESubfaceValues<1,3> >; - \} + namespace hp + \{ + template class FEValuesBase<1, 1, dealii::FEValues<1, 3>>; + template class FEValuesBase<1, 1 - 1, dealii::FEFaceValues<1, 3>>; + template class FEValuesBase<1, 1 - 1, dealii::FESubfaceValues<1, 3>>; + \} \} namespace hp \{ - template class FEValues<1, 3>; - template class FEFaceValues<1, 3>; - template class FESubfaceValues<1, 3>; + template class FEValues<1, 3>; + template class FEFaceValues<1, 3>; + template class FESubfaceValues<1, 3>; \} #endif -} + } -for (dof_handler : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; lda : BOOL) -{ +for (dof_handler : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS; + lda : BOOL) + { namespace hp \{ #if deal_II_dimension <= deal_II_space_dimension - template void FEValues::reinit( - TriaIterator, lda> >, unsigned int, unsigned int, unsigned int); - template void FEFaceValues::reinit( - TriaIterator, lda> >, unsigned int, unsigned int, unsigned int, unsigned int); - template void FESubfaceValues::reinit( - TriaIterator, lda> >, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int); + template void + FEValues::reinit( + TriaIterator, + lda>>, + unsigned int, + unsigned int, + unsigned int); + template void + FEFaceValues::reinit( + TriaIterator, + lda>>, + unsigned int, + unsigned int, + unsigned int, + unsigned int); + template void + FESubfaceValues::reinit( + TriaIterator, + lda>>, + unsigned int, + unsigned int, + unsigned int, + unsigned int, + unsigned int); #endif \} -} + } diff --git a/source/hp/mapping_collection.inst.in b/source/hp/mapping_collection.inst.in index f709c803ac..6047a210e5 100644 --- a/source/hp/mapping_collection.inst.in +++ b/source/hp/mapping_collection.inst.in @@ -15,20 +15,21 @@ for (deal_II_dimension : DIMENSIONS) -{ + { namespace hp \{ - template class MappingCollection; - template struct StaticMappingQ1; + template class MappingCollection; + template struct StaticMappingQ1; #if deal_II_dimension != 3 - template class MappingCollection; - template struct StaticMappingQ1; + template class MappingCollection; + template struct StaticMappingQ1; #endif #if deal_II_dimension == 3 - template class MappingCollection<1,3>; - template struct StaticMappingQ1<1,3>; + template class MappingCollection<1, 3>; + template struct StaticMappingQ1<1, 3>; #endif \} -} + } diff --git a/source/lac/block_sparse_matrix.inst.in b/source/lac/block_sparse_matrix.inst.in index 2f21d6c341..ffd6359a3a 100644 --- a/source/lac/block_sparse_matrix.inst.in +++ b/source/lac/block_sparse_matrix.inst.in @@ -14,6 +14,6 @@ // --------------------------------------------------------------------- for (S : REAL_SCALARS) -{ + { template class BlockSparseMatrix; -} + } diff --git a/source/lac/block_vector.inst.in b/source/lac/block_vector.inst.in index bd6946b7bb..aa47c33e13 100644 --- a/source/lac/block_vector.inst.in +++ b/source/lac/block_vector.inst.in @@ -16,25 +16,25 @@ for (S : REAL_AND_COMPLEX_SCALARS) -{ + { template class BlockVector; -} + } for (S1, S2 : REAL_SCALARS) -{ - template void BlockVector::reinit(const BlockVector&, - const bool); -} + { + template void BlockVector::reinit(const BlockVector &, + const bool); + } for (S1, S2 : COMPLEX_SCALARS) -{ - template void BlockVector::reinit(const BlockVector&, - const bool); -} + { + template void BlockVector::reinit(const BlockVector &, + const bool); + } for (S1 : COMPLEX_SCALARS; S2 : REAL_SCALARS) -{ - template void BlockVector::reinit(const BlockVector&, - const bool); -} + { + template void BlockVector::reinit(const BlockVector &, + const bool); + } diff --git a/source/lac/chunk_sparse_matrix.inst.in b/source/lac/chunk_sparse_matrix.inst.in index 62480fad38..7ecd1f8bf0 100644 --- a/source/lac/chunk_sparse_matrix.inst.in +++ b/source/lac/chunk_sparse_matrix.inst.in @@ -18,107 +18,78 @@ // real instantiations for (S : REAL_SCALARS) -{ + { template class ChunkSparseMatrix; -} + } for (S1, S2 : REAL_SCALARS) -{ - template ChunkSparseMatrix & - ChunkSparseMatrix::copy_from (const ChunkSparseMatrix &); + { + template ChunkSparseMatrix &ChunkSparseMatrix::copy_from( + const ChunkSparseMatrix &); - template - void ChunkSparseMatrix::copy_from (const FullMatrix &); + template void ChunkSparseMatrix::copy_from(const FullMatrix &); - template void ChunkSparseMatrix::add (const S1, - const ChunkSparseMatrix &); -} + template void ChunkSparseMatrix::add(const S1, + const ChunkSparseMatrix &); + } for (S1, S2 : REAL_SCALARS) -{ - template S2 - ChunkSparseMatrix:: - matrix_norm_square (const Vector &) const; - - template S2 - ChunkSparseMatrix:: - matrix_scalar_product (const Vector &, - const Vector &) const; - - template S2 ChunkSparseMatrix:: - residual (Vector &, - const Vector &, - const Vector &) const; - - template void ChunkSparseMatrix:: - precondition_SSOR (Vector &, - const Vector &, - const S1) const; - - template void ChunkSparseMatrix:: - precondition_SOR (Vector &, - const Vector &, - const S1) const; - - template void ChunkSparseMatrix:: - precondition_TSOR (Vector &, - const Vector &, - const S1) const; - - template void ChunkSparseMatrix:: - precondition_Jacobi (Vector &, - const Vector &, - const S1) const; - - template void ChunkSparseMatrix:: - SOR (Vector &, - const S1) const; - template void ChunkSparseMatrix:: - TSOR (Vector &, - const S1) const; - template void ChunkSparseMatrix:: - SSOR (Vector &, - const S1) const; - template void ChunkSparseMatrix:: - PSOR (Vector &, - const std::vector&, - const std::vector&, - const S1) const; - template void ChunkSparseMatrix:: - TPSOR (Vector &, - const std::vector&, - const std::vector&, - const S1) const; - template void ChunkSparseMatrix:: - SOR_step (Vector &, - const Vector &, - const S1) const; - template void ChunkSparseMatrix:: - TSOR_step (Vector &, - const Vector &, - const S1) const; - template void ChunkSparseMatrix:: - SSOR_step (Vector &, - const Vector &, - const S1) const; -} - - -for (S1, S2, S3 : REAL_SCALARS; - V1, V2 : DEAL_II_VEC_TEMPLATES) -{ - template void ChunkSparseMatrix:: - vmult (V1 &, const V2 &) const; - template void ChunkSparseMatrix:: - Tvmult (V1 &, const V2 &) const; - template void ChunkSparseMatrix:: - vmult_add (V1 &, const V2 &) const; - template void ChunkSparseMatrix:: - Tvmult_add (V1 &, const V2 &) const; -} + { + template S2 ChunkSparseMatrix::matrix_norm_square( + const Vector &) const; + + template S2 ChunkSparseMatrix::matrix_scalar_product( + const Vector &, const Vector &) const; + + template S2 ChunkSparseMatrix::residual( + Vector &, const Vector &, const Vector &) const; + + template void ChunkSparseMatrix::precondition_SSOR( + Vector &, const Vector &, const S1) const; + + template void ChunkSparseMatrix::precondition_SOR( + Vector &, const Vector &, const S1) const; + + template void ChunkSparseMatrix::precondition_TSOR( + Vector &, const Vector &, const S1) const; + + template void ChunkSparseMatrix::precondition_Jacobi( + Vector &, const Vector &, const S1) const; + + template void ChunkSparseMatrix::SOR(Vector &, const S1) const; + template void ChunkSparseMatrix::TSOR(Vector &, const S1) const; + template void ChunkSparseMatrix::SSOR(Vector &, const S1) const; + template void ChunkSparseMatrix::PSOR( + Vector &, + const std::vector &, + const std::vector &, + const S1) const; + template void ChunkSparseMatrix::TPSOR( + Vector &, + const std::vector &, + const std::vector &, + const S1) const; + template void ChunkSparseMatrix::SOR_step( + Vector &, const Vector &, const S1) const; + template void ChunkSparseMatrix::TSOR_step( + Vector &, const Vector &, const S1) const; + template void ChunkSparseMatrix::SSOR_step( + Vector &, const Vector &, const S1) const; + } + + +for (S1, S2, S3 : REAL_SCALARS; V1, V2 : DEAL_II_VEC_TEMPLATES) + { + template void ChunkSparseMatrix::vmult(V1 &, const V2 &) const; + template void ChunkSparseMatrix::Tvmult(V1 &, const V2 &) const; + template void ChunkSparseMatrix::vmult_add(V1 &, const V2 &) + const; + template void ChunkSparseMatrix::Tvmult_add(V1 &, const V2 &) + const; + } diff --git a/source/lac/constraint_matrix.inst.in b/source/lac/constraint_matrix.inst.in index 1202136ec7..ada49688b1 100644 --- a/source/lac/constraint_matrix.inst.in +++ b/source/lac/constraint_matrix.inst.in @@ -13,102 +13,111 @@ // // --------------------------------------------------------------------- -for (S: REAL_SCALARS; T : DEAL_II_VEC_TEMPLATES) -{ - template void ConstraintMatrix::condense >(const T &, T &) const; - template void ConstraintMatrix::condense >(T &vec) const; - template void ConstraintMatrix::distribute_local_to_global > ( - const Vector&, const std::vector &, T &, const FullMatrix&) const; - template void ConstraintMatrix::distribute_local_to_global > ( - const Vector&, const std::vector &, const std::vector &, T &, const FullMatrix&, bool) const; - template void ConstraintMatrix::set_zero >(T &) const; -} - - -for (S: REAL_SCALARS; T : DEAL_II_VEC_TEMPLATES) -{ - template void ConstraintMatrix::condense >(const LinearAlgebra::distributed::T &, LinearAlgebra::distributed::T &) const; - template void ConstraintMatrix::condense >(LinearAlgebra::distributed::T &vec) const; - - template - void - ConstraintMatrix::distribute_local_to_global > - (const Vector&, - const std::vector &, - LinearAlgebra::distributed::T &, - const FullMatrix&) const; - - template - void - ConstraintMatrix::distribute_local_to_global > - (const Vector&, - const std::vector &, - const std::vector &, - LinearAlgebra::distributed::T &, - const FullMatrix&, - bool) const; - - template - void - ConstraintMatrix::distribute_local_to_global > > - (const FullMatrix &, - const std::vector< size_type > &, - DiagonalMatrix > &) const; - - template - void - ConstraintMatrix::distribute_local_to_global >, LinearAlgebra::distributed::T > - (const FullMatrix &, - const Vector&, - const std::vector< size_type > &, - DiagonalMatrix > &, - LinearAlgebra::distributed::T&, - bool, - std::integral_constant) const; - - template - void - ConstraintMatrix::distribute_local_to_global >, T > - (const FullMatrix &, - const Vector&, - const std::vector< size_type > &, - DiagonalMatrix > &, - T&, - bool, - std::integral_constant) const; - - template - void - ConstraintMatrix::set_zero >(LinearAlgebra::distributed::T &) const; -} - - -for (V: EXTERNAL_PARALLEL_VECTORS) -{ - template void ConstraintMatrix::set_zero(V&) const; -} +for (S : REAL_SCALARS; T : DEAL_II_VEC_TEMPLATES) + { + template void ConstraintMatrix::condense>(const T &, T &) const; + template void ConstraintMatrix::condense>(T & vec) const; + template void ConstraintMatrix::distribute_local_to_global>( + const Vector &, + const std::vector &, + T &, + const FullMatrix &) const; + template void ConstraintMatrix::distribute_local_to_global>( + const Vector &, + const std::vector &, + const std::vector &, + T &, + const FullMatrix &, + bool) const; + template void ConstraintMatrix::set_zero>(T &) const; + } + + +for (S : REAL_SCALARS; T : DEAL_II_VEC_TEMPLATES) + { + template void ConstraintMatrix::condense>( + const LinearAlgebra::distributed::T &, + LinearAlgebra::distributed::T &) const; + template void ConstraintMatrix::condense>( + LinearAlgebra::distributed::T & vec) const; + + template void ConstraintMatrix::distribute_local_to_global< + LinearAlgebra::distributed::T>( + const Vector &, + const std::vector &, + LinearAlgebra::distributed::T &, + const FullMatrix &) const; + + template void ConstraintMatrix::distribute_local_to_global< + LinearAlgebra::distributed::T>( + const Vector &, + const std::vector &, + const std::vector &, + LinearAlgebra::distributed::T &, + const FullMatrix &, + bool) const; + + template void ConstraintMatrix::distribute_local_to_global< + DiagonalMatrix>>( + const FullMatrix &, + const std::vector &, + DiagonalMatrix> &) const; + + template void ConstraintMatrix::distribute_local_to_global< + DiagonalMatrix>, + LinearAlgebra::distributed::T>( + const FullMatrix &, + const Vector &, + const std::vector &, + DiagonalMatrix> &, + LinearAlgebra::distributed::T &, + bool, + std::integral_constant) const; + + template void ConstraintMatrix::distribute_local_to_global< + DiagonalMatrix>, + T>(const FullMatrix &, + const Vector &, + const std::vector &, + DiagonalMatrix> &, + T &, + bool, + std::integral_constant) const; + + template void ConstraintMatrix::set_zero>( + LinearAlgebra::distributed::T &) const; + } + + +for (V : EXTERNAL_PARALLEL_VECTORS) + { + template void ConstraintMatrix::set_zero(V &) const; + } for (S : REAL_SCALARS) -{ - template void ConstraintMatrix::condense(SparseMatrix&) const; - template void ConstraintMatrix::condense(BlockSparseMatrix&) const; -} + { + template void ConstraintMatrix::condense(SparseMatrix &) const; + template void ConstraintMatrix::condense(BlockSparseMatrix &) const; + } for (S1 : REAL_SCALARS; S2 : REAL_SCALARS) -{ - template void ConstraintMatrix::condense >(SparseMatrix&, Vector&) const; - template void ConstraintMatrix::condense >(BlockSparseMatrix&, BlockVector&) const; -} + { + template void ConstraintMatrix::condense>( + SparseMatrix &, Vector &) const; + template void ConstraintMatrix::condense>( + BlockSparseMatrix &, BlockVector &) const; + } for (S1 : COMPLEX_SCALARS) -{ - template void ConstraintMatrix::condense >(SparseMatrix&, Vector&) const; -} + { + template void ConstraintMatrix::condense>( + SparseMatrix &, Vector &) const; + } for (Vec : VECTOR_TYPES) -{ + { template void ConstraintMatrix::distribute(Vec &) const; -} + } diff --git a/source/lac/full_matrix.inst.in b/source/lac/full_matrix.inst.in index b0da7107fe..2acc51f0d3 100644 --- a/source/lac/full_matrix.inst.in +++ b/source/lac/full_matrix.inst.in @@ -16,227 +16,218 @@ for (S : REAL_AND_COMPLEX_SCALARS) -{ + { template class FullMatrix; template void FullMatrix::print( - LogStream&, const unsigned int, const unsigned int) const; + LogStream &, const unsigned int, const unsigned int) const; template void FullMatrix::print( - std::ostream&, const unsigned int, const unsigned int) const; - - template void FullMatrix::copy_from<1>( - const Tensor<2,1>&, const unsigned int, const unsigned int, unsigned int, const unsigned int, const size_type, const size_type); - - template void FullMatrix::copy_from<2>( - const Tensor<2,2>&, const unsigned int, const unsigned int, unsigned int, const unsigned int, const size_type, const size_type); - - template void FullMatrix::copy_from<3>( - const Tensor<2,3>&, const unsigned int, const unsigned int, unsigned int, const unsigned int, const size_type, const size_type); -} + std::ostream &, const unsigned int, const unsigned int) const; + + template void FullMatrix::copy_from<1>(const Tensor<2, 1> &, + const unsigned int, + const unsigned int, + unsigned int, + const unsigned int, + const size_type, + const size_type); + + template void FullMatrix::copy_from<2>(const Tensor<2, 2> &, + const unsigned int, + const unsigned int, + unsigned int, + const unsigned int, + const size_type, + const size_type); + + template void FullMatrix::copy_from<3>(const Tensor<2, 3> &, + const unsigned int, + const unsigned int, + unsigned int, + const unsigned int, + const size_type, + const size_type); + } for (S : REAL_SCALARS) -{ - template void FullMatrix::copy_to<1>( - Tensor<2,1>&, const size_type, const size_type, const size_type, const size_type, const unsigned int, const unsigned int) const; - - template void FullMatrix::copy_to<2>( - Tensor<2,2>&, const size_type, const size_type, const size_type, const size_type, const unsigned int, const unsigned int) const; - - template void FullMatrix::copy_to<3>( - Tensor<2,3>&, const size_type, const size_type, const size_type, const size_type, const unsigned int, const unsigned int) const; -} + { + template void FullMatrix::copy_to<1>(Tensor<2, 1> &, + const size_type, + const size_type, + const size_type, + const size_type, + const unsigned int, + const unsigned int) const; + + template void FullMatrix::copy_to<2>(Tensor<2, 2> &, + const size_type, + const size_type, + const size_type, + const size_type, + const unsigned int, + const unsigned int) const; + + template void FullMatrix::copy_to<3>(Tensor<2, 3> &, + const size_type, + const size_type, + const size_type, + const size_type, + const unsigned int, + const unsigned int) const; + } for (S1, S2 : REAL_SCALARS) -{ - template - FullMatrix& FullMatrix::operator = (const LAPACKFullMatrix&); - - template - void FullMatrix::fill ( - const FullMatrix&, size_type, size_type, size_type, size_type); - template - void FullMatrix::add (const S1, const FullMatrix&); - template - void FullMatrix::add (const S1, const FullMatrix&, - const S1, const FullMatrix&); - template - void FullMatrix::add (const S1, const FullMatrix&, - const S1, const FullMatrix&, - const S1, const FullMatrix&); - template - void FullMatrix::add ( - const FullMatrix&, S1, size_type, size_type, size_type, size_type); - template - void FullMatrix::Tadd (const S1, const FullMatrix&); - template - void FullMatrix::Tadd ( - const FullMatrix&, S1, size_type, size_type, size_type, size_type); - template - void FullMatrix::equ (const S1, const FullMatrix&); - template - void FullMatrix::equ (const S1, const FullMatrix&, - const S1, const FullMatrix&); - template - void FullMatrix::equ (const S1, const FullMatrix&, - const S1, const FullMatrix&, - const S1, const FullMatrix&); - template - void FullMatrix::mmult (FullMatrix&, const FullMatrix&, const bool) const; - template - void FullMatrix::Tmmult (FullMatrix&, const FullMatrix&, const bool) const; - template - void FullMatrix::mTmult (FullMatrix&, const FullMatrix&, const bool) const; - template - void FullMatrix::TmTmult (FullMatrix&, const FullMatrix&, const bool) const; - template - void FullMatrix::invert (const FullMatrix&); - - template - void FullMatrix::left_invert (const FullMatrix &); - template - void FullMatrix::right_invert (const FullMatrix &); - - template - void FullMatrix::fill_permutation ( - const FullMatrix&, - const std::vector&, - const std::vector&); - - template - void FullMatrix::cholesky (const FullMatrix&); - - template - void FullMatrix::outer_product (const Vector&, - const Vector&); -} + { + template FullMatrix &FullMatrix::operator=( + const LAPACKFullMatrix &); + + template void FullMatrix::fill( + const FullMatrix &, size_type, size_type, size_type, size_type); + template void FullMatrix::add(const S1, const FullMatrix &); + template void FullMatrix::add( + const S1, const FullMatrix &, const S1, const FullMatrix &); + template void FullMatrix::add(const S1, + const FullMatrix &, + const S1, + const FullMatrix &, + const S1, + const FullMatrix &); + template void FullMatrix::add( + const FullMatrix &, S1, size_type, size_type, size_type, size_type); + template void FullMatrix::Tadd(const S1, const FullMatrix &); + template void FullMatrix::Tadd( + const FullMatrix &, S1, size_type, size_type, size_type, size_type); + template void FullMatrix::equ(const S1, const FullMatrix &); + template void FullMatrix::equ( + const S1, const FullMatrix &, const S1, const FullMatrix &); + template void FullMatrix::equ(const S1, + const FullMatrix &, + const S1, + const FullMatrix &, + const S1, + const FullMatrix &); + template void FullMatrix::mmult( + FullMatrix &, const FullMatrix &, const bool) const; + template void FullMatrix::Tmmult( + FullMatrix &, const FullMatrix &, const bool) const; + template void FullMatrix::mTmult( + FullMatrix &, const FullMatrix &, const bool) const; + template void FullMatrix::TmTmult( + FullMatrix &, const FullMatrix &, const bool) const; + template void FullMatrix::invert(const FullMatrix &); + + template void FullMatrix::left_invert(const FullMatrix &); + template void FullMatrix::right_invert(const FullMatrix &); + + template void FullMatrix::fill_permutation( + const FullMatrix &, + const std::vector &, + const std::vector &); + + template void FullMatrix::cholesky(const FullMatrix &); + + template void FullMatrix::outer_product(const Vector &, + const Vector &); + } // real matrices can be multiplied by real or complex vectors for (S1 : REAL_SCALARS; S2 : REAL_AND_COMPLEX_SCALARS) -{ - template - void FullMatrix::vmult( - Vector&, const Vector&, bool) const; - template - void FullMatrix::Tvmult( - Vector&, const Vector&, bool) const; - template - S2 FullMatrix::matrix_norm_square ( - const Vector &) const; - template - S2 FullMatrix::matrix_scalar_product( - const Vector&, const Vector&) const; - template - void FullMatrix::forward( - Vector&, const Vector&) const; - template - void FullMatrix::backward( - Vector&, const Vector&) const; - - template - void FullMatrix::precondition_Jacobi ( - Vector &, const Vector &, const S1) const; -} + { + template void FullMatrix::vmult( + Vector &, const Vector &, bool) const; + template void FullMatrix::Tvmult( + Vector &, const Vector &, bool) const; + template S2 FullMatrix::matrix_norm_square(const Vector &) + const; + template S2 FullMatrix::matrix_scalar_product( + const Vector &, const Vector &) const; + template void FullMatrix::forward(Vector &, const Vector &) + const; + template void FullMatrix::backward(Vector &, const Vector &) + const; + + template void FullMatrix::precondition_Jacobi( + Vector &, const Vector &, const S1) const; + } // complex matrices can be multiplied only by complex vectors for (S1 : COMPLEX_SCALARS; S2 : COMPLEX_SCALARS) -{ - template - void FullMatrix::vmult( - Vector&, const Vector&, bool) const; - template - void FullMatrix::Tvmult( - Vector&, const Vector&, bool) const; - template - S2 FullMatrix::matrix_norm_square ( - const Vector &) const; - template - S2 FullMatrix::matrix_scalar_product( - const Vector&, const Vector&) const; - template - void FullMatrix::forward( - Vector&, const Vector&) const; - template - void FullMatrix::backward( - Vector&, const Vector&) const; - - template - void FullMatrix::precondition_Jacobi ( - Vector &, const Vector &, const S1) const; -} + { + template void FullMatrix::vmult( + Vector &, const Vector &, bool) const; + template void FullMatrix::Tvmult( + Vector &, const Vector &, bool) const; + template S2 FullMatrix::matrix_norm_square(const Vector &) + const; + template S2 FullMatrix::matrix_scalar_product( + const Vector &, const Vector &) const; + template void FullMatrix::forward(Vector &, const Vector &) + const; + template void FullMatrix::backward(Vector &, const Vector &) + const; + + template void FullMatrix::precondition_Jacobi( + Vector &, const Vector &, const S1) const; + } for (S1, S2, S3 : REAL_SCALARS) -{ - template - S1 - FullMatrix::residual(Vector&, - const Vector&, - const Vector&) const; -} + { + template S1 FullMatrix::residual( + Vector &, const Vector &, const Vector &) const; + } for (S1, S2 : COMPLEX_SCALARS) -{ - template - void FullMatrix::fill ( - const FullMatrix&, size_type, size_type, size_type, size_type); - template - void FullMatrix::add (const S1, const FullMatrix&); - template - void FullMatrix::add (const S1, const FullMatrix&, - const S1, const FullMatrix&); - template - void FullMatrix::add (const S1, const FullMatrix&, - const S1, const FullMatrix&, - const S1, const FullMatrix&); - template - void FullMatrix::add ( - const FullMatrix&, S1, size_type, size_type, size_type, size_type); - template - void FullMatrix::Tadd (const S1, const FullMatrix&); - template - void FullMatrix::Tadd ( - const FullMatrix&, S1, size_type, size_type, - size_type, size_type); - template - void FullMatrix::equ (const S1, const FullMatrix&); - template - void FullMatrix::equ (const S1, const FullMatrix&, - const S1, const FullMatrix&); - template - void FullMatrix::equ (const S1, const FullMatrix&, - const S1, const FullMatrix&, - const S1, const FullMatrix&); - template - void FullMatrix::mmult (FullMatrix&, const FullMatrix&, const bool) const; - template - void FullMatrix::Tmmult (FullMatrix&, const FullMatrix&, const bool) const; - template - void FullMatrix::invert (const FullMatrix&); - - template - void FullMatrix::left_invert (const FullMatrix &); - template - void FullMatrix::right_invert (const FullMatrix &); - - template - void FullMatrix::fill_permutation ( - const FullMatrix&, - const std::vector&, - const std::vector&); -} + { + template void FullMatrix::fill( + const FullMatrix &, size_type, size_type, size_type, size_type); + template void FullMatrix::add(const S1, const FullMatrix &); + template void FullMatrix::add( + const S1, const FullMatrix &, const S1, const FullMatrix &); + template void FullMatrix::add(const S1, + const FullMatrix &, + const S1, + const FullMatrix &, + const S1, + const FullMatrix &); + template void FullMatrix::add( + const FullMatrix &, S1, size_type, size_type, size_type, size_type); + template void FullMatrix::Tadd(const S1, const FullMatrix &); + template void FullMatrix::Tadd( + const FullMatrix &, S1, size_type, size_type, size_type, size_type); + template void FullMatrix::equ(const S1, const FullMatrix &); + template void FullMatrix::equ( + const S1, const FullMatrix &, const S1, const FullMatrix &); + template void FullMatrix::equ(const S1, + const FullMatrix &, + const S1, + const FullMatrix &, + const S1, + const FullMatrix &); + template void FullMatrix::mmult( + FullMatrix &, const FullMatrix &, const bool) const; + template void FullMatrix::Tmmult( + FullMatrix &, const FullMatrix &, const bool) const; + template void FullMatrix::invert(const FullMatrix &); + + template void FullMatrix::left_invert(const FullMatrix &); + template void FullMatrix::right_invert(const FullMatrix &); + + template void FullMatrix::fill_permutation( + const FullMatrix &, + const std::vector &, + const std::vector &); + } for (S1, S2, S3 : COMPLEX_SCALARS) -{ - template - S1 - FullMatrix::residual(Vector&, - const Vector&, - const Vector&) const; -} + { + template S1 FullMatrix::residual( + Vector &, const Vector &, const Vector &) const; + } diff --git a/source/lac/la_parallel_block_vector.inst.in b/source/lac/la_parallel_block_vector.inst.in index efbd1dedcb..21d3b42c73 100644 --- a/source/lac/la_parallel_block_vector.inst.in +++ b/source/lac/la_parallel_block_vector.inst.in @@ -16,60 +16,74 @@ for (SCALAR : REAL_AND_COMPLEX_SCALARS) -{ + { namespace LinearAlgebra \{ - namespace distributed - \{ - template class BlockVector; - template - void - BlockVector::multivector_inner_product(FullMatrix &, const BlockVector &V, const bool) const; - template - void - BlockVector::multivector_inner_product(LAPACKFullMatrix &, const BlockVector &V, const bool) const; - template - SCALAR - BlockVector::multivector_inner_product_with_metric(const FullMatrix &, const BlockVector &V, const bool) const; - template - SCALAR - BlockVector::multivector_inner_product_with_metric(const LAPACKFullMatrix &, const BlockVector &V, const bool) const; - template - void - BlockVector::mmult(BlockVector &V,const FullMatrix &, const SCALAR, const SCALAR) const; - template - void - BlockVector::mmult(BlockVector &V,const LAPACKFullMatrix &, const SCALAR, const SCALAR) const; - \} + namespace distributed + \{ + template class BlockVector; + template void + BlockVector::multivector_inner_product( + FullMatrix &, + const BlockVector &V, + const bool) const; + template void + BlockVector::multivector_inner_product( + LAPACKFullMatrix &, + const BlockVector &V, + const bool) const; + template SCALAR + BlockVector::multivector_inner_product_with_metric( + const FullMatrix &, + const BlockVector &V, + const bool) const; + template SCALAR + BlockVector::multivector_inner_product_with_metric( + const LAPACKFullMatrix &, + const BlockVector &V, + const bool) const; + template void + BlockVector::mmult(BlockVector &V, + const FullMatrix &, + const SCALAR, + const SCALAR) const; + template void + BlockVector::mmult(BlockVector &V, + const LAPACKFullMatrix &, + const SCALAR, + const SCALAR) const; + \} \} -} + } for (S1 : REAL_AND_COMPLEX_SCALARS; S2 : REAL_SCALARS) -{ + { namespace LinearAlgebra \{ - namespace distributed - \{ - template void BlockVector::reinit (const BlockVector&, - const bool); - template void BlockVector::add (const std::vector &, - const ::dealii::Vector&); + namespace distributed + \{ + template void + BlockVector::reinit(const BlockVector &, const bool); + template void + BlockVector::add(const std::vector &, + const ::dealii::Vector &); + \} \} - \} -} + } for (S1, S2 : COMPLEX_SCALARS) -{ + { namespace LinearAlgebra \{ - namespace distributed - \{ - template void BlockVector::reinit (const BlockVector&, - const bool); - template void BlockVector::add (const std::vector &, - const ::dealii::Vector&); - \} + namespace distributed + \{ + template void + BlockVector::reinit(const BlockVector &, const bool); + template void + BlockVector::add(const std::vector &, + const ::dealii::Vector &); + \} \} -} + } diff --git a/source/lac/la_parallel_vector.inst.in b/source/lac/la_parallel_vector.inst.in index fb4888aab7..f0ab96d8cc 100644 --- a/source/lac/la_parallel_vector.inst.in +++ b/source/lac/la_parallel_vector.inst.in @@ -16,42 +16,45 @@ for (SCALAR : REAL_AND_COMPLEX_SCALARS) -{ + { namespace LinearAlgebra \{ - namespace distributed - \{ - template class Vector; - \} + namespace distributed + \{ + template class Vector; + \} \} -} + } for (S1 : REAL_AND_COMPLEX_SCALARS; S2 : REAL_SCALARS) -{ + { namespace LinearAlgebra \{ - namespace distributed - \{ - template void Vector::reinit (const Vector&, - const bool); - template S1 Vector::inner_product_local (const Vector&) const; - template void Vector::copy_locally_owned_data_from (const Vector&); - \} + namespace distributed + \{ + template void + Vector::reinit(const Vector &, const bool); + template S1 + Vector::inner_product_local(const Vector &) const; + template void + Vector::copy_locally_owned_data_from(const Vector &); + \} \} -} + } for (S1, S2 : COMPLEX_SCALARS) -{ + { namespace LinearAlgebra \{ - namespace distributed - \{ - template void Vector::reinit (const Vector&, - const bool); - template S1 Vector::inner_product_local (const Vector&) const; - template void Vector::copy_locally_owned_data_from (const Vector&); - \} + namespace distributed + \{ + template void + Vector::reinit(const Vector &, const bool); + template S1 + Vector::inner_product_local(const Vector &) const; + template void + Vector::copy_locally_owned_data_from(const Vector &); + \} \} -} - + } diff --git a/source/lac/la_vector.inst.in b/source/lac/la_vector.inst.in index 8aeb2fec9f..9651f24d0f 100644 --- a/source/lac/la_vector.inst.in +++ b/source/lac/la_vector.inst.in @@ -16,14 +16,13 @@ for (SCALAR : REAL_SCALARS) -{ + { template class Vector; -} + } for (SCALAR : COMPLEX_SCALARS) -{ + { template class Vector; -} - + } diff --git a/source/lac/lapack_full_matrix.inst.in b/source/lac/lapack_full_matrix.inst.in index d4f0a158b4..71264b6dfb 100644 --- a/source/lac/lapack_full_matrix.inst.in +++ b/source/lac/lapack_full_matrix.inst.in @@ -16,16 +16,16 @@ for (S : REAL_AND_COMPLEX_SCALARS) -{ + { template class LAPACKFullMatrix; template class PreconditionLU; -} + } for (S1 : REAL_AND_COMPLEX_SCALARS; S2 : REAL_SCALARS) -{ - template LAPACKFullMatrix & - LAPACKFullMatrix::operator = (const FullMatrix &M); + { + template LAPACKFullMatrix &LAPACKFullMatrix::operator=( + const FullMatrix &M); - template LAPACKFullMatrix & - LAPACKFullMatrix::operator = (const SparseMatrix &M); -} + template LAPACKFullMatrix &LAPACKFullMatrix::operator=( + const SparseMatrix &M); + } diff --git a/source/lac/precondition_block.inst.in b/source/lac/precondition_block.inst.in index 09f6d16891..4baeef1bd2 100644 --- a/source/lac/precondition_block.inst.in +++ b/source/lac/precondition_block.inst.in @@ -16,74 +16,57 @@ for (S : REAL_SCALARS) -{ + { template class PreconditionBlockBase; -} + } for (S1, S2 : REAL_SCALARS) -{ + { template class PreconditionBlock, S2>; template class PreconditionBlockJacobi, S2>; template class PreconditionBlockSOR, S2>; template class PreconditionBlockSSOR, S2>; -} + } for (S1, S2, S3 : REAL_SCALARS) -{ -// ------------ PreconditionBlockJacobi ----------------- - template - void PreconditionBlockJacobi, S2>::vmult - (Vector &, const Vector &) const; - template - void PreconditionBlockJacobi, S2>::Tvmult - (Vector &, const Vector &) const; - template - void PreconditionBlockJacobi, S2>::vmult_add - (Vector &, const Vector &) const; - template - void PreconditionBlockJacobi, S2>::Tvmult_add - (Vector &, const Vector &) const; - template - void PreconditionBlockJacobi, S2>::step - (Vector &, const Vector &) const; - template - void PreconditionBlockJacobi, S2>::Tstep - (Vector &, const Vector &) const; + { + // ------------ PreconditionBlockJacobi ----------------- + template void PreconditionBlockJacobi, S2>::vmult( + Vector &, const Vector &) const; + template void PreconditionBlockJacobi, S2>::Tvmult( + Vector &, const Vector &) const; + template void PreconditionBlockJacobi, S2>::vmult_add( + Vector &, const Vector &) const; + template void PreconditionBlockJacobi, S2>::Tvmult_add( + Vector &, const Vector &) const; + template void PreconditionBlockJacobi, S2>::step( + Vector &, const Vector &) const; + template void PreconditionBlockJacobi, S2>::Tstep( + Vector &, const Vector &) const; -// ------------ PreconditionBlockSOR ----------------- - template - void PreconditionBlockSOR, S2>::vmult - (Vector &, const Vector &) const; - template - void PreconditionBlockSOR, S2>::Tvmult - (Vector &, const Vector &) const; - template - void PreconditionBlockSOR, S2>::vmult_add - (Vector &, const Vector &) const; - template - void PreconditionBlockSOR, S2>::Tvmult_add - (Vector &, const Vector &) const; - template - void PreconditionBlockSOR, S2>::step - (Vector &, const Vector &) const; - template - void PreconditionBlockSOR, S2>::Tstep - (Vector &, const Vector &) const; - -// ------------ PreconditionBlockSSOR ----------------- - template - void PreconditionBlockSSOR, S2>::vmult - (Vector &, const Vector &) const; - template - void PreconditionBlockSSOR, S2>::Tvmult - (Vector &, const Vector &) const; - template - void PreconditionBlockSSOR, S2>::step - (Vector &, const Vector &) const; - template - void PreconditionBlockSSOR, S2>::Tstep - (Vector &, const Vector &) const; -} + // ------------ PreconditionBlockSOR ----------------- + template void PreconditionBlockSOR, S2>::vmult( + Vector &, const Vector &) const; + template void PreconditionBlockSOR, S2>::Tvmult( + Vector &, const Vector &) const; + template void PreconditionBlockSOR, S2>::vmult_add( + Vector &, const Vector &) const; + template void PreconditionBlockSOR, S2>::Tvmult_add( + Vector &, const Vector &) const; + template void PreconditionBlockSOR, S2>::step( + Vector &, const Vector &) const; + template void PreconditionBlockSOR, S2>::Tstep( + Vector &, const Vector &) const; + // ------------ PreconditionBlockSSOR ----------------- + template void PreconditionBlockSSOR, S2>::vmult( + Vector &, const Vector &) const; + template void PreconditionBlockSSOR, S2>::Tvmult( + Vector &, const Vector &) const; + template void PreconditionBlockSSOR, S2>::step( + Vector &, const Vector &) const; + template void PreconditionBlockSSOR, S2>::Tstep( + Vector &, const Vector &) const; + } diff --git a/source/lac/read_write_vector.inst.in b/source/lac/read_write_vector.inst.in index a72ad5cb0b..1f7284057b 100644 --- a/source/lac/read_write_vector.inst.in +++ b/source/lac/read_write_vector.inst.in @@ -16,37 +16,36 @@ for (SCALAR : REAL_SCALARS) -{ + { namespace LinearAlgebra \{ - template class ReadWriteVector; + template class ReadWriteVector; \} -} + } for (S1, S2 : REAL_SCALARS) -{ + { namespace LinearAlgebra \{ - template void ReadWriteVector::reinit (const ReadWriteVector&, - const bool); + template void + ReadWriteVector::reinit(const ReadWriteVector &, const bool); \} -} + } for (SCALAR : COMPLEX_SCALARS) -{ + { namespace LinearAlgebra \{ - template class ReadWriteVector; + template class ReadWriteVector; \} -} + } for (S1, S2 : COMPLEX_SCALARS) -{ + { namespace LinearAlgebra \{ - template void ReadWriteVector::reinit (const ReadWriteVector&, - const bool); + template void + ReadWriteVector::reinit(const ReadWriteVector &, const bool); \} -} - + } diff --git a/source/lac/relaxation_block.inst.in b/source/lac/relaxation_block.inst.in index 7bfdc49b4d..1f6a7ac7be 100644 --- a/source/lac/relaxation_block.inst.in +++ b/source/lac/relaxation_block.inst.in @@ -16,21 +16,28 @@ for (S1, S2, S3 : REAL_SCALARS) -{ - template class RelaxationBlock, S2, Vector >; - template class RelaxationBlockJacobi, S2, Vector >; - template class RelaxationBlockSOR, S2, Vector >; - template class RelaxationBlockSSOR, S2, Vector >; -} + { + template class RelaxationBlock, S2, Vector>; + template class RelaxationBlockJacobi, S2, Vector>; + template class RelaxationBlockSOR, S2, Vector>; + template class RelaxationBlockSSOR, S2, Vector>; + } for (S1 : REAL_SCALARS) -{ + { #ifdef DEAL_II_WITH_TRILINOS - template class RelaxationBlock; - template class RelaxationBlockJacobi; - template class RelaxationBlockSOR; - template class RelaxationBlockSSOR; + template class RelaxationBlock; + template class RelaxationBlockJacobi; + template class RelaxationBlockSOR; + template class RelaxationBlockSSOR; #endif -} - + } diff --git a/source/lac/scalapack.inst.in b/source/lac/scalapack.inst.in index 0e3ca68740..600e013bb6 100644 --- a/source/lac/scalapack.inst.in +++ b/source/lac/scalapack.inst.in @@ -15,22 +15,21 @@ for (Number : REAL_SCALARS) -{ + { template class ScaLAPACKMatrix; - template - void ScaLAPACKMatrix::scale_columns> (const Vector&); + template void ScaLAPACKMatrix::scale_columns>( + const Vector &); - template - void ScaLAPACKMatrix::scale_rows> (const Vector&); -} + template void ScaLAPACKMatrix::scale_rows>( + const Vector &); + } -for (VEC : GENERAL_CONTAINER_TYPES; - Number : REAL_SCALARS) -{ - template - void ScaLAPACKMatrix::scale_columns> (const VEC&); +for (VEC : GENERAL_CONTAINER_TYPES; Number : REAL_SCALARS) + { + template void ScaLAPACKMatrix::scale_columns>( + const VEC &); - template - void ScaLAPACKMatrix::scale_rows> (const VEC&); -} + template void ScaLAPACKMatrix::scale_rows>( + const VEC &); + } diff --git a/source/lac/solver.inst.in b/source/lac/solver.inst.in index c4fd90666f..a8d3cc3654 100644 --- a/source/lac/solver.inst.in +++ b/source/lac/solver.inst.in @@ -16,6 +16,6 @@ for (S : VECTOR_TYPES) -{ + { template class Solver; -} + } diff --git a/source/lac/sparse_matrix.inst.in b/source/lac/sparse_matrix.inst.in index 4a8bd3fe54..5fb56ebd9c 100644 --- a/source/lac/sparse_matrix.inst.in +++ b/source/lac/sparse_matrix.inst.in @@ -18,290 +18,226 @@ // real instantiations for (S : REAL_SCALARS) -{ + { template class SparseMatrix; -} + } for (S1, S2 : REAL_SCALARS) -{ - template SparseMatrix & - SparseMatrix::copy_from (const SparseMatrix &); + { + template SparseMatrix &SparseMatrix::copy_from( + const SparseMatrix &); - template - void SparseMatrix::copy_from (const FullMatrix &); + template void SparseMatrix::copy_from(const FullMatrix &); - template void SparseMatrix::add (const S1, - const SparseMatrix &); + template void SparseMatrix::add(const S1, const SparseMatrix &); - template void SparseMatrix::add (const size_type, - const size_type, - const size_type *, - const S2 *, - const bool, - const bool); + template void SparseMatrix::add(const size_type, + const size_type, + const size_type *, + const S2 *, + const bool, + const bool); - template void SparseMatrix::set (const size_type, - const size_type, - const size_type *, - const S2 *, - const bool); -} + template void SparseMatrix::set(const size_type, + const size_type, + const size_type *, + const S2 *, + const bool); + } for (S1, S2 : REAL_SCALARS) -{ - template S2 - SparseMatrix:: - matrix_norm_square (const Vector &) const; - - template S2 - SparseMatrix:: - matrix_scalar_product (const Vector &, - const Vector &) const; - - template S2 SparseMatrix:: - residual (Vector &, - const Vector &, - const Vector &) const; - - template void SparseMatrix:: - precondition_SSOR (Vector &, - const Vector &, - const S1, - const std::vector&) const; - - template void SparseMatrix:: - precondition_SOR (Vector &, - const Vector &, - const S1) const; - - template void SparseMatrix:: - precondition_TSOR (Vector &, - const Vector &, - const S1) const; - - template void SparseMatrix:: - precondition_Jacobi (Vector &, - const Vector &, - const S1) const; - - template void SparseMatrix:: - SOR (Vector &, - const S1) const; - template void SparseMatrix:: - TSOR (Vector &, - const S1) const; - template void SparseMatrix:: - SSOR (Vector &, - const S1) const; - template void SparseMatrix:: - PSOR (Vector &, - const std::vector&, - const std::vector&, - const S1) const; - template void SparseMatrix:: - TPSOR (Vector &, - const std::vector&, - const std::vector&, - const S1) const; - template void SparseMatrix:: - Jacobi_step (Vector &, - const Vector &, - const S1) const; - template void SparseMatrix:: - SOR_step (Vector &, - const Vector &, - const S1) const; - template void SparseMatrix:: - TSOR_step (Vector &, - const Vector &, - const S1) const; - template void SparseMatrix:: - SSOR_step (Vector &, - const Vector &, - const S1) const; -} - -for (S1, S2, S3 : REAL_SCALARS; - V1, V2 : DEAL_II_VEC_TEMPLATES) -{ - template void SparseMatrix:: - vmult (V1 &, const V2 &) const; - template void SparseMatrix:: - Tvmult (V1 &, const V2 &) const; - template void SparseMatrix:: - vmult_add (V1 &, const V2 &) const; - template void SparseMatrix:: - Tvmult_add (V1 &, const V2 &) const; -} + { + template S2 SparseMatrix::matrix_norm_square(const Vector &) + const; + + template S2 SparseMatrix::matrix_scalar_product( + const Vector &, const Vector &) const; + + template S2 SparseMatrix::residual( + Vector &, const Vector &, const Vector &) const; + + template void SparseMatrix::precondition_SSOR( + Vector &, + const Vector &, + const S1, + const std::vector &) const; + + template void SparseMatrix::precondition_SOR( + Vector &, const Vector &, const S1) const; + + template void SparseMatrix::precondition_TSOR( + Vector &, const Vector &, const S1) const; + + template void SparseMatrix::precondition_Jacobi( + Vector &, const Vector &, const S1) const; + + template void SparseMatrix::SOR(Vector &, const S1) const; + template void SparseMatrix::TSOR(Vector &, const S1) const; + template void SparseMatrix::SSOR(Vector &, const S1) const; + template void SparseMatrix::PSOR(Vector &, + const std::vector &, + const std::vector &, + const S1) const; + template void SparseMatrix::TPSOR(Vector &, + const std::vector &, + const std::vector &, + const S1) const; + template void SparseMatrix::Jacobi_step( + Vector &, const Vector &, const S1) const; + template void SparseMatrix::SOR_step( + Vector &, const Vector &, const S1) const; + template void SparseMatrix::TSOR_step( + Vector &, const Vector &, const S1) const; + template void SparseMatrix::SSOR_step( + Vector &, const Vector &, const S1) const; + } + +for (S1, S2, S3 : REAL_SCALARS; V1, V2 : DEAL_II_VEC_TEMPLATES) + { + template void SparseMatrix::vmult(V1 &, const V2 &) const; + template void SparseMatrix::Tvmult(V1 &, const V2 &) const; + template void SparseMatrix::vmult_add(V1 &, const V2 &) const; + template void SparseMatrix::Tvmult_add(V1 &, const V2 &) const; + } for (S1 : REAL_SCALARS; S2, S3 : COMPLEX_SCALARS; - V1, V2 : DEAL_II_VEC_TEMPLATES) -{ - template void SparseMatrix:: - vmult (V1 &, const V2 &) const; - template void SparseMatrix:: - Tvmult (V1 &, const V2 &) const; - template void SparseMatrix:: - vmult_add (V1 &, const V2 &) const; - template void SparseMatrix:: - Tvmult_add (V1 &, const V2 &) const; -} + V1, V2 : DEAL_II_VEC_TEMPLATES) + { + template void SparseMatrix::vmult(V1 &, const V2 &) const; + template void SparseMatrix::Tvmult(V1 &, const V2 &) const; + template void SparseMatrix::vmult_add(V1 &, const V2 &) const; + template void SparseMatrix::Tvmult_add(V1 &, const V2 &) const; + } for (S1 : REAL_SCALARS) -{ - template void SparseMatrix:: - vmult (LinearAlgebra::distributed::Vector &, const LinearAlgebra::distributed::Vector &) const; - template void SparseMatrix:: - Tvmult (LinearAlgebra::distributed::Vector &, const LinearAlgebra::distributed::Vector &) const; - template void SparseMatrix:: - vmult_add (LinearAlgebra::distributed::Vector &, const LinearAlgebra::distributed::Vector &) const; - template void SparseMatrix:: - Tvmult_add (LinearAlgebra::distributed::Vector &, const LinearAlgebra::distributed::Vector &) const; -} - -for (S1, S2, S3: REAL_SCALARS) -{ - template void SparseMatrix:: - mmult (SparseMatrix &, const SparseMatrix &, const Vector&, - const bool) const; - template void SparseMatrix:: - Tmmult (SparseMatrix &, const SparseMatrix &, const Vector&, - const bool) const; -} + { + template void SparseMatrix::vmult( + LinearAlgebra::distributed::Vector &, + const LinearAlgebra::distributed::Vector &) const; + template void SparseMatrix::Tvmult( + LinearAlgebra::distributed::Vector &, + const LinearAlgebra::distributed::Vector &) const; + template void SparseMatrix::vmult_add( + LinearAlgebra::distributed::Vector &, + const LinearAlgebra::distributed::Vector &) const; + template void SparseMatrix::Tvmult_add( + LinearAlgebra::distributed::Vector &, + const LinearAlgebra::distributed::Vector &) const; + } + +for (S1, S2, S3 : REAL_SCALARS) + { + template void SparseMatrix::mmult(SparseMatrix &, + const SparseMatrix &, + const Vector &, + const bool) const; + template void SparseMatrix::Tmmult(SparseMatrix &, + const SparseMatrix &, + const Vector &, + const bool) const; + } // complex instantiations for (S : COMPLEX_SCALARS) -{ + { template class SparseMatrix; -} + } for (S1, S2 : COMPLEX_SCALARS) -{ - template SparseMatrix & - SparseMatrix::copy_from (const SparseMatrix &); + { + template SparseMatrix &SparseMatrix::copy_from( + const SparseMatrix &); - template - void SparseMatrix::copy_from (const FullMatrix &); + template void SparseMatrix::copy_from(const FullMatrix &); - template void SparseMatrix::add (const S1, - const SparseMatrix &); + template void SparseMatrix::add(const S1, const SparseMatrix &); - template void SparseMatrix::add (const size_type, - const size_type, - const size_type *, - const S2 *, - const bool, - const bool); + template void SparseMatrix::add(const size_type, + const size_type, + const size_type *, + const S2 *, + const bool, + const bool); - template void SparseMatrix::set (const size_type, - const size_type, - const size_type *, - const S2 *, - const bool); -} + template void SparseMatrix::set(const size_type, + const size_type, + const size_type *, + const S2 *, + const bool); + } for (S1, S2 : COMPLEX_SCALARS) -{ - template S2 - SparseMatrix:: - matrix_norm_square (const Vector &) const; - - template S2 - SparseMatrix:: - matrix_scalar_product (const Vector &, - const Vector &) const; - - template S2 SparseMatrix:: - residual (Vector &, - const Vector &, - const Vector &) const; - - template void SparseMatrix:: - precondition_SSOR (Vector &, - const Vector &, - const S1, - const std::vector&) const; - - template void SparseMatrix:: - precondition_SOR (Vector &, - const Vector &, - const S1) const; - - template void SparseMatrix:: - precondition_TSOR (Vector &, - const Vector &, - const S1) const; - - template void SparseMatrix:: - precondition_Jacobi (Vector &, - const Vector &, - const S1) const; - - template void SparseMatrix:: - SOR (Vector &, - const S1) const; - template void SparseMatrix:: - TSOR (Vector &, - const S1) const; - template void SparseMatrix:: - SSOR (Vector &, - const S1) const; - template void SparseMatrix:: - PSOR (Vector &, - const std::vector&, - const std::vector&, - const S1) const; - template void SparseMatrix:: - TPSOR (Vector &, - const std::vector&, - const std::vector&, - const S1) const; - template void SparseMatrix:: - Jacobi_step (Vector &, - const Vector &, - const S1) const; - template void SparseMatrix:: - SOR_step (Vector &, - const Vector &, - const S1) const; - template void SparseMatrix:: - TSOR_step (Vector &, - const Vector &, - const S1) const; - template void SparseMatrix:: - SSOR_step (Vector &, - const Vector &, - const S1) const; -} - -for (S1, S2, S3 : COMPLEX_SCALARS; - V1, V2 : DEAL_II_VEC_TEMPLATES) -{ - template void SparseMatrix:: - vmult (V1 &, const V2 &) const; - template void SparseMatrix:: - Tvmult (V1 &, const V2 &) const; - template void SparseMatrix:: - vmult_add (V1 &, const V2 &) const; - template void SparseMatrix:: - Tvmult_add (V1 &, const V2 &) const; -} - -for (S1, S2, S3: COMPLEX_SCALARS) -{ - template void SparseMatrix:: - mmult (SparseMatrix &, const SparseMatrix &, const Vector&, - const bool) const; - template void SparseMatrix:: - Tmmult (SparseMatrix &, const SparseMatrix &, const Vector&, - const bool) const; -} + { + template S2 SparseMatrix::matrix_norm_square(const Vector &) + const; + + template S2 SparseMatrix::matrix_scalar_product( + const Vector &, const Vector &) const; + + template S2 SparseMatrix::residual( + Vector &, const Vector &, const Vector &) const; + + template void SparseMatrix::precondition_SSOR( + Vector &, + const Vector &, + const S1, + const std::vector &) const; + + template void SparseMatrix::precondition_SOR( + Vector &, const Vector &, const S1) const; + + template void SparseMatrix::precondition_TSOR( + Vector &, const Vector &, const S1) const; + + template void SparseMatrix::precondition_Jacobi( + Vector &, const Vector &, const S1) const; + + template void SparseMatrix::SOR(Vector &, const S1) const; + template void SparseMatrix::TSOR(Vector &, const S1) const; + template void SparseMatrix::SSOR(Vector &, const S1) const; + template void SparseMatrix::PSOR(Vector &, + const std::vector &, + const std::vector &, + const S1) const; + template void SparseMatrix::TPSOR(Vector &, + const std::vector &, + const std::vector &, + const S1) const; + template void SparseMatrix::Jacobi_step( + Vector &, const Vector &, const S1) const; + template void SparseMatrix::SOR_step( + Vector &, const Vector &, const S1) const; + template void SparseMatrix::TSOR_step( + Vector &, const Vector &, const S1) const; + template void SparseMatrix::SSOR_step( + Vector &, const Vector &, const S1) const; + } + +for (S1, S2, S3 : COMPLEX_SCALARS; V1, V2 : DEAL_II_VEC_TEMPLATES) + { + template void SparseMatrix::vmult(V1 &, const V2 &) const; + template void SparseMatrix::Tvmult(V1 &, const V2 &) const; + template void SparseMatrix::vmult_add(V1 &, const V2 &) const; + template void SparseMatrix::Tvmult_add(V1 &, const V2 &) const; + } + +for (S1, S2, S3 : COMPLEX_SCALARS) + { + template void SparseMatrix::mmult(SparseMatrix &, + const SparseMatrix &, + const Vector &, + const bool) const; + template void SparseMatrix::Tmmult(SparseMatrix &, + const SparseMatrix &, + const Vector &, + const bool) const; + } diff --git a/source/lac/sparse_matrix_ez.inst.in b/source/lac/sparse_matrix_ez.inst.in index 34dbf108e9..bb8ce2733a 100644 --- a/source/lac/sparse_matrix_ez.inst.in +++ b/source/lac/sparse_matrix_ez.inst.in @@ -16,42 +16,31 @@ for (S : REAL_SCALARS) -{ + { template class SparseMatrixEZ; -} + } for (S1, S2 : REAL_SCALARS) -{ - template - void SparseMatrixEZ::vmult (Vector &, - const Vector &) const; - template - void SparseMatrixEZ::Tvmult (Vector &, - const Vector &) const; - template - void SparseMatrixEZ::vmult_add (Vector &, - const Vector &) const; - template - void SparseMatrixEZ::Tvmult_add (Vector &, - const Vector &) const; - - template - void SparseMatrixEZ::precondition_SSOR (Vector &, - const Vector &, - const S1, - const std::vector&) const; - template - void SparseMatrixEZ::precondition_SOR (Vector &, - const Vector &, - const S1) const; - template - void SparseMatrixEZ::precondition_TSOR (Vector &, - const Vector &, - const S1) const; - template - void SparseMatrixEZ::precondition_Jacobi (Vector &, - const Vector &, - const S1) const; -} + { + template void SparseMatrixEZ::vmult(Vector &, + const Vector &) const; + template void SparseMatrixEZ::Tvmult(Vector &, + const Vector &) const; + template void SparseMatrixEZ::vmult_add(Vector &, + const Vector &) const; + template void SparseMatrixEZ::Tvmult_add(Vector &, + const Vector &) const; + template void SparseMatrixEZ::precondition_SSOR( + Vector &, + const Vector &, + const S1, + const std::vector &) const; + template void SparseMatrixEZ::precondition_SOR( + Vector &, const Vector &, const S1) const; + template void SparseMatrixEZ::precondition_TSOR( + Vector &, const Vector &, const S1) const; + template void SparseMatrixEZ::precondition_Jacobi( + Vector &, const Vector &, const S1) const; + } diff --git a/source/lac/trilinos_sparse_matrix.inst.in b/source/lac/trilinos_sparse_matrix.inst.in index 06f65590db..218eb655e5 100644 --- a/source/lac/trilinos_sparse_matrix.inst.in +++ b/source/lac/trilinos_sparse_matrix.inst.in @@ -16,34 +16,34 @@ for (S : REAL_SCALARS) -{ + { namespace TrilinosWrappers \{ - template void - SparseMatrix::reinit (const dealii::SparseMatrix &, - const double, - const bool, - const dealii::SparsityPattern *); - template void - SparseMatrix::reinit (const Epetra_Map &, - const dealii::SparseMatrix &, - const double, - const bool, - const dealii::SparsityPattern *); - template void - SparseMatrix::reinit (const Epetra_Map &, - const Epetra_Map &, - const dealii::SparseMatrix &, - const double, - const bool, - const dealii::SparsityPattern *); - template void - SparseMatrix::reinit (const IndexSet &, - const IndexSet &, - const dealii::SparseMatrix &, - const MPI_Comm &, - const double, - const bool, - const dealii::SparsityPattern *); + template void + SparseMatrix::reinit(const dealii::SparseMatrix &, + const double, + const bool, + const dealii::SparsityPattern *); + template void + SparseMatrix::reinit(const Epetra_Map &, + const dealii::SparseMatrix &, + const double, + const bool, + const dealii::SparsityPattern *); + template void + SparseMatrix::reinit(const Epetra_Map &, + const Epetra_Map &, + const dealii::SparseMatrix &, + const double, + const bool, + const dealii::SparsityPattern *); + template void + SparseMatrix::reinit(const IndexSet &, + const IndexSet &, + const dealii::SparseMatrix &, + const MPI_Comm &, + const double, + const bool, + const dealii::SparsityPattern *); \} -} + } diff --git a/source/lac/trilinos_vector.inst.in b/source/lac/trilinos_vector.inst.in index 1ca3058235..fbe566095b 100644 --- a/source/lac/trilinos_vector.inst.in +++ b/source/lac/trilinos_vector.inst.in @@ -16,8 +16,6 @@ for (SCALAR : REAL_SCALARS) -{ - template - Vector & - Vector::operator = (const ::dealii::Vector &v); -} + { + template Vector &Vector::operator=(const ::dealii::Vector &v); + } diff --git a/source/lac/vector.inst.in b/source/lac/vector.inst.in index 6588fbfb01..4ac6c92d2b 100644 --- a/source/lac/vector.inst.in +++ b/source/lac/vector.inst.in @@ -16,38 +16,26 @@ for (SCALAR : REAL_AND_COMPLEX_SCALARS) -{ + { template class Vector; -} + } for (S1, S2 : REAL_SCALARS) -{ - template - bool - Vector::operator==(const Vector&) const; - template - S1 - Vector::operator*(const Vector&) const; - template - void Vector::reinit(const Vector&, const bool); -} + { + template bool Vector::operator==(const Vector &) const; + template S1 Vector::operator*(const Vector &) const; + template void Vector::reinit(const Vector &, const bool); + } for (S1, S2 : COMPLEX_SCALARS) -{ - template - bool - Vector::operator==(const Vector&) const; - template - S1 - Vector::operator*(const Vector&) const; - template - void Vector::reinit(const Vector&, const bool); -} + { + template bool Vector::operator==(const Vector &) const; + template S1 Vector::operator*(const Vector &) const; + template void Vector::reinit(const Vector &, const bool); + } -for (S1: COMPLEX_SCALARS; S2: REAL_SCALARS) -{ - template - Vector& Vector::operator= (const Vector &); - template - void Vector::reinit(const Vector&, const bool); -} +for (S1 : COMPLEX_SCALARS; S2 : REAL_SCALARS) + { + template Vector &Vector::operator=(const Vector &); + template void Vector::reinit(const Vector &, const bool); + } diff --git a/source/lac/vector_memory.inst.in b/source/lac/vector_memory.inst.in index 7ea774bb97..cd1e12d688 100644 --- a/source/lac/vector_memory.inst.in +++ b/source/lac/vector_memory.inst.in @@ -16,7 +16,7 @@ for (VECTOR : VECTOR_TYPES) -{ + { template class VectorMemory; template class GrowingVectorMemory; -} + } diff --git a/source/lac/vector_memory_release.inst.in b/source/lac/vector_memory_release.inst.in index 0bfaf6a5ce..00d8e48c3b 100644 --- a/source/lac/vector_memory_release.inst.in +++ b/source/lac/vector_memory_release.inst.in @@ -16,6 +16,6 @@ for (VECTOR : VECTOR_TYPES) -{ + { dealii::GrowingVectorMemory::release_unused_memory(); -} + } diff --git a/source/lac/vector_view.inst.in b/source/lac/vector_view.inst.in index a6a58da5a9..62ef5c2207 100644 --- a/source/lac/vector_view.inst.in +++ b/source/lac/vector_view.inst.in @@ -16,11 +16,11 @@ for (SCALAR : REAL_SCALARS) -{ + { template class VectorView; -} + } for (SCALAR : COMPLEX_SCALARS) -{ + { template class VectorView; -} + } diff --git a/source/matrix_free/cuda_matrix_free.inst.in b/source/matrix_free/cuda_matrix_free.inst.in index b246433f8b..8e451b3381 100644 --- a/source/matrix_free/cuda_matrix_free.inst.in +++ b/source/matrix_free/cuda_matrix_free.inst.in @@ -15,7 +15,7 @@ for (deal_II_dimension : DIMENSIONS) -{ - template class MatrixFree; - template class MatrixFree; -} + { + template class MatrixFree; + template class MatrixFree; + } diff --git a/source/matrix_free/evaluation_selector.inst.in b/source/matrix_free/evaluation_selector.inst.in index 7ed645c2a9..bcc14e7543 100644 --- a/source/matrix_free/evaluation_selector.inst.in +++ b/source/matrix_free/evaluation_selector.inst.in @@ -14,22 +14,36 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; components : SPACE_DIMENSIONS; scalar_type : REAL_SCALARS) -{ - template - void - SelectEvaluator >::integrate - (const internal::MatrixFreeFunctions::ShapeInfo > &shape_info, - VectorizedArray *, VectorizedArray *, - VectorizedArray *, VectorizedArray *, - const bool, const bool); +for (deal_II_dimension : DIMENSIONS; components : SPACE_DIMENSIONS; + scalar_type : REAL_SCALARS) + { + template void SelectEvaluator>:: + integrate(const internal::MatrixFreeFunctions::ShapeInfo< + VectorizedArray> &shape_info, + VectorizedArray *, + VectorizedArray *, + VectorizedArray *, + VectorizedArray *, + const bool, + const bool); - template - void - SelectEvaluator >::evaluate - (const internal::MatrixFreeFunctions::ShapeInfo > &shape_info, - VectorizedArray *, VectorizedArray *, - VectorizedArray *, - VectorizedArray *, - VectorizedArray *, const bool, const bool, const bool); -} + template void SelectEvaluator>:: + evaluate(const internal::MatrixFreeFunctions::ShapeInfo< + VectorizedArray> &shape_info, + VectorizedArray *, + VectorizedArray *, + VectorizedArray *, + VectorizedArray *, + VectorizedArray *, + const bool, + const bool, + const bool); + } diff --git a/source/matrix_free/mapping_info.inst.in b/source/matrix_free/mapping_info.inst.in index a464948f9b..0f6758d32e 100644 --- a/source/matrix_free/mapping_info.inst.in +++ b/source/matrix_free/mapping_info.inst.in @@ -15,25 +15,39 @@ for (deal_II_dimension : DIMENSIONS) -{ - template struct internal::MatrixFreeFunctions::MappingInfo; - template struct internal::MatrixFreeFunctions::MappingInfo; + { + template struct internal::MatrixFreeFunctions:: + MappingInfo; + template struct internal::MatrixFreeFunctions:: + MappingInfo; - template struct internal::MatrixFreeFunctions::MappingInfoStorage; - template struct internal::MatrixFreeFunctions::MappingInfoStorage; + template struct internal::MatrixFreeFunctions:: + MappingInfoStorage; + template struct internal::MatrixFreeFunctions:: + MappingInfoStorage; #if deal_II_dimension > 1 - template struct internal::MatrixFreeFunctions::MappingInfoStorage; - template struct internal::MatrixFreeFunctions::MappingInfoStorage; + template struct internal::MatrixFreeFunctions:: + MappingInfoStorage; + template struct internal::MatrixFreeFunctions:: + MappingInfoStorage; #endif - template void internal::MatrixFreeFunctions::MappingInfo:: - print_memory_consumption (std::ostream &, const TaskInfo&) const; - template void internal::MatrixFreeFunctions::MappingInfo:: - print_memory_consumption (ConditionalOStream &,const TaskInfo&) const; + template void internal::MatrixFreeFunctions::MappingInfo< + deal_II_dimension, + double>::print_memory_consumption(std::ostream &, + const TaskInfo &) const; + template void + internal::MatrixFreeFunctions::MappingInfo:: + print_memory_consumption(ConditionalOStream &, + const TaskInfo &) const; - template void internal::MatrixFreeFunctions::MappingInfo:: - print_memory_consumption (std::ostream &, const TaskInfo&) const; - template void internal::MatrixFreeFunctions::MappingInfo:: - print_memory_consumption (ConditionalOStream &, const TaskInfo&) const; - -} + template void internal::MatrixFreeFunctions::MappingInfo< + deal_II_dimension, + float>::print_memory_consumption(std::ostream &, + const TaskInfo &) const; + template void internal::MatrixFreeFunctions::MappingInfo< + deal_II_dimension, + float>::print_memory_consumption(ConditionalOStream &, + const TaskInfo &) + const; + } diff --git a/source/matrix_free/matrix_free.inst.in b/source/matrix_free/matrix_free.inst.in index 755bbe47ee..fddb7f18b3 100644 --- a/source/matrix_free/matrix_free.inst.in +++ b/source/matrix_free/matrix_free.inst.in @@ -15,58 +15,58 @@ for (deal_II_dimension : DIMENSIONS) -{ - template class MatrixFree; - template class MatrixFree; + { + template class MatrixFree; + template class MatrixFree; - template void MatrixFree:: - print_memory_consumption (std::ostream &) const; - template void MatrixFree:: - print_memory_consumption (ConditionalOStream &) const; + template void + MatrixFree::print_memory_consumption(std::ostream &) + const; + template void MatrixFree:: + print_memory_consumption(ConditionalOStream &) const; - template void MatrixFree:: - print_memory_consumption (std::ostream &) const; - template void MatrixFree:: - print_memory_consumption (ConditionalOStream &) const; + template void + MatrixFree::print_memory_consumption(std::ostream &) + const; + template void MatrixFree:: + print_memory_consumption(ConditionalOStream &) const; #ifndef DEAL_II_MSVC - template - void - internal::MatrixFreeFunctions::ShapeInfo:: - reinit(const Quadrature<1> &, - const FiniteElement &, - const unsigned int); + template void + internal::MatrixFreeFunctions::ShapeInfo::reinit( + const Quadrature<1> &, + const FiniteElement &, + const unsigned int); - template - void - internal::MatrixFreeFunctions::ShapeInfo:: - reinit(const Quadrature<1> &, - const FiniteElement &, - const unsigned int); + template void + internal::MatrixFreeFunctions::ShapeInfo::reinit( + const Quadrature<1> &, + const FiniteElement &, + const unsigned int); - template - void - internal::MatrixFreeFunctions::ShapeInfo >:: - reinit(const Quadrature<1> &, - const FiniteElement &, - const unsigned int); + template void internal::MatrixFreeFunctions:: + ShapeInfo>::reinit( + const Quadrature<1> &, + const FiniteElement &, + const unsigned int); - template - void - internal::MatrixFreeFunctions::ShapeInfo >:: - reinit(const Quadrature<1> &, - const FiniteElement &, - const unsigned int); + template void internal::MatrixFreeFunctions:: + ShapeInfo>::reinit( + const Quadrature<1> &, + const FiniteElement &, + const unsigned int); #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template bool MatrixFree:: - is_supported(const FiniteElement &); + template bool MatrixFree::is_supported( + const FiniteElement &); - template bool MatrixFree:: - is_supported(const FiniteElement &); + template bool MatrixFree::is_supported( + const FiniteElement &); #endif -} + } diff --git a/source/meshworker/mesh_worker_info.inst.in b/source/meshworker/mesh_worker_info.inst.in index 5f54fb2dc1..16471f2583 100644 --- a/source/meshworker/mesh_worker_info.inst.in +++ b/source/meshworker/mesh_worker_info.inst.in @@ -14,27 +14,39 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace MeshWorker \{ #if deal_II_dimension <= deal_II_space_dimension - template class IntegrationInfo; - template class IntegrationInfoBox; + template class IntegrationInfo; + template class IntegrationInfoBox; - template class DoFInfo; - template class DoFInfoBox >; + template class DoFInfo; + template class DoFInfoBox< + deal_II_dimension, + DoFInfo>; - template void IntegrationInfo::fill_local_data( - const DoFInfo&, bool); + template void + IntegrationInfo:: + fill_local_data( + const DoFInfo &, + bool); - template class DoFInfo; - template class DoFInfoBox >; + template class DoFInfo; + template class DoFInfoBox< + deal_II_dimension, + DoFInfo>; - template void IntegrationInfo::fill_local_data( - const DoFInfo&, bool); + template void + IntegrationInfo:: + fill_local_data( + const DoFInfo &, + bool); #endif \} -} + } diff --git a/source/meshworker/mesh_worker_vector_selector.inst.in b/source/meshworker/mesh_worker_vector_selector.inst.in index 219879dc29..d1b3faa343 100644 --- a/source/meshworker/mesh_worker_vector_selector.inst.in +++ b/source/meshworker/mesh_worker_vector_selector.inst.in @@ -15,25 +15,34 @@ -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace MeshWorker \{ #if deal_II_dimension <= deal_II_space_dimension - template class VectorDataBase; + template class VectorDataBase; #endif \} -} + } -for (VECTOR : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VECTOR : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace MeshWorker \{ #if deal_II_dimension <= deal_II_space_dimension - template class VectorData; - template class VectorData; - template class MGVectorData; - template class MGVectorData; + template class VectorData; + template class VectorData; + template class MGVectorData; + template class MGVectorData; #endif \} -} + } diff --git a/source/multigrid/mg_base.inst.in b/source/multigrid/mg_base.inst.in index 0ebbb5ea1d..c8cd725e87 100644 --- a/source/multigrid/mg_base.inst.in +++ b/source/multigrid/mg_base.inst.in @@ -15,9 +15,9 @@ for (VEC : VECTOR_TYPES) -{ - template class MGTransferBase< VEC >; - template class MGMatrixBase< VEC >; - template class MGSmootherBase< VEC >; - template class MGCoarseGridBase< VEC >; -} + { + template class MGTransferBase; + template class MGMatrixBase; + template class MGSmootherBase; + template class MGCoarseGridBase; + } diff --git a/source/multigrid/mg_level_global_transfer.inst.in b/source/multigrid/mg_level_global_transfer.inst.in index d67f14254b..950f561671 100644 --- a/source/multigrid/mg_level_global_transfer.inst.in +++ b/source/multigrid/mg_level_global_transfer.inst.in @@ -16,81 +16,109 @@ for (V1 : VECTORS_WITH_MATRIX) -{ - template class MGLevelGlobalTransfer< V1 >; -} + { + template class MGLevelGlobalTransfer; + } for (deal_II_dimension : DIMENSIONS; V1 : VECTORS_WITH_MATRIX) -{ - template - void MGLevelGlobalTransfer< V1 >::fill_and_communicate_copy_indices( - const DoFHandler &mg_dof); -} + { + template void MGLevelGlobalTransfer:: + fill_and_communicate_copy_indices( + const DoFHandler &mg_dof); + } -for (deal_II_dimension : DIMENSIONS; V1,V2 : DEAL_II_VEC_TEMPLATES; S1, S2 : REAL_SCALARS) -{ +for (deal_II_dimension : DIMENSIONS; V1, V2 : DEAL_II_VEC_TEMPLATES; + S1, S2 : REAL_SCALARS) + { + template void MGLevelGlobalTransfer>::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const V2 &) const; + template void MGLevelGlobalTransfer>::copy_from_mg( + const DoFHandler &, + V2 &, + const MGLevelObject> &) const; + template void MGLevelGlobalTransfer>::copy_from_mg_add( + const DoFHandler &, + V2 &, + const MGLevelObject> &) const; + } + +for (deal_II_dimension : DIMENSIONS) + { template void - MGLevelGlobalTransfer >::copy_to_mg ( - const DoFHandler&, MGLevelObject >&, const V2&) const; + MGLevelGlobalTransfer>:: + fill_and_communicate_copy_indices( + const DoFHandler &mg_dof); template void - MGLevelGlobalTransfer >::copy_from_mg (const DoFHandler&, V2&, - const MGLevelObject >&) const; + MGLevelGlobalTransfer>:: + copy_to_mg(const DoFHandler &, + MGLevelObject> &, + const LinearAlgebra::distributed::Vector &, + const bool) const; template void - MGLevelGlobalTransfer >::copy_from_mg_add (const DoFHandler&, V2&, - const MGLevelObject >&) const; -} - -for (deal_II_dimension : DIMENSIONS) -{ - template - void MGLevelGlobalTransfer< LinearAlgebra::distributed::Vector >::fill_and_communicate_copy_indices( - const DoFHandler &mg_dof); - template - void MGLevelGlobalTransfer< LinearAlgebra::distributed::Vector >::copy_to_mg ( - const DoFHandler&, MGLevelObject>&, const LinearAlgebra::distributed::Vector&, const bool) const; - template - void MGLevelGlobalTransfer< LinearAlgebra::distributed::Vector >::copy_to_mg ( - const DoFHandler&, MGLevelObject>&, const LinearAlgebra::distributed::Vector&, const bool) const; - -} + MGLevelGlobalTransfer>:: + copy_to_mg(const DoFHandler &, + MGLevelObject> &, + const LinearAlgebra::distributed::Vector &, + const bool) const; + } for (deal_II_dimension : DIMENSIONS; S1, S2 : REAL_SCALARS) -{ + { template void - MGLevelGlobalTransfer >::copy_to_mg ( - const DoFHandler&, MGLevelObject >&, const LinearAlgebra::distributed::Vector&) const; + MGLevelGlobalTransfer>::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const LinearAlgebra::distributed::Vector &) const; template void - MGLevelGlobalTransfer >::copy_from_mg (const DoFHandler&, LinearAlgebra::distributed::Vector&, - const MGLevelObject >&) const; + MGLevelGlobalTransfer>::copy_from_mg( + const DoFHandler &, + LinearAlgebra::distributed::Vector &, + const MGLevelObject> &) const; template void - MGLevelGlobalTransfer >::copy_from_mg_add (const DoFHandler&, LinearAlgebra::distributed::Vector&, - const MGLevelObject >&) const; -} + MGLevelGlobalTransfer>:: + copy_from_mg_add( + const DoFHandler &, + LinearAlgebra::distributed::Vector &, + const MGLevelObject> &) const; + } -for(deal_II_dimension : DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS) + { #ifdef DEAL_II_WITH_TRILINOS template void - MGLevelGlobalTransfer::copy_to_mg ( - const DoFHandler&, MGLevelObject&, const TrilinosWrappers::MPI::Vector&) const; + MGLevelGlobalTransfer::copy_to_mg( + const DoFHandler &, + MGLevelObject &, + const TrilinosWrappers::MPI::Vector &) const; template void - MGLevelGlobalTransfer::copy_from_mg (const DoFHandler&, TrilinosWrappers::MPI::Vector&, - const MGLevelObject&) const; + MGLevelGlobalTransfer::copy_from_mg( + const DoFHandler &, + TrilinosWrappers::MPI::Vector &, + const MGLevelObject &) const; template void - MGLevelGlobalTransfer::copy_from_mg_add (const DoFHandler&, TrilinosWrappers::MPI::Vector&, - const MGLevelObject&) const; + MGLevelGlobalTransfer::copy_from_mg_add( + const DoFHandler &, + TrilinosWrappers::MPI::Vector &, + const MGLevelObject &) const; #endif #ifdef DEAL_II_WITH_PETSC + template void MGLevelGlobalTransfer::copy_to_mg( + const DoFHandler &, + MGLevelObject &, + const PETScWrappers::MPI::Vector &) const; template void - MGLevelGlobalTransfer::copy_to_mg ( - const DoFHandler&, MGLevelObject&, const PETScWrappers::MPI::Vector&) const; - template void - MGLevelGlobalTransfer::copy_from_mg (const DoFHandler&, PETScWrappers::MPI::Vector&, - const MGLevelObject&) const; + MGLevelGlobalTransfer::copy_from_mg( + const DoFHandler &, + PETScWrappers::MPI::Vector &, + const MGLevelObject &) const; template void - MGLevelGlobalTransfer::copy_from_mg_add (const DoFHandler&, PETScWrappers::MPI::Vector&, - const MGLevelObject&) const; + MGLevelGlobalTransfer::copy_from_mg_add( + const DoFHandler &, + PETScWrappers::MPI::Vector &, + const MGLevelObject &) const; #endif -} + } diff --git a/source/multigrid/mg_tools.inst.in b/source/multigrid/mg_tools.inst.in index 1b880725a1..6bac418cea 100644 --- a/source/multigrid/mg_tools.inst.in +++ b/source/multigrid/mg_tools.inst.in @@ -16,140 +16,150 @@ for (PATTERN : SPARSITY_PATTERNS; deal_II_dimension : DIMENSIONS; - deal_II_space_dimension: SPACE_DIMENSIONS) -{ + deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace MGTools \{ #if deal_II_dimension <= deal_II_space_dimension - template void - make_sparsity_pattern, PATTERN> ( - const DoFHandler &, - PATTERN &, - const unsigned int); - - template void - make_interface_sparsity_pattern, PATTERN> ( - const DoFHandler &, - const MGConstrainedDoFs &, - PATTERN &, - const unsigned int); + template void + make_sparsity_pattern< + DoFHandler, + PATTERN>(const DoFHandler &, + PATTERN &, + const unsigned int); + + template void + make_interface_sparsity_pattern< + DoFHandler, + PATTERN>(const DoFHandler &, + const MGConstrainedDoFs &, + PATTERN &, + const unsigned int); #endif #if deal_II_dimension == deal_II_space_dimension - template void - make_flux_sparsity_pattern ( + template void + make_flux_sparsity_pattern( const DoFHandler &, PATTERN &, const unsigned int); - template void - make_flux_sparsity_pattern_edge ( + template void + make_flux_sparsity_pattern_edge( const DoFHandler &, PATTERN &, const unsigned int); -#if deal_II_dimension > 1 +# if deal_II_dimension > 1 - template void - make_flux_sparsity_pattern ( + template void + make_flux_sparsity_pattern( const DoFHandler &, PATTERN &, const unsigned int, - const Table<2,DoFTools::Coupling>&, - const Table<2,DoFTools::Coupling>&); + const Table<2, DoFTools::Coupling> &, + const Table<2, DoFTools::Coupling> &); - template void - make_flux_sparsity_pattern_edge ( + template void + make_flux_sparsity_pattern_edge( const DoFHandler &, PATTERN &, const unsigned int, - const Table<2,DoFTools::Coupling>&); -#endif + const Table<2, DoFTools::Coupling> &); +# endif #endif \} -} + } for (deal_II_dimension : DIMENSIONS) -{ + { namespace MGTools \{ #if deal_II_dimension > 1 - template void - compute_row_length_vector( - const DoFHandler&, unsigned int, - std::vector&, const DoFTools::Coupling); - template void - compute_row_length_vector( - const DoFHandler&, unsigned int, - std::vector&, - const Table<2,DoFTools::Coupling>&, const Table<2,DoFTools::Coupling>&); + template void + compute_row_length_vector(const DoFHandler &, + unsigned int, + std::vector &, + const DoFTools::Coupling); + template void + compute_row_length_vector(const DoFHandler &, + unsigned int, + std::vector &, + const Table<2, DoFTools::Coupling> &, + const Table<2, DoFTools::Coupling> &); #endif - template void count_dofs_per_component ( - const DoFHandler&, std::vector >&, - bool, std::vector); - template void count_dofs_per_block ( - const DoFHandler&, std::vector >&, + template void + count_dofs_per_component( + const DoFHandler &, + std::vector> &, + bool, std::vector); + template void + count_dofs_per_block(const DoFHandler &, + std::vector> &, + std::vector); #if deal_II_dimension > 1 - template void make_boundary_list( - const DoFHandler&, - const FunctionMap::type&, - std::vector >&, - const ComponentMask &); + template void + make_boundary_list(const DoFHandler &, + const FunctionMap::type &, + std::vector> &, + const ComponentMask &); #endif - template void make_boundary_list( - const DoFHandler&, - const FunctionMap::type&, - std::vector&, - const ComponentMask &); + template void + make_boundary_list(const DoFHandler &, + const FunctionMap::type &, + std::vector &, + const ComponentMask &); - template void make_boundary_list( - const DoFHandler &, - const std::set &, - std::vector &, - const ComponentMask &); + template void + make_boundary_list(const DoFHandler &, + const std::set &, + std::vector &, + const ComponentMask &); - template - void - extract_inner_interface_dofs (const DoFHandler &mg_dof_handler, - std::vector &interface_dofs); + template void + extract_inner_interface_dofs( + const DoFHandler &mg_dof_handler, + std::vector & interface_dofs); - template - void - extract_non_interface_dofs (const DoFHandler & mg_dof_handler, - std::vector > &non_interface_dofs); + template void + extract_non_interface_dofs( + const DoFHandler & mg_dof_handler, + std::vector> &non_interface_dofs); #if deal_II_dimension < 3 - template void count_dofs_per_block ( - const DoFHandler&, - std::vector >&, std::vector); + template void + count_dofs_per_block( + const DoFHandler &, + std::vector> &, + std::vector); #endif #if deal_II_dimension == 3 - template void count_dofs_per_block ( - const DoFHandler<1,3>&, - std::vector >&, std::vector); + template void + count_dofs_per_block(const DoFHandler<1, 3> &, + std::vector> &, + std::vector); #endif \} -} + } -for (deal_II_dimension : DIMENSIONS; - deal_II_space_dimension: SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace MGTools \{ #if deal_II_dimension <= deal_II_space_dimension - template - unsigned int - max_level_for_coarse_mesh (const Triangulation & tria); + template unsigned int + max_level_for_coarse_mesh( + const Triangulation &tria); #endif \} -} + } diff --git a/source/multigrid/mg_transfer_block.inst.in b/source/multigrid/mg_transfer_block.inst.in index 5810ab39ee..d32a840060 100644 --- a/source/multigrid/mg_transfer_block.inst.in +++ b/source/multigrid/mg_transfer_block.inst.in @@ -16,119 +16,102 @@ for (deal_II_dimension : DIMENSIONS) -{ - template - void MGTransferBlock::build_matrices - (const DoFHandler&, const DoFHandler&, - const std::vector&); + { + template void MGTransferBlock::build_matrices( + const DoFHandler &, + const DoFHandler &, + const std::vector &); - template - void MGTransferBlock::build_matrices - (const DoFHandler&, const DoFHandler&, - const std::vector&); + template void MGTransferBlock::build_matrices( + const DoFHandler &, + const DoFHandler &, + const std::vector &); - template - void MGTransferBlockSelect::build_matrices - (const DoFHandler&, const DoFHandler&, - const unsigned int); - - template - void MGTransferBlockSelect::build_matrices - (const DoFHandler&, const DoFHandler&, - const unsigned int); - - template void - MGTransferBlock::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const BlockVector&) const; template void - MGTransferBlock::copy_from_mg ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; - template void - MGTransferBlock::copy_from_mg_add ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; + MGTransferBlockSelect::build_matrices( + const DoFHandler &, + const DoFHandler &, + const unsigned int); template void - MGTransferBlock::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const BlockVector&) const; - template void - MGTransferBlock::copy_from_mg ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; - template void - MGTransferBlock::copy_from_mg_add ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; + MGTransferBlockSelect::build_matrices( + const DoFHandler &, + const DoFHandler &, + const unsigned int); - template void - MGTransferBlockSelect::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const Vector&) const; - template void - MGTransferBlockSelect::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const BlockVector&) const; - template void - MGTransferBlockSelect::copy_from_mg ( - const DoFHandler&, - Vector&, - const MGLevelObject >&) const; - template void - MGTransferBlockSelect::copy_from_mg ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; - template void - MGTransferBlockSelect::copy_from_mg_add ( - const DoFHandler&, - Vector&, - const MGLevelObject >&) const; - template void - MGTransferBlockSelect::copy_from_mg_add ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; + template void MGTransferBlock::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const BlockVector &) const; + template void MGTransferBlock::copy_from_mg( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + template void MGTransferBlock::copy_from_mg_add( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; - template void - MGTransferBlockSelect::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const Vector&) const; - template void - MGTransferBlockSelect::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const BlockVector&) const; - template void - MGTransferBlockSelect::copy_from_mg ( - const DoFHandler&, - Vector&, - const MGLevelObject >&) const; - template void - MGTransferBlockSelect::copy_from_mg ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; - template void - MGTransferBlockSelect::copy_from_mg_add ( - const DoFHandler&, - Vector&, - const MGLevelObject >&) const; - template void - MGTransferBlockSelect::copy_from_mg_add ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; -} + template void MGTransferBlock::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const BlockVector &) const; + template void MGTransferBlock::copy_from_mg( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + template void MGTransferBlock::copy_from_mg_add( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + + template void MGTransferBlockSelect::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const Vector &) const; + template void MGTransferBlockSelect::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const BlockVector &) const; + template void MGTransferBlockSelect::copy_from_mg( + const DoFHandler &, + Vector &, + const MGLevelObject> &) const; + template void MGTransferBlockSelect::copy_from_mg( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + template void MGTransferBlockSelect::copy_from_mg_add( + const DoFHandler &, + Vector &, + const MGLevelObject> &) const; + template void MGTransferBlockSelect::copy_from_mg_add( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + template void MGTransferBlockSelect::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const Vector &) const; + template void MGTransferBlockSelect::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const BlockVector &) const; + template void MGTransferBlockSelect::copy_from_mg( + const DoFHandler &, + Vector &, + const MGLevelObject> &) const; + template void MGTransferBlockSelect::copy_from_mg( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + template void MGTransferBlockSelect::copy_from_mg_add( + const DoFHandler &, + Vector &, + const MGLevelObject> &) const; + template void MGTransferBlockSelect::copy_from_mg_add( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + } diff --git a/source/multigrid/mg_transfer_component.inst.in b/source/multigrid/mg_transfer_component.inst.in index d6932e799e..e98b8ade0f 100644 --- a/source/multigrid/mg_transfer_component.inst.in +++ b/source/multigrid/mg_transfer_component.inst.in @@ -16,85 +16,72 @@ for (deal_II_dimension : DIMENSIONS) -{ - template - void MGTransferSelect::build_matrices - (const DoFHandler &d, - const DoFHandler &, - unsigned int, unsigned int, - const std::vector&, - const std::vector&, - const std::vector >&); + { + template void MGTransferSelect::build_matrices( + const DoFHandler &d, + const DoFHandler &, + unsigned int, + unsigned int, + const std::vector &, + const std::vector &, + const std::vector> &); - template - void MGTransferSelect::build_matrices - (const DoFHandler &d, - const DoFHandler &, - unsigned int, unsigned int, - const std::vector&, - const std::vector&, - const std::vector >&); + template void MGTransferSelect::build_matrices( + const DoFHandler &d, + const DoFHandler &, + unsigned int, + unsigned int, + const std::vector &, + const std::vector &, + const std::vector> &); - template void - MGTransferSelect::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const Vector&) const; - template void - MGTransferSelect::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const BlockVector&) const; - template void - MGTransferSelect::copy_from_mg ( - const DoFHandler&, - Vector&, - const MGLevelObject >&) const; - template void - MGTransferSelect::copy_from_mg ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; - template void - MGTransferSelect::copy_from_mg_add ( - const DoFHandler&, - Vector&, - const MGLevelObject >&) const; - template void - MGTransferSelect::copy_from_mg_add ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; - - template void - MGTransferSelect::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const Vector&) const; - template void - MGTransferSelect::copy_to_mg ( - const DoFHandler&, - MGLevelObject >&, - const BlockVector&) const; - template void - MGTransferSelect::copy_from_mg ( - const DoFHandler&, - Vector&, - const MGLevelObject >&) const; - template void - MGTransferSelect::copy_from_mg ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; - template void - MGTransferSelect::copy_from_mg_add ( - const DoFHandler&, - Vector&, - const MGLevelObject >&) const; - template void - MGTransferSelect::copy_from_mg_add ( - const DoFHandler&, - BlockVector&, - const MGLevelObject >&) const; -} + template void MGTransferSelect::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const Vector &) const; + template void MGTransferSelect::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const BlockVector &) const; + template void MGTransferSelect::copy_from_mg( + const DoFHandler &, + Vector &, + const MGLevelObject> &) const; + template void MGTransferSelect::copy_from_mg( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + template void MGTransferSelect::copy_from_mg_add( + const DoFHandler &, + Vector &, + const MGLevelObject> &) const; + template void MGTransferSelect::copy_from_mg_add( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + template void MGTransferSelect::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const Vector &) const; + template void MGTransferSelect::copy_to_mg( + const DoFHandler &, + MGLevelObject> &, + const BlockVector &) const; + template void MGTransferSelect::copy_from_mg( + const DoFHandler &, + Vector &, + const MGLevelObject> &) const; + template void MGTransferSelect::copy_from_mg( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + template void MGTransferSelect::copy_from_mg_add( + const DoFHandler &, + Vector &, + const MGLevelObject> &) const; + template void MGTransferSelect::copy_from_mg_add( + const DoFHandler &, + BlockVector &, + const MGLevelObject> &) const; + } diff --git a/source/multigrid/mg_transfer_internal.inst.in b/source/multigrid/mg_transfer_internal.inst.in index 56e846947e..270e086b6b 100644 --- a/source/multigrid/mg_transfer_internal.inst.in +++ b/source/multigrid/mg_transfer_internal.inst.in @@ -15,76 +15,78 @@ -for (deal_II_dimension : DIMENSIONS; - deal_II_space_dimension: SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { namespace internal \{ - namespace MGTransfer - \{ + namespace MGTransfer + \{ #if deal_II_dimension <= deal_II_space_dimension - template - void fill_copy_indices( - const dealii::DoFHandler&, - const MGConstrainedDoFs*, - std::vector > > &, - std::vector > > &, - std::vector > > &, - const bool); + template void + fill_copy_indices( + const dealii::DoFHandler + &, + const MGConstrainedDoFs *, + std::vector>> &, + std::vector>> &, + std::vector>> &, + const bool); #endif + \} \} - \} -} + } for (deal_II_dimension : DIMENSIONS) -{ + { namespace internal \{ - namespace MGTransfer - \{ + namespace MGTransfer + \{ - template - unsigned int - compute_shift_within_children(const unsigned int, - const unsigned int, - const unsigned int); - \} + template unsigned int + compute_shift_within_children(const unsigned int, + const unsigned int, + const unsigned int); + \} \} -} + } for (S : REAL_SCALARS) -{ + { namespace internal \{ - namespace MGTransfer - \{ + namespace MGTransfer + \{ - template - struct ElementInfo; - \} + template struct ElementInfo; + \} \} -} + } for (deal_II_dimension : DIMENSIONS; S : REAL_SCALARS) -{ + { namespace internal \{ - namespace MGTransfer - \{ + namespace MGTransfer + \{ - template - void setup_transfer(const dealii::DoFHandler&, - const MGConstrainedDoFs*, - ElementInfo&, - std::vector >&, - std::vector > >&, - std::vector&, - std::vector > >&, - std::vector >&, - std::vector > >&, - MGLevelObject >&); - \} + template void + setup_transfer( + const dealii::DoFHandler &, + const MGConstrainedDoFs *, + ElementInfo &, + std::vector> &, + std::vector>> &, + std::vector &, + std::vector>> &, + std::vector> &, + std::vector>> &, + MGLevelObject> &); + \} \} -} + } diff --git a/source/multigrid/mg_transfer_matrix_free.inst.in b/source/multigrid/mg_transfer_matrix_free.inst.in index a1bd0647bb..568fc0a0ce 100644 --- a/source/multigrid/mg_transfer_matrix_free.inst.in +++ b/source/multigrid/mg_transfer_matrix_free.inst.in @@ -16,7 +16,7 @@ for (deal_II_dimension : DIMENSIONS; S1 : REAL_SCALARS) -{ - template class MGTransferMatrixFree< deal_II_dimension, S1 >; - template class MGTransferBlockMatrixFree< deal_II_dimension, S1 >; -} + { + template class MGTransferMatrixFree; + template class MGTransferBlockMatrixFree; + } diff --git a/source/multigrid/mg_transfer_prebuilt.inst.in b/source/multigrid/mg_transfer_prebuilt.inst.in index 7299c82e31..26d4fe47a9 100644 --- a/source/multigrid/mg_transfer_prebuilt.inst.in +++ b/source/multigrid/mg_transfer_prebuilt.inst.in @@ -16,13 +16,12 @@ for (V1 : VECTORS_WITH_MATRIX) -{ - template class MGTransferPrebuilt< V1 >; -} + { + template class MGTransferPrebuilt; + } for (deal_II_dimension : DIMENSIONS; V1 : VECTORS_WITH_MATRIX) -{ - template - void MGTransferPrebuilt< V1 >::build_matrices( - const DoFHandler &mg_dof); -} + { + template void MGTransferPrebuilt::build_matrices( + const DoFHandler &mg_dof); + } diff --git a/source/multigrid/multigrid.inst.in b/source/multigrid/multigrid.inst.in index 7198aa62fb..440703b6a3 100644 --- a/source/multigrid/multigrid.inst.in +++ b/source/multigrid/multigrid.inst.in @@ -15,6 +15,6 @@ for (VEC : VECTOR_TYPES) -{ - template class Multigrid< VEC >; -} + { + template class Multigrid; + } diff --git a/source/non_matching/coupling.inst.in b/source/non_matching/coupling.inst.in index 06eb4ad1b3..8846120d98 100644 --- a/source/non_matching/coupling.inst.in +++ b/source/non_matching/coupling.inst.in @@ -14,59 +14,59 @@ // --------------------------------------------------------------------- -for (dim0 : DIMENSIONS; dim1 :DIMENSIONS; spacedim : SPACE_DIMENSIONS; - Sparsity : SPARSITY_PATTERNS) -{ +for (dim0 : DIMENSIONS; dim1 : DIMENSIONS; spacedim : SPACE_DIMENSIONS; + Sparsity : SPARSITY_PATTERNS) + { #if dim1 <= dim0 && dim0 <= spacedim - template - void create_coupling_sparsity_pattern(const DoFHandler &space_dh, - const DoFHandler &immersed_dh, - const Quadrature &quad, - Sparsity &sparsity, - const ConstraintMatrix &constraints, - const ComponentMask &space_comps, - const ComponentMask &immersed_comps, - const Mapping &space_mapping, - const Mapping &immersed_mapping); + template void create_coupling_sparsity_pattern( + const DoFHandler &space_dh, + const DoFHandler &immersed_dh, + const Quadrature & quad, + Sparsity & sparsity, + const ConstraintMatrix & constraints, + const ComponentMask & space_comps, + const ComponentMask & immersed_comps, + const Mapping & space_mapping, + const Mapping & immersed_mapping); - template - void create_coupling_sparsity_pattern(const GridTools::Cache &cache, - const DoFHandler &space_dh, - const DoFHandler &immersed_dh, - const Quadrature &quad, - Sparsity &sparsity, - const ConstraintMatrix &constraints, - const ComponentMask &space_comps, - const ComponentMask &immersed_comps, - const Mapping &immersed_mapping); + template void create_coupling_sparsity_pattern( + const GridTools::Cache &cache, + const DoFHandler & space_dh, + const DoFHandler & immersed_dh, + const Quadrature & quad, + Sparsity & sparsity, + const ConstraintMatrix & constraints, + const ComponentMask & space_comps, + const ComponentMask & immersed_comps, + const Mapping & immersed_mapping); #endif -} + } -for (dim0 : DIMENSIONS; dim1 :DIMENSIONS; spacedim : SPACE_DIMENSIONS; - Matrix : SPARSE_MATRICES) -{ +for (dim0 : DIMENSIONS; dim1 : DIMENSIONS; spacedim : SPACE_DIMENSIONS; + Matrix : SPARSE_MATRICES) + { #if dim1 <= dim0 && dim0 <= spacedim - template - void create_coupling_mass_matrix(const DoFHandler &space_dh, - const DoFHandler &immersed_dh, - const Quadrature &quad, - Matrix &matrix, - const ConstraintMatrix &constraints, - const ComponentMask &space_comps, - const ComponentMask &immersed_comps, - const Mapping &space_mapping, - const Mapping &immersed_mapping); + template void create_coupling_mass_matrix( + const DoFHandler &space_dh, + const DoFHandler &immersed_dh, + const Quadrature & quad, + Matrix & matrix, + const ConstraintMatrix & constraints, + const ComponentMask & space_comps, + const ComponentMask & immersed_comps, + const Mapping & space_mapping, + const Mapping & immersed_mapping); - template - void create_coupling_mass_matrix(const GridTools::Cache &cache, - const DoFHandler &space_dh, - const DoFHandler &immersed_dh, - const Quadrature &quad, - Matrix &matrix, - const ConstraintMatrix &constraints, - const ComponentMask &space_comps, - const ComponentMask &immersed_comps, - const Mapping &immersed_mapping); + template void create_coupling_mass_matrix( + const GridTools::Cache &cache, + const DoFHandler & space_dh, + const DoFHandler & immersed_dh, + const Quadrature & quad, + Matrix & matrix, + const ConstraintMatrix & constraints, + const ComponentMask & space_comps, + const ComponentMask & immersed_comps, + const Mapping & immersed_mapping); #endif -} + } diff --git a/source/numerics/data_out.inst.in b/source/numerics/data_out.inst.in index 28b62d94c2..644f97e10c 100644 --- a/source/numerics/data_out.inst.in +++ b/source/numerics/data_out.inst.in @@ -16,25 +16,29 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ - namespace internal \{ - namespace DataOutImplementation \{ + { + namespace internal + \{ + namespace DataOutImplementation + \{ #if deal_II_dimension <= deal_II_space_dimension - template struct ParallelData; + template struct ParallelData; #endif + \} \} - \} -} + } for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS) -{ - template class DataOut >; + { + template class DataOut>; #if deal_II_dimension < 3 - template class DataOut >; + template class DataOut>; #endif #if deal_II_dimension == 3 - template class DataOut<1, DH<1,3> >; + template class DataOut<1, DH<1, 3>>; #endif -} + } diff --git a/source/numerics/data_out_dof_data.inst.in b/source/numerics/data_out_dof_data.inst.in index d0a7f624f2..03a4f0503b 100644 --- a/source/numerics/data_out_dof_data.inst.in +++ b/source/numerics/data_out_dof_data.inst.in @@ -14,165 +14,213 @@ // --------------------------------------------------------------------- -for (VEC : VECTOR_TYPES; DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS) -{ - template void - DataOut_DoFData,deal_II_dimension,deal_II_dimension>:: - add_data_vector_internal (const DH *, - const VEC &, - const std::vector &, - const DataVectorType, - const std::vector &, - const bool); - - template void - DataOut_DoFData,deal_II_dimension,deal_II_dimension>:: - add_data_vector (const DH &, - const VEC &, - const DataPostprocessor::space_dimension> &); - - - -// stuff needed for face data - - template void - DataOut_DoFData,deal_II_dimension-1,deal_II_dimension>:: - add_data_vector_internal (const DH *, - const VEC &, - const std::vector &, - const DataVectorType, - const std::vector &, - const bool); - - template void - DataOut_DoFData,deal_II_dimension-1,deal_II_dimension>:: - add_data_vector (const DH &, - const VEC &, - const DataPostprocessor::space_dimension> &); - - - -// things for DataOutRotation +for (VEC : VECTOR_TYPES; DH : DOFHANDLER_TEMPLATES; + deal_II_dimension : DIMENSIONS) + { + template void DataOut_DoFData, + deal_II_dimension, + deal_II_dimension>:: + add_data_vector_internal( + const DH *, + const VEC &, + const std::vector &, + const DataVectorType, + const std::vector< + DataComponentInterpretation::DataComponentInterpretation> &, + const bool); + + template void DataOut_DoFData, + deal_II_dimension, + deal_II_dimension>:: + add_data_vector( + const DH &, + const VEC &, + const DataPostprocessor< + DH::space_dimension> &); + + + + // stuff needed for face data + + template void DataOut_DoFData, + deal_II_dimension - 1, + deal_II_dimension>:: + add_data_vector_internal( + const DH *, + const VEC &, + const std::vector &, + const DataVectorType, + const std::vector< + DataComponentInterpretation::DataComponentInterpretation> &, + const bool); + + template void DataOut_DoFData, + deal_II_dimension - 1, + deal_II_dimension>:: + add_data_vector( + const DH &, + const VEC &, + const DataPostprocessor< + DH::space_dimension> &); + + + + // things for DataOutRotation #if deal_II_dimension < 3 - template void - DataOut_DoFData,deal_II_dimension+1,deal_II_dimension+1>:: - add_data_vector_internal (const DH *, - const VEC &, - const std::vector &, - const DataVectorType, - const std::vector &, - const bool); - - template void - DataOut_DoFData,deal_II_dimension+1,deal_II_dimension+1>:: - add_data_vector (const DH &, - const VEC &, - const DataPostprocessor::space_dimension> &); + template void DataOut_DoFData, + deal_II_dimension + 1, + deal_II_dimension + 1>:: + add_data_vector_internal( + const DH *, + const VEC &, + const std::vector &, + const DataVectorType, + const std::vector< + DataComponentInterpretation::DataComponentInterpretation> &, + const bool); + + template void DataOut_DoFData, + deal_II_dimension + 1, + deal_II_dimension + 1>:: + add_data_vector( + const DH &, + const VEC &, + const DataPostprocessor< + DH::space_dimension> &); #endif -} + } for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS) -{ - template void - DataOut_DoFData,deal_II_dimension,deal_II_dimension>:: - add_data_vector_internal (const DH *, - const IndexSet &, - const std::vector &, - const DataVectorType, - const std::vector &, - const bool); - - template void - DataOut_DoFData,deal_II_dimension,deal_II_dimension>:: - add_data_vector (const DH &, - const IndexSet &, - const DataPostprocessor::space_dimension> &); - - - -// stuff needed for face data - - template void - DataOut_DoFData,deal_II_dimension-1,deal_II_dimension>:: - add_data_vector_internal (const DH *, - const IndexSet &, - const std::vector &, - const DataVectorType, - const std::vector &, - const bool); - - template void - DataOut_DoFData,deal_II_dimension-1,deal_II_dimension>:: - add_data_vector (const DH &, - const IndexSet &, - const DataPostprocessor::space_dimension> &); - -// things for DataOutRotation + { + template void DataOut_DoFData, + deal_II_dimension, + deal_II_dimension>:: + add_data_vector_internal( + const DH *, + const IndexSet &, + const std::vector &, + const DataVectorType, + const std::vector< + DataComponentInterpretation::DataComponentInterpretation> &, + const bool); + + template void DataOut_DoFData, + deal_II_dimension, + deal_II_dimension>:: + add_data_vector( + const DH &, + const IndexSet &, + const DataPostprocessor< + DH::space_dimension> &); + + + + // stuff needed for face data + + template void DataOut_DoFData, + deal_II_dimension - 1, + deal_II_dimension>:: + add_data_vector_internal( + const DH *, + const IndexSet &, + const std::vector &, + const DataVectorType, + const std::vector< + DataComponentInterpretation::DataComponentInterpretation> &, + const bool); + + template void DataOut_DoFData, + deal_II_dimension - 1, + deal_II_dimension>:: + add_data_vector( + const DH &, + const IndexSet &, + const DataPostprocessor< + DH::space_dimension> &); + + // things for DataOutRotation #if deal_II_dimension < 3 - template void - DataOut_DoFData,deal_II_dimension+1,deal_II_dimension+1>:: - add_data_vector_internal (const DH *, - const IndexSet &, - const std::vector &, - const DataVectorType, - const std::vector &, - const bool); - - template void - DataOut_DoFData,deal_II_dimension+1,deal_II_dimension+1>:: - add_data_vector (const DH &, - const IndexSet &, - const DataPostprocessor::space_dimension> &); + template void DataOut_DoFData, + deal_II_dimension + 1, + deal_II_dimension + 1>:: + add_data_vector_internal( + const DH *, + const IndexSet &, + const std::vector &, + const DataVectorType, + const std::vector< + DataComponentInterpretation::DataComponentInterpretation> &, + const bool); + + template void DataOut_DoFData, + deal_II_dimension + 1, + deal_II_dimension + 1>:: + add_data_vector( + const DH &, + const IndexSet &, + const DataPostprocessor< + DH::space_dimension> &); #endif -} + } for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS) -{ - template class DataOut_DoFData,deal_II_dimension>; + { + template class DataOut_DoFData, deal_II_dimension>; #if deal_II_dimension < 3 - template class DataOut_DoFData,deal_II_dimension+1>; - template class DataOut_DoFData,deal_II_dimension,deal_II_dimension+1>; + template class DataOut_DoFData, + deal_II_dimension + 1>; + template class DataOut_DoFData, + deal_II_dimension, + deal_II_dimension + 1>; #endif #if deal_II_dimension >= 2 - template class DataOut_DoFData,deal_II_dimension-1,deal_II_dimension>; + template class DataOut_DoFData, + deal_II_dimension - 1, + deal_II_dimension>; #endif #if deal_II_dimension == 3 - template class DataOut_DoFData,1,3>; + template class DataOut_DoFData, 1, 3>; #endif - -} + } for (deal_II_dimension : DIMENSIONS) -{ - namespace internal \{ - namespace DataOutImplementation \{ - template struct ParallelDataBase; - \} + { + namespace internal + \{ + namespace DataOutImplementation + \{ + template struct ParallelDataBase; + \} \} -} + } for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS) -{ - namespace internal \{ - namespace DataOutImplementation \{ - template - void - ParallelDataBase:: - reinit_all_fe_values > - (std::vector > > > &dof_data, - const dealii::Triangulation::cell_iterator &cell, - const unsigned int face); - \} + { + namespace internal + \{ + namespace DataOutImplementation + \{ + template void + ParallelDataBase:: + reinit_all_fe_values< + dealii::DH>( + std::vector>>> + &dof_data, + const dealii::Triangulation::cell_iterator &cell, + const unsigned int face); + \} \} -} + } diff --git a/source/numerics/data_out_dof_data_codim.inst.in b/source/numerics/data_out_dof_data_codim.inst.in index 0acf089570..0da348b0eb 100644 --- a/source/numerics/data_out_dof_data_codim.inst.in +++ b/source/numerics/data_out_dof_data_codim.inst.in @@ -14,93 +14,126 @@ // --------------------------------------------------------------------- -for (VEC : REAL_VECTOR_TYPES; DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ +for (VEC : REAL_VECTOR_TYPES; DH : DOFHANDLER_TEMPLATES; + deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : DIMENSIONS) + { #if deal_II_dimension < deal_II_space_dimension template void - DataOut_DoFData,deal_II_dimension,deal_II_space_dimension>:: - add_data_vector_internal (const DH *, - const VEC &, - const std::vector &, - const DataVectorType, - const std::vector &, - const bool); + DataOut_DoFData, + deal_II_dimension, + deal_II_space_dimension>:: + add_data_vector_internal( + const DH *, + const VEC &, + const std::vector &, + const DataVectorType, + const std::vector< + DataComponentInterpretation::DataComponentInterpretation> &, + const bool); template void - DataOut_DoFData,deal_II_dimension,deal_II_space_dimension>:: - add_data_vector (const VEC &, - const DataPostprocessor::space_dimension> &); + DataOut_DoFData, + deal_II_dimension, + deal_II_space_dimension>:: + add_data_vector( + const VEC &, + const DataPostprocessor< + DH::space_dimension> &); template void - DataOut_DoFData,deal_II_dimension,deal_II_space_dimension>:: - add_data_vector (const DH &, - const VEC &, - const DataPostprocessor::space_dimension> &); + DataOut_DoFData, + deal_II_dimension, + deal_II_space_dimension>:: + add_data_vector( + const DH &, + const VEC &, + const DataPostprocessor< + DH::space_dimension> &); #endif -} + } -for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ +for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : DIMENSIONS) + { #if deal_II_dimension < deal_II_space_dimension template void - DataOut_DoFData,deal_II_dimension,deal_II_space_dimension>:: - add_data_vector_internal - (const DH *, - const IndexSet &, - const std::vector &, - const DataVectorType, - const std::vector &, - const bool); + DataOut_DoFData, + deal_II_dimension, + deal_II_space_dimension>:: + add_data_vector_internal( + const DH *, + const IndexSet &, + const std::vector &, + const DataVectorType, + const std::vector< + DataComponentInterpretation::DataComponentInterpretation> &, + const bool); template void - DataOut_DoFData,deal_II_dimension,deal_II_space_dimension>:: - add_data_vector (const IndexSet &, - const DataPostprocessor::space_dimension> &); + DataOut_DoFData, + deal_II_dimension, + deal_II_space_dimension>:: + add_data_vector( + const IndexSet &, + const DataPostprocessor< + DH::space_dimension> &); #endif -} + } for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS) -{ + { #if deal_II_dimension < 3 - template class DataOut_DoFData,deal_II_dimension,deal_II_dimension+1>; + template class DataOut_DoFData, + deal_II_dimension, + deal_II_dimension + 1>; #endif #if deal_II_dimension == 3 - template class DataOut_DoFData,1,3>; + template class DataOut_DoFData, 1, 3>; #endif - -} + } for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ - namespace internal \{ - namespace DataOutImplementation \{ + { + namespace internal + \{ + namespace DataOutImplementation + \{ #if deal_II_dimension < deal_II_space_dimension - template struct ParallelDataBase; + template struct ParallelDataBase; #endif + \} \} - \} -} + } -for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : DIMENSIONS) -{ - namespace internal \{ - namespace DataOutImplementation \{ +for (DH : DOFHANDLER_TEMPLATES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : DIMENSIONS) + { + namespace internal + \{ + namespace DataOutImplementation + \{ #if deal_II_dimension < deal_II_space_dimension - template - void - ParallelDataBase:: - reinit_all_fe_values > - (std::vector > > > &dof_data, - const dealii::Triangulation::cell_iterator &cell, - const unsigned int face); + template void + ParallelDataBase:: + reinit_all_fe_values< + dealii::DH>( + std::vector>>> + &dof_data, + const dealii::Triangulation::cell_iterator + & cell, + const unsigned int face); #endif + \} \} - \} -} + } diff --git a/source/numerics/data_out_faces.inst.in b/source/numerics/data_out_faces.inst.in index 28ccdd25db..bbb56564b8 100644 --- a/source/numerics/data_out_faces.inst.in +++ b/source/numerics/data_out_faces.inst.in @@ -15,10 +15,12 @@ for (deal_II_dimension : DIMENSIONS) -{ + { // don't instantiate anything for the 1d -#if deal_II_dimension >=2 - template class DataOutFaces >; - template class DataOutFaces >; +#if deal_II_dimension >= 2 + template class DataOutFaces>; + template class DataOutFaces>; #endif -} + } diff --git a/source/numerics/data_out_rotation.inst.in b/source/numerics/data_out_rotation.inst.in index e17d283ca8..8db34885eb 100644 --- a/source/numerics/data_out_rotation.inst.in +++ b/source/numerics/data_out_rotation.inst.in @@ -15,8 +15,9 @@ for (deal_II_dimension : DIMENSIONS) -{ + { #if deal_II_dimension < 3 - template class DataOutRotation >; + template class DataOutRotation>; #endif -} + } diff --git a/source/numerics/data_out_stack.inst.in b/source/numerics/data_out_stack.inst.in index 0e4b475c69..19e51a7fea 100644 --- a/source/numerics/data_out_stack.inst.in +++ b/source/numerics/data_out_stack.inst.in @@ -15,39 +15,55 @@ for (deal_II_dimension : DIMENSIONS) -{ + { #if deal_II_dimension < 3 - template class DataOutStack >; - - template void DataOutStack >:: - add_data_vector (const Vector &, - const std::string &); - template void DataOutStack >:: - add_data_vector (const Vector &, - const std::string &); - - template void DataOutStack >:: - add_data_vector (const Vector &, - const std::vector &); - template void DataOutStack >:: - add_data_vector (const Vector &, - const std::vector &); - - - template class DataOutStack >; - - template void DataOutStack >:: - add_data_vector (const Vector &, - const std::string &); - template void DataOutStack >:: - add_data_vector (const Vector &, - const std::string &); - - template void DataOutStack >:: - add_data_vector (const Vector &, - const std::vector &); - template void DataOutStack >:: - add_data_vector (const Vector &, - const std::vector &); + template class DataOutStack>; + + template void DataOutStack>:: + add_data_vector(const Vector &, const std::string &); + template void DataOutStack>:: + add_data_vector(const Vector &, const std::string &); + + template void DataOutStack>:: + add_data_vector(const Vector &, + const std::vector &); + template void DataOutStack>:: + add_data_vector(const Vector &, + const std::vector &); + + + template class DataOutStack>; + + template void DataOutStack>:: + add_data_vector(const Vector &, const std::string &); + template void DataOutStack>:: + add_data_vector(const Vector &, const std::string &); + + template void DataOutStack>:: + add_data_vector(const Vector &, + const std::vector &); + template void DataOutStack>:: + add_data_vector(const Vector &, + const std::vector &); #endif -} + } diff --git a/source/numerics/data_postprocessor.inst.in b/source/numerics/data_postprocessor.inst.in index 49cf80e698..8e469cfdab 100644 --- a/source/numerics/data_postprocessor.inst.in +++ b/source/numerics/data_postprocessor.inst.in @@ -15,9 +15,9 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class DataPostprocessor; template class DataPostprocessorScalar; template class DataPostprocessorVector; template class DataPostprocessorTensor; -} + } diff --git a/source/numerics/derivative_approximation.inst.in b/source/numerics/derivative_approximation.inst.in index 2b10ccfab7..4d36c2a274 100644 --- a/source/numerics/derivative_approximation.inst.in +++ b/source/numerics/derivative_approximation.inst.in @@ -14,120 +14,108 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS ; VEC : REAL_VECTOR_TYPES ; DH : DOFHANDLER_TEMPLATES) -{ +for (deal_II_dimension : DIMENSIONS; VEC : REAL_VECTOR_TYPES; + DH : DOFHANDLER_TEMPLATES) + { namespace DerivativeApproximation \{ - template - void - approximate_gradient - (const Mapping &mapping, - const DH &dof_handler, - const VEC &solution, - Vector &derivative_norm, - const unsigned int component); - - template - void - approximate_gradient - (const DH &dof_handler, - const VEC &solution, - Vector &derivative_norm, - const unsigned int component); - - template - void - approximate_second_derivative - (const Mapping &mapping, - const DH &dof_handler, - const VEC &solution, - Vector &derivative_norm, - const unsigned int component); - - template - void - approximate_second_derivative - (const DH &dof_handler, - const VEC &solution, - Vector &derivative_norm, - const unsigned int component); - - template - void - approximate_derivative_tensor < DH , VEC, 1 > - (const Mapping &mapping, - const DH &dof_handler, - const VEC &solution, - const DH ::active_cell_iterator &cell, - Tensor<1,deal_II_dimension> &derivative, - const unsigned int component); - - template - void - approximate_derivative_tensor < DH , VEC, 2 > - (const Mapping &mapping, - const DH &dof_handler, - const VEC &solution, - const DH ::active_cell_iterator &cell, - Tensor<2,deal_II_dimension> &derivative, - const unsigned int component); - - template - void - approximate_derivative_tensor < DH , VEC, 3 > - (const Mapping &mapping, - const DH &dof_handler, - const VEC &solution, - const DH ::active_cell_iterator &cell, - Tensor<3,deal_II_dimension> &derivative, - const unsigned int component); - - - template - void - approximate_derivative_tensor < DH , VEC, 1 > - (const DH &dof_handler, - const VEC &solution, - const DH ::active_cell_iterator &cell, - Tensor<1,deal_II_dimension> &derivative, - const unsigned int component); - - template - void - approximate_derivative_tensor < DH , VEC, 2 > - (const DH &dof_handler, - const VEC &solution, - const DH ::active_cell_iterator &cell, - Tensor<2,deal_II_dimension> &derivative, - const unsigned int component); - - template - void - approximate_derivative_tensor < DH , VEC, 3 > - (const DH &dof_handler, - const VEC &solution, - const DH ::active_cell_iterator &cell, - Tensor<3,deal_II_dimension> &derivative, - const unsigned int component); + template void + approximate_gradient( + const Mapping &mapping, + const DH & dof_handler, + const VEC & solution, + Vector & derivative_norm, + const unsigned int component); + + template void + approximate_gradient( + const DH &dof_handler, + const VEC & solution, + Vector & derivative_norm, + const unsigned int component); + + template void + approximate_second_derivative( + const Mapping &mapping, + const DH & dof_handler, + const VEC & solution, + Vector & derivative_norm, + const unsigned int component); + + template void + approximate_second_derivative( + const DH &dof_handler, + const VEC & solution, + Vector & derivative_norm, + const unsigned int component); + + template void + approximate_derivative_tensor, VEC, 1>( + const Mapping & mapping, + const DH & dof_handler, + const VEC & solution, + const DH::active_cell_iterator &cell, + Tensor<1, deal_II_dimension> & derivative, + const unsigned int component); + + template void + approximate_derivative_tensor, VEC, 2>( + const Mapping & mapping, + const DH & dof_handler, + const VEC & solution, + const DH::active_cell_iterator &cell, + Tensor<2, deal_II_dimension> & derivative, + const unsigned int component); + + template void + approximate_derivative_tensor, VEC, 3>( + const Mapping & mapping, + const DH & dof_handler, + const VEC & solution, + const DH::active_cell_iterator &cell, + Tensor<3, deal_II_dimension> & derivative, + const unsigned int component); + + + template void + approximate_derivative_tensor, VEC, 1>( + const DH & dof_handler, + const VEC & solution, + const DH::active_cell_iterator &cell, + Tensor<1, deal_II_dimension> & derivative, + const unsigned int component); + + template void + approximate_derivative_tensor, VEC, 2>( + const DH & dof_handler, + const VEC & solution, + const DH::active_cell_iterator &cell, + Tensor<2, deal_II_dimension> & derivative, + const unsigned int component); + + template void + approximate_derivative_tensor, VEC, 3>( + const DH & dof_handler, + const VEC & solution, + const DH::active_cell_iterator &cell, + Tensor<3, deal_II_dimension> & derivative, + const unsigned int component); \} -} + } for (deal_II_dimension : DIMENSIONS) -{ + { namespace DerivativeApproximation \{ - template - double - derivative_norm(const Tensor<1,deal_II_dimension> &derivative); + template double + derivative_norm(const Tensor<1, deal_II_dimension> &derivative); - template - double - derivative_norm(const Tensor<2,deal_II_dimension> &derivative); + template double + derivative_norm(const Tensor<2, deal_II_dimension> &derivative); - template - double - derivative_norm(const Tensor<3,deal_II_dimension> &derivative); + template double + derivative_norm(const Tensor<3, deal_II_dimension> &derivative); \} -} + } diff --git a/source/numerics/dof_output_operator.inst.in b/source/numerics/dof_output_operator.inst.in index 316439d6f0..e5bd170f8c 100644 --- a/source/numerics/dof_output_operator.inst.in +++ b/source/numerics/dof_output_operator.inst.in @@ -14,7 +14,7 @@ // --------------------------------------------------------------------- -for (VEC : REAL_VECTOR_TYPES ; deal_II_dimension : DIMENSIONS) -{ +for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS) + { template class DoFOutputOperator; -} + } diff --git a/source/numerics/error_estimator.inst.in b/source/numerics/error_estimator.inst.in index 99f646b785..75a34b552c 100644 --- a/source/numerics/error_estimator.inst.in +++ b/source/numerics/error_estimator.inst.in @@ -14,144 +14,151 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS ; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension != 1 && deal_II_dimension <= deal_II_space_dimension - template class KellyErrorEstimator; + template class KellyErrorEstimator; #endif -} + } -for (VEC : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; DH : DOFHANDLER_TEMPLATES ) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS; + DH : DOFHANDLER_TEMPLATES) + { #if deal_II_dimension != 1 && deal_II_dimension <= deal_II_space_dimension - template - void + template void KellyErrorEstimator:: - estimate > (const Mapping &, - const DH &, - const Quadrature &, - const FunctionMap::type &, - const VEC &, - Vector &, - const ComponentMask &, - const Function *, - const unsigned int, - const types::subdomain_id, - const types::material_id, - const KellyErrorEstimator::Strategy); + estimate>( + const Mapping &, + const DH &, + const Quadrature &, + const FunctionMap::type &, + const VEC &, + Vector &, + const ComponentMask &, + const Function *, + const unsigned int, + const types::subdomain_id, + const types::material_id, + const KellyErrorEstimator::Strategy); - template - void + template void KellyErrorEstimator:: - estimate > ( - const DH &, - const Quadrature &, - const FunctionMap::type &, - const VEC &, - Vector &, + estimate>( + const DH &, + const Quadrature &, + const FunctionMap::type &, + const VEC &, + Vector &, const ComponentMask &, - const Function *, + const Function *, const unsigned int, const types::subdomain_id, const types::material_id, - const KellyErrorEstimator::Strategy); + const KellyErrorEstimator::Strategy); - template - void + template void KellyErrorEstimator:: - estimate > (const Mapping &, - const DH &, - const Quadrature &, - const FunctionMap::type &, - const std::vector &, - std::vector *> &, - const ComponentMask &, - const Function *, - const unsigned int, - const types::subdomain_id, - const types::material_id, - const KellyErrorEstimator::Strategy); + estimate>( + const Mapping &, + const DH &, + const Quadrature &, + const FunctionMap::type &, + const std::vector &, + std::vector *> &, + const ComponentMask &, + const Function *, + const unsigned int, + const types::subdomain_id, + const types::material_id, + const KellyErrorEstimator::Strategy); - template - void + template void KellyErrorEstimator:: - estimate > ( - const DH &, - const Quadrature &, - const FunctionMap::type &, - const std::vector &, - std::vector *> &, + estimate>( + const DH &, + const Quadrature &, + const FunctionMap::type &, + const std::vector &, + std::vector *> &, const ComponentMask &, - const Function *, + const Function *, const unsigned int, const types::subdomain_id, const types::material_id, - const KellyErrorEstimator::Strategy); + const KellyErrorEstimator::Strategy); - template - void + template void KellyErrorEstimator:: - estimate > (const Mapping &, - const DH &, - const hp::QCollection &, - const FunctionMap::type &, - const VEC &, - Vector &, - const ComponentMask &, - const Function *, - const unsigned int, - const types::subdomain_id, - const types::material_id, - const KellyErrorEstimator::Strategy); + estimate>( + const Mapping &, + const DH &, + const hp::QCollection &, + const FunctionMap::type &, + const VEC &, + Vector &, + const ComponentMask &, + const Function *, + const unsigned int, + const types::subdomain_id, + const types::material_id, + const KellyErrorEstimator::Strategy); - template - void + template void KellyErrorEstimator:: - estimate > ( - const DH &, - const hp::QCollection &, - const FunctionMap::type &, - const VEC &, - Vector &, + estimate>( + const DH &, + const hp::QCollection &, + const FunctionMap::type &, + const VEC &, + Vector &, const ComponentMask &, - const Function *, + const Function *, const unsigned int, const types::subdomain_id, const types::material_id, - const KellyErrorEstimator::Strategy); + const KellyErrorEstimator::Strategy); - template - void + template void KellyErrorEstimator:: - estimate > (const Mapping &, - const DH &, - const hp::QCollection &, - const FunctionMap::type &, - const std::vector &, - std::vector *> &, - const ComponentMask &, - const Function *, - const unsigned int, - const types::subdomain_id, - const types::material_id, - const KellyErrorEstimator::Strategy); + estimate>( + const Mapping &, + const DH &, + const hp::QCollection &, + const FunctionMap::type &, + const std::vector &, + std::vector *> &, + const ComponentMask &, + const Function *, + const unsigned int, + const types::subdomain_id, + const types::material_id, + const KellyErrorEstimator::Strategy); - template - void + template void KellyErrorEstimator:: - estimate > ( - const DH &, - const hp::QCollection &, - const FunctionMap::type &, - const std::vector &, - std::vector *> &, + estimate>( + const DH &, + const hp::QCollection &, + const FunctionMap::type &, + const std::vector &, + std::vector *> &, const ComponentMask &, - const Function *, + const Function *, const unsigned int, const types::subdomain_id, const types::material_id, - const KellyErrorEstimator::Strategy); + const KellyErrorEstimator::Strategy); #endif -} + } diff --git a/source/numerics/error_estimator_1d.inst.in b/source/numerics/error_estimator_1d.inst.in index 5a3f51d5a5..697b9dff1d 100644 --- a/source/numerics/error_estimator_1d.inst.in +++ b/source/numerics/error_estimator_1d.inst.in @@ -14,137 +14,135 @@ // --------------------------------------------------------------------- -for (VEC : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; DH : DOFHANDLER_TEMPLATES ) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS; + DH : DOFHANDLER_TEMPLATES) + { #if deal_II_dimension == 1 && deal_II_dimension <= deal_II_space_dimension - template - void + template void KellyErrorEstimator:: - estimate > (const Mapping &, - const DH &, - const Quadrature &, - const FunctionMap::type &, - const VEC &, - Vector &, - const ComponentMask &, - const Function *, - const unsigned int, - const types::subdomain_id, - const types::material_id, - const Strategy); + estimate>( + const Mapping &, + const DH &, + const Quadrature &, + const FunctionMap::type &, + const VEC &, + Vector &, + const ComponentMask &, + const Function *, + const unsigned int, + const types::subdomain_id, + const types::material_id, + const Strategy); - template - void + template void KellyErrorEstimator:: - estimate > ( - const DH &, - const Quadrature &, - const FunctionMap::type &, - const VEC &, - Vector &, + estimate>( + const DH &, + const Quadrature &, + const FunctionMap::type &, + const VEC &, + Vector &, const ComponentMask &, - const Function *, + const Function *, const unsigned int, const types::subdomain_id, const types::material_id, const Strategy); - template - void + template void KellyErrorEstimator:: - estimate > (const Mapping &, - const DH &, - const Quadrature &, - const FunctionMap::type &, - const std::vector &, - std::vector *> &, - const ComponentMask &, - const Function *, - const unsigned int, - const types::subdomain_id, - const types::material_id, - const Strategy); + estimate>( + const Mapping &, + const DH &, + const Quadrature &, + const FunctionMap::type &, + const std::vector &, + std::vector *> &, + const ComponentMask &, + const Function *, + const unsigned int, + const types::subdomain_id, + const types::material_id, + const Strategy); - template - void + template void KellyErrorEstimator:: - estimate > ( - const DH &, - const Quadrature &, - const FunctionMap::type &, - const std::vector &, - std::vector *> &, + estimate>( + const DH &, + const Quadrature &, + const FunctionMap::type &, + const std::vector &, + std::vector *> &, const ComponentMask &, - const Function *, + const Function *, const unsigned int, const types::subdomain_id, const types::material_id, const Strategy); - template - void + template void KellyErrorEstimator:: - estimate > (const Mapping &, - const DH &, - const hp::QCollection &, - const FunctionMap::type &, - const VEC &, - Vector &, - const ComponentMask &, - const Function *, - const unsigned int, - const types::subdomain_id, - const types::material_id, - const Strategy); + estimate>( + const Mapping &, + const DH &, + const hp::QCollection &, + const FunctionMap::type &, + const VEC &, + Vector &, + const ComponentMask &, + const Function *, + const unsigned int, + const types::subdomain_id, + const types::material_id, + const Strategy); - template - void + template void KellyErrorEstimator:: - estimate > ( - const DH &, - const hp::QCollection &, - const FunctionMap::type &, - const VEC &, - Vector &, + estimate>( + const DH &, + const hp::QCollection &, + const FunctionMap::type &, + const VEC &, + Vector &, const ComponentMask &, - const Function *, + const Function *, const unsigned int, const types::subdomain_id, const types::material_id, const Strategy); - template - void + template void KellyErrorEstimator:: - estimate > (const Mapping &, - const DH &, - const hp::QCollection &, - const FunctionMap::type &, - const std::vector &, - std::vector *> &, - const ComponentMask &, - const Function *, - const unsigned int, - const types::subdomain_id, - const types::material_id, - const Strategy); + estimate>( + const Mapping &, + const DH &, + const hp::QCollection &, + const FunctionMap::type &, + const std::vector &, + std::vector *> &, + const ComponentMask &, + const Function *, + const unsigned int, + const types::subdomain_id, + const types::material_id, + const Strategy); - template - void + template void KellyErrorEstimator:: - estimate > ( - const DH &, - const hp::QCollection &, - const FunctionMap::type &, - const std::vector &, - std::vector *> &, + estimate>( + const DH &, + const hp::QCollection &, + const FunctionMap::type &, + const std::vector &, + std::vector *> &, const ComponentMask &, - const Function *, + const Function *, const unsigned int, const types::subdomain_id, const types::material_id, const Strategy); #endif -} + } diff --git a/source/numerics/fe_field_function.inst.in b/source/numerics/fe_field_function.inst.in index 2f91021926..f3396747b9 100644 --- a/source/numerics/fe_field_function.inst.in +++ b/source/numerics/fe_field_function.inst.in @@ -15,8 +15,8 @@ -for (VECTOR : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS) -{ +for (VECTOR : VECTOR_TYPES; deal_II_dimension : DIMENSIONS) + { template class FEFieldFunction, VECTOR>; @@ -24,4 +24,4 @@ for (VECTOR : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS) template class FEFieldFunction, VECTOR>; -} + } diff --git a/source/numerics/matrix_creator.inst.in b/source/numerics/matrix_creator.inst.in index b9dc8beaa5..2a44491a1a 100644 --- a/source/numerics/matrix_creator.inst.in +++ b/source/numerics/matrix_creator.inst.in @@ -15,269 +15,290 @@ -// MatrixCreator::create_mass_matrix for the matrix only --> only real-valued scalars -for (scalar: REAL_SCALARS; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +// MatrixCreator::create_mass_matrix for the matrix only --> only real-valued +// scalars +for (scalar : REAL_SCALARS; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension // non-hp version of create_mass_matrix - template - void MatrixCreator::create_mass_matrix - (const Mapping &mapping, - const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_mass_matrix - (const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); + template void MatrixCreator:: + create_mass_matrix( + const Mapping & mapping, + const DoFHandler &dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix & constraints); + template void MatrixCreator:: + create_mass_matrix( + const DoFHandler &dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix & constraints); // hp versions of functions - template - void MatrixCreator::create_mass_matrix - (const hp::MappingCollection &mapping, - const hp::DoFHandler &dof, - const hp::QCollection &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); + template void MatrixCreator:: + create_mass_matrix( + const hp::MappingCollection + &mapping, + const hp::DoFHandler &dof, + const hp::QCollection & q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix & constraints); - template - void MatrixCreator::create_mass_matrix - (const hp::DoFHandler &dof, - const hp::QCollection &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); + template void MatrixCreator:: + create_mass_matrix( + const hp::DoFHandler &dof, + const hp::QCollection & q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix & constraints); #endif -} + } -// MatrixCreator::create_mass_matrix for matrix + rhs --> real- and complex-valued scalars -for (scalar: REAL_AND_COMPLEX_SCALARS; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +// MatrixCreator::create_mass_matrix for matrix + rhs --> real- and +// complex-valued scalars +for (scalar : REAL_AND_COMPLEX_SCALARS; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension // non-hp version of create_mass_matrix - template - void MatrixCreator::create_mass_matrix - (const Mapping &mapping, - const DoFHandler &dof, - const Quadrature &q, - SparseMatrix::real_type> &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function::real_type> * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_mass_matrix - (const DoFHandler &dof, - const Quadrature &q, - SparseMatrix::real_type> &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function::real_type> * const coefficient, - const ConstraintMatrix &constraints); + template void MatrixCreator:: + create_mass_matrix( + const Mapping & mapping, + const DoFHandler &dof, + const Quadrature & q, + SparseMatrix::real_type> & matrix, + const Function & rhs, + Vector &rhs_vector, + const Function::real_type> + *const coefficient, + const ConstraintMatrix &constraints); + template void MatrixCreator:: + create_mass_matrix( + const DoFHandler &dof, + const Quadrature & q, + SparseMatrix::real_type> & matrix, + const Function & rhs, + Vector &rhs_vector, + const Function::real_type> + *const coefficient, + const ConstraintMatrix &constraints); // hp version - template - void MatrixCreator::create_mass_matrix - (const hp::MappingCollection &mapping, - const hp::DoFHandler &dof, - const hp::QCollection &q, - SparseMatrix::real_type> &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function::real_type> * const coefficient, - const ConstraintMatrix &constraints); + template void MatrixCreator:: + create_mass_matrix( + const hp::MappingCollection + &mapping, + const hp::DoFHandler &dof, + const hp::QCollection & q, + SparseMatrix::real_type> &matrix, + const Function & rhs, + Vector & rhs_vector, + const Function::real_type> + *const coefficient, + const ConstraintMatrix &constraints); - template - void MatrixCreator::create_mass_matrix - (const hp::DoFHandler &dof, - const hp::QCollection &q, - SparseMatrix::real_type> &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function::real_type> * const coefficient, - const ConstraintMatrix &constraints); + template void MatrixCreator:: + create_mass_matrix( + const hp::DoFHandler &dof, + const hp::QCollection & q, + SparseMatrix::real_type> &matrix, + const Function & rhs, + Vector & rhs_vector, + const Function::real_type> + *const coefficient, + const ConstraintMatrix &constraints); #endif -} + } -for (scalar: REAL_AND_COMPLEX_SCALARS; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (scalar : REAL_AND_COMPLEX_SCALARS; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template - void MatrixCreator::create_boundary_mass_matrix - (const DoFHandler &dof, - const Quadrature &q, - SparseMatrix::real_type> &matrix, - const std::map*> &rhs, - Vector &rhs_vector, - std::vector &dof_to_boundary_mapping, - const Function::real_type> * const a, - std::vector); + template void + MatrixCreator::create_boundary_mass_matrix( + const DoFHandler & dof, + const Quadrature & q, + SparseMatrix::real_type> & matrix, + const std::map *> &rhs, + Vector & rhs_vector, + std::vector &dof_to_boundary_mapping, + const Function::real_type> *const a, + std::vector); - template - void MatrixCreator::create_boundary_mass_matrix - (const Mapping &, - const DoFHandler &dof, - const Quadrature &q, - SparseMatrix::real_type> &matrix, - const std::map*> &rhs, - Vector &rhs_vector, - std::vector &dof_to_boundary_mapping, - const Function::real_type> * const a, - std::vector); + template void + MatrixCreator::create_boundary_mass_matrix( + const Mapping &, + const DoFHandler & dof, + const Quadrature & q, + SparseMatrix::real_type> & matrix, + const std::map *> &rhs, + Vector & rhs_vector, + std::vector &dof_to_boundary_mapping, + const Function::real_type> *const a, + std::vector); - template - void - MatrixCreator::create_boundary_mass_matrix - (const hp::MappingCollection&, - const hp::DoFHandler&, - const hp::QCollection&, - SparseMatrix::real_type>&, - const std::map*>&, - Vector&, - std::vector&, - const Function::real_type> * const, - std::vector); + template void + MatrixCreator::create_boundary_mass_matrix( + const hp::MappingCollection &, + const hp::DoFHandler &, + const hp::QCollection &, + SparseMatrix::real_type> &, + const std::map *> &, + Vector &, + std::vector &, + const Function::real_type> *const, + std::vector); - template - void MatrixCreator::create_boundary_mass_matrix - (const hp::DoFHandler&, - const hp::QCollection&, - SparseMatrix::real_type>&, - const std::map*>&, - Vector&, - std::vector&, - const Function::real_type> * const, - std::vector); + template void + MatrixCreator::create_boundary_mass_matrix( + const hp::DoFHandler &, + const hp::QCollection &, + SparseMatrix::real_type> &, + const std::map *> &, + Vector &, + std::vector &, + const Function::real_type> *const, + std::vector); #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension == deal_II_space_dimension -// non-hp versions of create_laplace_matrix - template - void MatrixCreator::create_laplace_matrix - (const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_laplace_matrix - (const Mapping &mapping, - const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_laplace_matrix - (const Mapping &mapping, - const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_laplace_matrix - (const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function * const coefficient, - const ConstraintMatrix &constraints); + // non-hp versions of create_laplace_matrix + template void MatrixCreator::create_laplace_matrix( + const DoFHandler & dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix & constraints); + template void MatrixCreator::create_laplace_matrix( + const Mapping & mapping, + const DoFHandler & dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix & constraints); + template void MatrixCreator::create_laplace_matrix( + const Mapping & mapping, + const DoFHandler & dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function & rhs, + Vector & rhs_vector, + const Function *const coefficient, + const ConstraintMatrix & constraints); + template void MatrixCreator::create_laplace_matrix( + const DoFHandler & dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function & rhs, + Vector & rhs_vector, + const Function *const coefficient, + const ConstraintMatrix & constraints); -// hp versions of create_laplace_matrix - template - void MatrixCreator::create_laplace_matrix - (const hp::DoFHandler &dof, - const hp::QCollection &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_laplace_matrix - (const hp::MappingCollection &mapping, - const hp::DoFHandler &dof, - const hp::QCollection &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_laplace_matrix - (const hp::MappingCollection &mapping, - const hp::DoFHandler &dof, - const hp::QCollection &q, - SparseMatrix &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_laplace_matrix - (const hp::DoFHandler &dof, - const hp::QCollection &q, - SparseMatrix &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function * const coefficient, - const ConstraintMatrix &constraints); + // hp versions of create_laplace_matrix + template void MatrixCreator::create_laplace_matrix( + const hp::DoFHandler & dof, + const hp::QCollection &q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix & constraints); + template void MatrixCreator::create_laplace_matrix( + const hp::MappingCollection &mapping, + const hp::DoFHandler & dof, + const hp::QCollection & q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix & constraints); + template void MatrixCreator::create_laplace_matrix( + const hp::MappingCollection &mapping, + const hp::DoFHandler & dof, + const hp::QCollection & q, + SparseMatrix & matrix, + const Function & rhs, + Vector & rhs_vector, + const Function *const coefficient, + const ConstraintMatrix & constraints); + template void MatrixCreator::create_laplace_matrix( + const hp::DoFHandler & dof, + const hp::QCollection &q, + SparseMatrix & matrix, + const Function & rhs, + Vector & rhs_vector, + const Function *const coefficient, + const ConstraintMatrix & constraints); #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension < deal_II_space_dimension // non-hp version of create_laplace_matrix - template - void MatrixCreator::create_laplace_matrix - (const Mapping &mapping, - const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_laplace_matrix - (const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_laplace_matrix - (const Mapping &mapping, - const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function * const coefficient, - const ConstraintMatrix &constraints); - template - void MatrixCreator::create_laplace_matrix - (const DoFHandler &dof, - const Quadrature &q, - SparseMatrix &matrix, - const Function &rhs, - Vector &rhs_vector, - const Function * const coefficient, - const ConstraintMatrix &constraints); + template void MatrixCreator::create_laplace_matrix( + const Mapping & mapping, + const DoFHandler &dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix &constraints); + template void MatrixCreator::create_laplace_matrix( + const DoFHandler &dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function *const coefficient, + const ConstraintMatrix &constraints); + template void MatrixCreator::create_laplace_matrix( + const Mapping & mapping, + const DoFHandler &dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function & rhs, + Vector & rhs_vector, + const Function *const coefficient, + const ConstraintMatrix &constraints); + template void MatrixCreator::create_laplace_matrix( + const DoFHandler &dof, + const Quadrature & q, + SparseMatrix & matrix, + const Function & rhs, + Vector & rhs_vector, + const Function *const coefficient, + const ConstraintMatrix &constraints); #endif -} - + } diff --git a/source/numerics/matrix_tools.inst.in b/source/numerics/matrix_tools.inst.in index f7d7019647..7556be3c81 100644 --- a/source/numerics/matrix_tools.inst.in +++ b/source/numerics/matrix_tools.inst.in @@ -13,42 +13,36 @@ // // --------------------------------------------------------------------- -for (number: REAL_SCALARS) -{ - template - void MatrixTools::local_apply_boundary_values - (const std::map &boundary_values, - const std::vector &local_dof_indices, - FullMatrix &local_matrix, - Vector &local_rhs, - const bool eliminate_columns); +for (number : REAL_SCALARS) + { + template void MatrixTools::local_apply_boundary_values( + const std::map &boundary_values, + const std::vector & local_dof_indices, + FullMatrix & local_matrix, + Vector & local_rhs, + const bool eliminate_columns); - template - void MatrixTools::apply_boundary_values - (const std::map &boundary_values, - SparseMatrix &matrix, - Vector &solution, - Vector &right_hand_side, - const bool eliminate_columns); + template void MatrixTools::apply_boundary_values( + const std::map &boundary_values, + SparseMatrix & matrix, + Vector & solution, + Vector & right_hand_side, + const bool eliminate_columns); - template - void MatrixTools::apply_boundary_values - (const std::map &boundary_values, - BlockSparseMatrix &matrix, - BlockVector &solution, - BlockVector &right_hand_side, - const bool eliminate_columns); - -} - -for (number: COMPLEX_SCALARS) -{ - template - void MatrixTools::apply_boundary_values - (const std::map &boundary_values, - SparseMatrix &matrix, - Vector &solution, - Vector &right_hand_side, - const bool eliminate_columns); -} + template void MatrixTools::apply_boundary_values( + const std::map &boundary_values, + BlockSparseMatrix & matrix, + BlockVector & solution, + BlockVector & right_hand_side, + const bool eliminate_columns); + } +for (number : COMPLEX_SCALARS) + { + template void MatrixTools::apply_boundary_values( + const std::map &boundary_values, + SparseMatrix & matrix, + Vector & solution, + Vector & right_hand_side, + const bool eliminate_columns); + } diff --git a/source/numerics/point_value_history.inst.in b/source/numerics/point_value_history.inst.in index ec95e16bab..22466c77c4 100644 --- a/source/numerics/point_value_history.inst.in +++ b/source/numerics/point_value_history.inst.in @@ -16,44 +16,39 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class PointValueHistory; -} - - -for (VEC : REAL_VECTOR_TYPES ; deal_II_dimension : DIMENSIONS) -{ - template - void PointValueHistory::evaluate_field - (const std::string &, - const VEC &); -} - - -for (VEC : REAL_VECTOR_TYPES ; deal_II_dimension : DIMENSIONS) -{ - template - void PointValueHistory::evaluate_field_at_requested_location - (const std::string &, - const VEC &); -} - -for (VEC : REAL_VECTOR_TYPES ; deal_II_dimension : DIMENSIONS) -{ - template - void PointValueHistory::evaluate_field - (const std::vector &, - const VEC &, - const DataPostprocessor &, - const Quadrature &); -} - -for (VEC : REAL_VECTOR_TYPES ; deal_II_dimension : DIMENSIONS) -{ - template - void PointValueHistory::evaluate_field - (const std::string &, - const VEC &, - const DataPostprocessor &, - const Quadrature &); -} + } + + +for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS) + { + template void PointValueHistory::evaluate_field( + const std::string &, const VEC &); + } + + +for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS) + { + template void + PointValueHistory::evaluate_field_at_requested_location( + const std::string &, const VEC &); + } + +for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS) + { + template void PointValueHistory::evaluate_field( + const std::vector &, + const VEC &, + const DataPostprocessor &, + const Quadrature &); + } + +for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS) + { + template void PointValueHistory::evaluate_field( + const std::string &, + const VEC &, + const DataPostprocessor &, + const Quadrature &); + } diff --git a/source/numerics/solution_transfer.inst.in b/source/numerics/solution_transfer.inst.in index 90028418dc..f13eeafb52 100644 --- a/source/numerics/solution_transfer.inst.in +++ b/source/numerics/solution_transfer.inst.in @@ -14,13 +14,17 @@ // --------------------------------------------------------------------- -for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - template class SolutionTransfer >; - template class SolutionTransfer >; + template class SolutionTransfer< + deal_II_dimension, + VEC, + DoFHandler>; + template class SolutionTransfer< + deal_II_dimension, + VEC, + hp::DoFHandler>; #endif -} - - - + } diff --git a/source/numerics/time_dependent.inst.in b/source/numerics/time_dependent.inst.in index 92aa1a36d6..571e91d26c 100644 --- a/source/numerics/time_dependent.inst.in +++ b/source/numerics/time_dependent.inst.in @@ -15,12 +15,12 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class TimeStepBase_Tria; namespace TimeStepBase_Tria_Flags \{ - template struct Flags; - template struct RefinementFlags; - template struct RefinementData; + template struct Flags; + template struct RefinementFlags; + template struct RefinementData; \} -} + } diff --git a/source/numerics/vector_tools_boundary.inst.in b/source/numerics/vector_tools_boundary.inst.in index a4d9bede85..d93bce9546 100644 --- a/source/numerics/vector_tools_boundary.inst.in +++ b/source/numerics/vector_tools_boundary.inst.in @@ -14,209 +14,231 @@ // --------------------------------------------------------------------- -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; DH : DOFHANDLER_TEMPLATES; number : REAL_AND_COMPLEX_SCALARS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + DH : DOFHANDLER_TEMPLATES; + number : REAL_AND_COMPLEX_SCALARS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ - template - void interpolate_boundary_values - (const Mapping &, - const DH &, - const std::map*> &, - std::map &, - const ComponentMask &); - - template - void interpolate_boundary_values - (const Mapping &, - const DH &, - const types::boundary_id, - const Function &, - std::map &, - const ComponentMask &); - - template - void interpolate_boundary_values ( - const DH &, + namespace VectorTools + \{ + template void + interpolate_boundary_values( + const Mapping &, + const DH &, + const std::map *> &, + std::map &, + const ComponentMask &); + + template void + interpolate_boundary_values( + const Mapping &, + const DH &, const types::boundary_id, - const Function &, - std::map &, - const ComponentMask &); - - template - void interpolate_boundary_values - (const DH &, - const std::map*> &, - std::map &, - const ComponentMask &); + const Function &, + std::map &, + const ComponentMask &); + + template void + interpolate_boundary_values( + const DH &, + const types::boundary_id, + const Function &, + std::map &, + const ComponentMask &); + + template void + interpolate_boundary_values( + const DH &, + const std::map *> &, + std::map &, + const ComponentMask &); \} #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; number : REAL_AND_COMPLEX_SCALARS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + number : REAL_AND_COMPLEX_SCALARS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ - template - void interpolate_boundary_values - (const hp::MappingCollection &, - const hp::DoFHandler &, - const std::map*> &, - std::map &, - const ComponentMask &); + namespace VectorTools + \{ + template void + interpolate_boundary_values( + const hp::MappingCollection + &, + const hp::DoFHandler &, + const std::map *> &, + std::map &, + const ComponentMask &); \} #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; DH : DOFHANDLER_TEMPLATES) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + DH : DOFHANDLER_TEMPLATES) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ - - template - void interpolate_boundary_values ( - const Mapping &, - const DH &, - const std::map*> &, - ConstraintMatrix &, - const ComponentMask &); - - template - void interpolate_boundary_values - (const Mapping &, - const DH &, - const types::boundary_id, - const Function &, - ConstraintMatrix &, - const ComponentMask &); - - template - void interpolate_boundary_values ( - const DH &, + namespace VectorTools + \{ + + template void + interpolate_boundary_values( + const Mapping &, + const DH &, + const std::map *> &, + ConstraintMatrix &, + const ComponentMask &); + + template void + interpolate_boundary_values( + const Mapping &, + const DH &, + const types::boundary_id, + const Function &, + ConstraintMatrix &, + const ComponentMask &); + + template void + interpolate_boundary_values( + const DH &, const types::boundary_id, - const Function &, - ConstraintMatrix &, - const ComponentMask &); - - template - void interpolate_boundary_values ( - const DH &, - const std::map*> &, - ConstraintMatrix &, - const ComponentMask &); + const Function &, + ConstraintMatrix &, + const ComponentMask &); + + template void + interpolate_boundary_values( + const DH &, + const std::map *> &, + ConstraintMatrix &, + const ComponentMask &); \} #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; number : REAL_AND_COMPLEX_SCALARS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS; + number : REAL_AND_COMPLEX_SCALARS) + { #if deal_II_dimension == deal_II_space_dimension - namespace VectorTools \{ - - template - void project_boundary_values - (const Mapping &, - const DoFHandler &, - const std::map*> &, - const Quadrature&, - std::map&, - std::vector); - - template - void project_boundary_values - (const DoFHandler &, - const std::map*> &, - const Quadrature&, - std::map&, - std::vector); - - template - void project_boundary_values - (const hp::DoFHandler &, - const std::map*> &, - const hp::QCollection &, - std::map &, - std::vector); + namespace VectorTools + \{ + + template void + project_boundary_values( + const Mapping &, + const DoFHandler &, + const std::map *> &, + const Quadrature &, + std::map &, + std::vector); + + template void + project_boundary_values( + const DoFHandler &, + const std::map *> &, + const Quadrature &, + std::map &, + std::vector); + + template void + project_boundary_values( + const hp::DoFHandler &, + const std::map *> &, + const hp::QCollection &, + std::map &, + std::vector); \} #endif -} + } for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ - namespace VectorTools \{ + { + namespace VectorTools + \{ #if deal_II_dimension == deal_II_space_dimension - template - void project_boundary_values - (const Mapping &, - const DoFHandler &, - const std::map*> &, - const Quadrature&, - ConstraintMatrix&, std::vector); - - template - void project_boundary_values - (const DoFHandler &, - const std::map*> &, - const Quadrature&, - ConstraintMatrix&, - std::vector); - -#if deal_II_dimension != 1 - template - void project_boundary_values_curl_conforming - (const DoFHandler&, - const unsigned int, - const Function&, - const types::boundary_id, - ConstraintMatrix&, - const Mapping&); - template - void project_boundary_values_curl_conforming - (const hp::DoFHandler&, - const unsigned int, - const Function&, - const types::boundary_id, - ConstraintMatrix&, - const hp::MappingCollection&); - template - void project_boundary_values_curl_conforming_l2 - (const DoFHandler&, - const unsigned int, - const Function&, - const types::boundary_id, - ConstraintMatrix&, - const Mapping&); - template - void project_boundary_values_curl_conforming_l2 - (const hp::DoFHandler&, - const unsigned int, - const Function&, - const types::boundary_id, - ConstraintMatrix&, - const hp::MappingCollection&); - template - void project_boundary_values_div_conforming - (const DoFHandler&, - const unsigned int, - const Function&, - const types::boundary_id, - ConstraintMatrix&, - const Mapping&); - template - void project_boundary_values_div_conforming - (const hp::DoFHandler&, - const unsigned int, - const Function&, - const types::boundary_id, - ConstraintMatrix&, - const hp::MappingCollection&); -#endif + template void + project_boundary_values( + const Mapping &, + const DoFHandler &, + const std::map *> &, + const Quadrature &, + ConstraintMatrix &, + std::vector); + + template void + project_boundary_values( + const DoFHandler &, + const std::map *> &, + const Quadrature &, + ConstraintMatrix &, + std::vector); + +# if deal_II_dimension != 1 + template void + project_boundary_values_curl_conforming( + const DoFHandler &, + const unsigned int, + const Function &, + const types::boundary_id, + ConstraintMatrix &, + const Mapping &); + template void + project_boundary_values_curl_conforming( + const hp::DoFHandler &, + const unsigned int, + const Function &, + const types::boundary_id, + ConstraintMatrix &, + const hp::MappingCollection &); + template void + project_boundary_values_curl_conforming_l2( + const DoFHandler &, + const unsigned int, + const Function &, + const types::boundary_id, + ConstraintMatrix &, + const Mapping &); + template void + project_boundary_values_curl_conforming_l2( + const hp::DoFHandler &, + const unsigned int, + const Function &, + const types::boundary_id, + ConstraintMatrix &, + const hp::MappingCollection &); + template void + project_boundary_values_div_conforming( + const DoFHandler &, + const unsigned int, + const Function &, + const types::boundary_id, + ConstraintMatrix &, + const Mapping &); + template void + project_boundary_values_div_conforming( + const hp::DoFHandler &, + const unsigned int, + const Function &, + const types::boundary_id, + ConstraintMatrix &, + const hp::MappingCollection &); +# endif #endif \} -} + } diff --git a/source/numerics/vector_tools_constraints.inst.in b/source/numerics/vector_tools_constraints.inst.in index 4a611846af..eb6833d4fc 100644 --- a/source/numerics/vector_tools_constraints.inst.in +++ b/source/numerics/vector_tools_constraints.inst.in @@ -14,81 +14,83 @@ // --------------------------------------------------------------------- -//TODO[SP]: replace by +// TODO[SP]: replace by // where applicable and move to codimension cases above also when applicable -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ - namespace VectorTools \{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { + namespace VectorTools + \{ #if deal_II_dimension == deal_II_space_dimension -#if deal_II_dimension != 1 - template - void - compute_nonzero_normal_flux_constraints (const DoFHandler &dof_handler, - const unsigned int first_vector_component, - const std::set &boundary_ids, - FunctionMap::type &function_map, - ConstraintMatrix &constraints, - const Mapping &mapping); +# if deal_II_dimension != 1 + template void + compute_nonzero_normal_flux_constraints( + const DoFHandler & dof_handler, + const unsigned int first_vector_component, + const std::set & boundary_ids, + FunctionMap::type &function_map, + ConstraintMatrix & constraints, + const Mapping & mapping); - template - void - compute_nonzero_normal_flux_constraints (const hp::DoFHandler &dof_handler, - const unsigned int first_vector_component, - const std::set &boundary_ids, - FunctionMap::type &function_map, - ConstraintMatrix &constraints, - const Mapping &mapping); + template void + compute_nonzero_normal_flux_constraints( + const hp::DoFHandler &dof_handler, + const unsigned int first_vector_component, + const std::set & boundary_ids, + FunctionMap::type & function_map, + ConstraintMatrix & constraints, + const Mapping & mapping); - template - void - compute_nonzero_tangential_flux_constraints (const DoFHandler &dof_handler, - const unsigned int first_vector_component, - const std::set &boundary_ids, - FunctionMap::type &function_map, - ConstraintMatrix &constraints, - const Mapping &mapping); - template - void - compute_nonzero_tangential_flux_constraints (const hp::DoFHandler &dof_handler, - const unsigned int first_vector_component, - const std::set &boundary_ids, - FunctionMap::type &function_map, - ConstraintMatrix &constraints, - const Mapping &mapping); + template void + compute_nonzero_tangential_flux_constraints( + const DoFHandler & dof_handler, + const unsigned int first_vector_component, + const std::set & boundary_ids, + FunctionMap::type &function_map, + ConstraintMatrix & constraints, + const Mapping & mapping); + template void + compute_nonzero_tangential_flux_constraints( + const hp::DoFHandler &dof_handler, + const unsigned int first_vector_component, + const std::set & boundary_ids, + FunctionMap::type & function_map, + ConstraintMatrix & constraints, + const Mapping & mapping); - template - void - compute_no_normal_flux_constraints (const DoFHandler &dof_handler, - const unsigned int first_vector_component, - const std::set &boundary_ids, - ConstraintMatrix &constraints, - const Mapping &mapping); + template void + compute_no_normal_flux_constraints( + const DoFHandler &dof_handler, + const unsigned int first_vector_component, + const std::set & boundary_ids, + ConstraintMatrix & constraints, + const Mapping & mapping); - template - void - compute_no_normal_flux_constraints (const hp::DoFHandler &dof_handler, - const unsigned int first_vector_component, - const std::set &boundary_ids, - ConstraintMatrix &constraints, - const Mapping &mapping); + template void + compute_no_normal_flux_constraints( + const hp::DoFHandler &dof_handler, + const unsigned int first_vector_component, + const std::set & boundary_ids, + ConstraintMatrix & constraints, + const Mapping & mapping); - template - void - compute_normal_flux_constraints (const DoFHandler &dof_handler, - const unsigned int first_vector_component, - const std::set &boundary_ids, - ConstraintMatrix &constraints, - const Mapping &mapping); + template void + compute_normal_flux_constraints( + const DoFHandler &dof_handler, + const unsigned int first_vector_component, + const std::set & boundary_ids, + ConstraintMatrix & constraints, + const Mapping & mapping); - template - void - compute_normal_flux_constraints (const hp::DoFHandler &dof_handler, - const unsigned int first_vector_component, - const std::set &boundary_ids, - ConstraintMatrix &constraints, - const Mapping &mapping); -#endif + template void + compute_normal_flux_constraints( + const hp::DoFHandler &dof_handler, + const unsigned int first_vector_component, + const std::set & boundary_ids, + ConstraintMatrix & constraints, + const Mapping & mapping); +# endif #endif \} -} + } diff --git a/source/numerics/vector_tools_integrate_difference.inst.in b/source/numerics/vector_tools_integrate_difference.inst.in index 0a7c543147..9a52fc556a 100644 --- a/source/numerics/vector_tools_integrate_difference.inst.in +++ b/source/numerics/vector_tools_integrate_difference.inst.in @@ -14,124 +14,157 @@ // --------------------------------------------------------------------- -for (VEC : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ + namespace VectorTools + \{ - template - void integrate_difference, deal_II_space_dimension> - (const Mapping&, - const DoFHandler&, - const VEC&, - const Function&, - Vector&, - const Quadrature&, - const NormType&, - const Function*, - const double); + template void + integrate_difference, + deal_II_space_dimension>( + const Mapping &, + const DoFHandler &, + const VEC &, + const Function &, + Vector &, + const Quadrature &, + const NormType &, + const Function *, + const double); - template - void integrate_difference, deal_II_space_dimension> - (const DoFHandler&, - const VEC&, - const Function&, - Vector&, - const Quadrature&, - const NormType&, - const Function*, - const double); + template void + integrate_difference, + deal_II_space_dimension>( + const DoFHandler &, + const VEC &, + const Function &, + Vector &, + const Quadrature &, + const NormType &, + const Function *, + const double); - template - void integrate_difference, deal_II_space_dimension > - (const Mapping&, - const DoFHandler&, - const VEC&, - const Function&, - Vector&, - const Quadrature&, - const NormType&, - const Function*, - const double); + template void + integrate_difference, + deal_II_space_dimension>( + const Mapping &, + const DoFHandler &, + const VEC &, + const Function &, + Vector &, + const Quadrature &, + const NormType &, + const Function *, + const double); - template - void integrate_difference, deal_II_space_dimension > - (const DoFHandler&, - const VEC&, - const Function&, - Vector&, - const Quadrature&, - const NormType&, - const Function*, - const double); + template void + integrate_difference, + deal_II_space_dimension>( + const DoFHandler &, + const VEC &, + const Function &, + Vector &, + const Quadrature &, + const NormType &, + const Function *, + const double); - template - void integrate_difference, deal_II_space_dimension> - (const hp::MappingCollection&, - const hp::DoFHandler&, - const VEC&, - const Function&, - Vector&, - const hp::QCollection&, - const NormType&, - const Function*, - const double); + template void + integrate_difference, + deal_II_space_dimension>( + const hp::MappingCollection + &, + const hp::DoFHandler &, + const VEC &, + const Function &, + Vector &, + const hp::QCollection &, + const NormType &, + const Function *, + const double); - template - void integrate_difference, deal_II_space_dimension> - (const hp::DoFHandler&, - const VEC&, - const Function&, - Vector&, - const hp::QCollection&, - const NormType&, - const Function*, - const double); + template void + integrate_difference, + deal_II_space_dimension>( + const hp::DoFHandler &, + const VEC &, + const Function &, + Vector &, + const hp::QCollection &, + const NormType &, + const Function *, + const double); - template - void integrate_difference, deal_II_space_dimension> - (const hp::MappingCollection&, - const hp::DoFHandler&, - const VEC&, - const Function&, - Vector&, - const hp::QCollection&, - const NormType&, - const Function*, - const double); + template void + integrate_difference, + deal_II_space_dimension>( + const hp::MappingCollection + &, + const hp::DoFHandler &, + const VEC &, + const Function &, + Vector &, + const hp::QCollection &, + const NormType &, + const Function *, + const double); - template - void integrate_difference, deal_II_space_dimension> - (const hp::DoFHandler&, - const VEC&, - const Function&, - Vector&, - const hp::QCollection&, - const NormType&, - const Function*, - const double); + template void + integrate_difference, + deal_II_space_dimension>( + const hp::DoFHandler &, + const VEC &, + const Function &, + Vector &, + const hp::QCollection &, + const NormType &, + const Function *, + const double); \} #endif -} + } -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ - template - double compute_global_error >( - const Triangulation &, + namespace VectorTools + \{ + template double + compute_global_error>( + const Triangulation &, const Vector &, const NormType &, const double); - template - double compute_global_error >( - const Triangulation &, + template double + compute_global_error>( + const Triangulation &, const Vector &, const NormType &, const double); \} #endif -} + } diff --git a/source/numerics/vector_tools_interpolate.inst.in b/source/numerics/vector_tools_interpolate.inst.in index bb278430bf..59d5ab794c 100644 --- a/source/numerics/vector_tools_interpolate.inst.in +++ b/source/numerics/vector_tools_interpolate.inst.in @@ -15,113 +15,123 @@ -for (VEC : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ - - template - void interpolate - (const Mapping &, - const DoFHandler&, - const Function&, - VEC&, - const ComponentMask&); - - template - void interpolate - (const DoFHandler&, - const Function&, - VEC&, - const ComponentMask&); - - template - void interpolate - (const DoFHandler&, - const DoFHandler&, - const FullMatrix&, - const VEC&, - VEC&); - - template - void get_position_vector - (const DoFHandler&, - VEC&, - const ComponentMask&); + namespace VectorTools + \{ + + template void + interpolate( + const Mapping &, + const DoFHandler &, + const Function &, + VEC &, + const ComponentMask &); + + template void + interpolate( + const DoFHandler &, + const Function &, + VEC &, + const ComponentMask &); + + template void + interpolate( + const DoFHandler &, + const DoFHandler &, + const FullMatrix &, + const VEC &, + VEC &); + + template void + get_position_vector( + const DoFHandler &, + VEC &, + const ComponentMask &); \} #endif -} + } -//TODO[SP]: replace by +// TODO[SP]: replace by // where applicable and move to codimension cases above also when applicable -for (VEC : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension == deal_II_space_dimension - namespace VectorTools \{ - - template - void interpolate - (const Mapping&, - const hp::DoFHandler&, - const Function&, - VEC&, - const ComponentMask&); - template - void interpolate - (const hp::DoFHandler&, - const Function&, - VEC&, - const ComponentMask&); - - template - void interpolate_based_on_material_id(const Mapping&, - const DoFHandler&, - const std::map< types::material_id, const Function* >&, - VEC&, - const ComponentMask&); - - template - void interpolate_based_on_material_id(const Mapping&, - const hp::DoFHandler&, - const std::map< types::material_id, const Function* >&, - VEC&, - const ComponentMask&); + namespace VectorTools + \{ + + template void + interpolate(const Mapping &, + const hp::DoFHandler &, + const Function &, + VEC &, + const ComponentMask &); + template void + interpolate(const hp::DoFHandler &, + const Function &, + VEC &, + const ComponentMask &); + + template void + interpolate_based_on_material_id( + const Mapping &, + const DoFHandler &, + const std::map< + types::material_id, + const Function *> &, + VEC &, + const ComponentMask &); + + template void + interpolate_based_on_material_id( + const Mapping &, + const hp::DoFHandler &, + const std::map *> &, + VEC &, + const ComponentMask &); \} #endif -} + } -for (VEC : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ - template - void interpolate_to_different_mesh - (const DoFHandler &, - const VEC &, - const DoFHandler &, - VEC &); - - template - void interpolate_to_different_mesh - (const DoFHandler &, - const VEC &, - const DoFHandler &, - const ConstraintMatrix &, - VEC &); - - template - void interpolate_to_different_mesh - (const InterGridMap > &, - const VEC &, - const ConstraintMatrix &, - VEC &); + namespace VectorTools + \{ + template void + interpolate_to_different_mesh( + const DoFHandler &, + const VEC &, + const DoFHandler &, + VEC &); + + template void + interpolate_to_different_mesh( + const DoFHandler &, + const VEC &, + const DoFHandler &, + const ConstraintMatrix &, + VEC &); + + template void + interpolate_to_different_mesh( + const InterGridMap< + DoFHandler> &, + const VEC &, + const ConstraintMatrix &, + VEC &); \} #endif - -} + } diff --git a/source/numerics/vector_tools_mean_value.inst.in b/source/numerics/vector_tools_mean_value.inst.in index 8c561c1890..b542ac72b9 100644 --- a/source/numerics/vector_tools_mean_value.inst.in +++ b/source/numerics/vector_tools_mean_value.inst.in @@ -14,36 +14,39 @@ // --------------------------------------------------------------------- -for (VEC : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ - - template - VEC::value_type compute_mean_value - (const Mapping&, - const DoFHandler&, - const Quadrature&, - const VEC&, - const unsigned int); - - template - VEC::value_type compute_mean_value - (const DoFHandler&, - const Quadrature&, - const VEC&, - const unsigned int); + namespace VectorTools + \{ + + template VEC::value_type + compute_mean_value( + const Mapping &, + const DoFHandler &, + const Quadrature &, + const VEC &, + const unsigned int); + + template VEC::value_type + compute_mean_value( + const DoFHandler &, + const Quadrature &, + const VEC &, + const unsigned int); \} #endif -} + } for (VEC : VECTOR_TYPES) -{ - namespace VectorTools \{ - template - void subtract_mean_value(VEC &, const std::vector &); + { + namespace VectorTools + \{ + template void + subtract_mean_value(VEC &, const std::vector &); \} -} + } diff --git a/source/numerics/vector_tools_point_gradient.inst.in b/source/numerics/vector_tools_point_gradient.inst.in index d74d285ba8..f0d35f53c5 100644 --- a/source/numerics/vector_tools_point_gradient.inst.in +++ b/source/numerics/vector_tools_point_gradient.inst.in @@ -13,68 +13,66 @@ // // --------------------------------------------------------------------- -for (VEC : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension == deal_II_space_dimension - namespace VectorTools \{ + namespace VectorTools + \{ - template - void point_gradient ( - const hp::DoFHandler&, - const VEC&, - const Point&, - std::vector >&); + template void + point_gradient( + const hp::DoFHandler &, + const VEC &, + const Point &, + std::vector> &); - template - Tensor<1,deal_II_space_dimension,VEC::value_type> point_gradient ( - const hp::DoFHandler&, - const VEC&, - const Point&); + template Tensor<1, deal_II_space_dimension, VEC::value_type> + point_gradient(const hp::DoFHandler &, + const VEC &, + const Point &); - template - void point_gradient ( - const hp::MappingCollection&, - const hp::DoFHandler&, - const VEC&, - const Point&, - std::vector >&); + template void + point_gradient( + const hp::MappingCollection &, + const hp::DoFHandler &, + const VEC &, + const Point &, + std::vector> &); - template - Tensor<1,deal_II_space_dimension,VEC::value_type> point_gradient ( - const hp::MappingCollection&, - const hp::DoFHandler&, - const VEC&, - const Point&); + template Tensor<1, deal_II_space_dimension, VEC::value_type> + point_gradient(const hp::MappingCollection &, + const hp::DoFHandler &, + const VEC &, + const Point &); - template - void point_gradient ( - const DoFHandler&, - const VEC&, - const Point&, - std::vector >&); + template void + point_gradient( + const DoFHandler &, + const VEC &, + const Point &, + std::vector> &); - template - Tensor<1,deal_II_space_dimension,VEC::value_type> point_gradient ( - const DoFHandler&, - const VEC&, - const Point&); + template Tensor<1, deal_II_space_dimension, VEC::value_type> + point_gradient(const DoFHandler &, + const VEC &, + const Point &); - template - void point_gradient ( - const Mapping&, - const DoFHandler&, - const VEC&, - const Point&, - std::vector >&); + template void + point_gradient( + const Mapping &, + const DoFHandler &, + const VEC &, + const Point &, + std::vector> &); - template - Tensor<1,deal_II_space_dimension,VEC::value_type> point_gradient ( - const Mapping&, - const DoFHandler&, - const VEC&, - const Point&); + template Tensor<1, deal_II_space_dimension, VEC::value_type> + point_gradient(const Mapping &, + const DoFHandler &, + const VEC &, + const Point &); \} #endif -} + } diff --git a/source/numerics/vector_tools_point_value.inst.in b/source/numerics/vector_tools_point_value.inst.in index 4961ad11c3..d1cc958959 100644 --- a/source/numerics/vector_tools_point_value.inst.in +++ b/source/numerics/vector_tools_point_value.inst.in @@ -14,151 +14,150 @@ // --------------------------------------------------------------------- -//TODO[SP]: replace by +// TODO[SP]: replace by // where applicable and move to codimension cases above also when applicable -for (VEC : VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension == deal_II_space_dimension - namespace VectorTools \{ - - template - void point_value ( - const hp::DoFHandler&, - const VEC&, - const Point&, - Vector&); - - template - VEC::value_type point_value ( - const hp::DoFHandler&, - const VEC&, - const Point&); - - template - void point_value ( - const hp::MappingCollection&, - const hp::DoFHandler&, - const VEC&, - const Point&, - Vector&); - - template - VEC::value_type point_value ( - const hp::MappingCollection&, - const hp::DoFHandler&, - const VEC&, - const Point&); - - template - void point_difference ( - const DoFHandler&, - const VEC&, - const Function&, - Vector&, - const Point&); - - template - void point_difference ( - const Mapping&, - const DoFHandler&, - const VEC&, - const Function&, - Vector&, - const Point&); - - template - void point_value ( - const DoFHandler&, - const VEC&, - const Point&, - Vector&); - - template - VEC::value_type point_value ( - const DoFHandler&, - const VEC&, - const Point&); - - template - void point_value ( - const Mapping&, - const DoFHandler&, - const VEC&, - const Point&, - Vector&); - - template - VEC::value_type point_value ( - const Mapping&, - const DoFHandler&, - const VEC&, - const Point&); + namespace VectorTools + \{ + + template void + point_value(const hp::DoFHandler &, + const VEC &, + const Point &, + Vector &); + + template VEC::value_type + point_value(const hp::DoFHandler &, + const VEC &, + const Point &); + + template void + point_value( + const hp::MappingCollection &, + const hp::DoFHandler &, + const VEC &, + const Point &, + Vector &); + + template VEC::value_type + point_value( + const hp::MappingCollection &, + const hp::DoFHandler &, + const VEC &, + const Point &); + + template void + point_difference( + const DoFHandler &, + const VEC &, + const Function &, + Vector &, + const Point &); + + template void + point_difference( + const Mapping &, + const DoFHandler &, + const VEC &, + const Function &, + Vector &, + const Point &); + + template void + point_value(const DoFHandler &, + const VEC &, + const Point &, + Vector &); + + template VEC::value_type + point_value(const DoFHandler &, + const VEC &, + const Point &); + + template void + point_value(const Mapping &, + const DoFHandler &, + const VEC &, + const Point &, + Vector &); + + template VEC::value_type + point_value(const Mapping &, + const DoFHandler &, + const VEC &, + const Point &); \} #endif -} + } -//TODO[SP]: replace by +// TODO[SP]: replace by // where applicable and move to codimension cases above also when applicable -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ - namespace VectorTools \{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { + namespace VectorTools + \{ #if deal_II_dimension == deal_II_space_dimension - template - void create_point_source_vector - (const Mapping &, - const DoFHandler &, - const Point &, - Vector &); - template - void create_point_source_vector - (const DoFHandler &, - const Point &, - Vector &); - - template - void create_point_source_vector - (const hp::MappingCollection &, - const hp::DoFHandler &, - const Point &, - Vector &); - template - void create_point_source_vector - (const hp::DoFHandler &, - const Point &, - Vector &); - template - void create_point_source_vector - (const Mapping &, - const DoFHandler &, - const Point &, - const Point &, - Vector &); - template - void create_point_source_vector - (const DoFHandler &, - const Point &, - const Point &, - Vector &); - - template - void create_point_source_vector - (const hp::MappingCollection &, - const hp::DoFHandler &, - const Point &, - const Point &, - Vector &); - template - void create_point_source_vector - (const hp::DoFHandler &, - const Point &, - const Point &, - Vector &); + template void + create_point_source_vector( + const Mapping &, + const DoFHandler &, + const Point &, + Vector &); + template void + create_point_source_vector( + const DoFHandler &, + const Point &, + Vector &); + + template void + create_point_source_vector( + const hp::MappingCollection &, + const hp::DoFHandler &, + const Point &, + Vector &); + template void + create_point_source_vector( + const hp::DoFHandler &, + const Point &, + Vector &); + template void + create_point_source_vector( + const Mapping &, + const DoFHandler &, + const Point &, + const Point &, + Vector &); + template void + create_point_source_vector( + const DoFHandler &, + const Point &, + const Point &, + Vector &); + + template void + create_point_source_vector( + const hp::MappingCollection &, + const hp::DoFHandler &, + const Point &, + const Point &, + Vector &); + template void + create_point_source_vector( + const hp::DoFHandler &, + const Point &, + const Point &, + Vector &); #endif \} -} + } diff --git a/source/numerics/vector_tools_project.inst.in b/source/numerics/vector_tools_project.inst.in index 35d99404a7..f71c34a37e 100644 --- a/source/numerics/vector_tools_project.inst.in +++ b/source/numerics/vector_tools_project.inst.in @@ -14,33 +14,35 @@ // --------------------------------------------------------------------- -for (VEC : REAL_VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension == deal_II_space_dimension - namespace VectorTools \{ + namespace VectorTools + \{ - template - void project - (const Mapping &, - const DoFHandler &, - const ConstraintMatrix &, - const Quadrature &, - const Function &, - VEC &, - const bool, - const Quadrature &, - const bool); + template void + project( + const Mapping &, + const DoFHandler &, + const ConstraintMatrix &, + const Quadrature &, + const Function &, + VEC &, + const bool, + const Quadrature &, + const bool); - template - void project - (const DoFHandler &, - const ConstraintMatrix &, - const Quadrature &, - const Function &, - VEC &, - const bool, - const Quadrature &, - const bool); + template void + project( + const DoFHandler &, + const ConstraintMatrix &, + const Quadrature &, + const Function &, + VEC &, + const bool, + const Quadrature &, + const bool); \} #endif -} + } diff --git a/source/numerics/vector_tools_project_codim.inst.in b/source/numerics/vector_tools_project_codim.inst.in index b1c2f285b2..fc51d36cc9 100644 --- a/source/numerics/vector_tools_project_codim.inst.in +++ b/source/numerics/vector_tools_project_codim.inst.in @@ -14,33 +14,35 @@ // --------------------------------------------------------------------- -for (VEC : REAL_VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension < deal_II_space_dimension - namespace VectorTools \{ + namespace VectorTools + \{ - template - void project - (const Mapping &, - const DoFHandler &, - const ConstraintMatrix &, - const Quadrature &, - const Function &, - VEC &, - const bool, - const Quadrature &, - const bool); + template void + project( + const Mapping &, + const DoFHandler &, + const ConstraintMatrix &, + const Quadrature &, + const Function &, + VEC &, + const bool, + const Quadrature &, + const bool); - template - void project - (const DoFHandler &, - const ConstraintMatrix &, - const Quadrature &, - const Function &, - VEC &, - const bool, - const Quadrature &, - const bool); + template void + project( + const DoFHandler &, + const ConstraintMatrix &, + const Quadrature &, + const Function &, + VEC &, + const bool, + const Quadrature &, + const bool); \} #endif -} + } diff --git a/source/numerics/vector_tools_project_hp.inst.in b/source/numerics/vector_tools_project_hp.inst.in index 44a6267d5c..9421dd4b1b 100644 --- a/source/numerics/vector_tools_project_hp.inst.in +++ b/source/numerics/vector_tools_project_hp.inst.in @@ -14,33 +14,36 @@ // --------------------------------------------------------------------- -for (VEC : REAL_VECTOR_TYPES ; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ + namespace VectorTools + \{ - template - void project - (const hp::MappingCollection &, - const hp::DoFHandler &, - const ConstraintMatrix &, - const hp::QCollection &, - const Function &, - VEC &, - const bool, - const hp::QCollection &, - const bool); + template void + project( + const hp::MappingCollection + &, + const hp::DoFHandler &, + const ConstraintMatrix &, + const hp::QCollection &, + const Function &, + VEC &, + const bool, + const hp::QCollection &, + const bool); - template - void project - (const hp::DoFHandler &, - const ConstraintMatrix &, - const hp::QCollection &, - const Function &, - VEC &, - const bool, - const hp::QCollection &, - const bool); + template void + project( + const hp::DoFHandler &, + const ConstraintMatrix &, + const hp::QCollection &, + const Function &, + VEC &, + const bool, + const hp::QCollection &, + const bool); \} #endif -} + } diff --git a/source/numerics/vector_tools_project_qp.inst.in b/source/numerics/vector_tools_project_qp.inst.in index 96ec7e5dd4..767255686c 100644 --- a/source/numerics/vector_tools_project_qp.inst.in +++ b/source/numerics/vector_tools_project_qp.inst.in @@ -13,19 +13,22 @@ // // --------------------------------------------------------------------- -for (VEC: REAL_NONBLOCK_VECTORS; deal_II_dimension : DIMENSIONS) -{ - namespace VectorTools \{ +for (VEC : REAL_NONBLOCK_VECTORS; deal_II_dimension : DIMENSIONS) + { + namespace VectorTools + \{ - template - void project( - const Mapping &, - const DoFHandler &, + template void + project( + const Mapping &, + const DoFHandler &, const ConstraintMatrix &, const Quadrature &, - const std::function::active_cell_iterator &, const unsigned int)> &, + const std::function::active_cell_iterator &, + const unsigned int)> &, VEC &); \} - -} + } diff --git a/source/numerics/vector_tools_project_qpmf.inst.in b/source/numerics/vector_tools_project_qpmf.inst.in index 3dccf04b12..34179ac078 100644 --- a/source/numerics/vector_tools_project_qpmf.inst.in +++ b/source/numerics/vector_tools_project_qpmf.inst.in @@ -15,27 +15,31 @@ -for (VEC: REAL_NONBLOCK_VECTORS; deal_II_dimension : DIMENSIONS) -{ - namespace VectorTools \{ +for (VEC : REAL_NONBLOCK_VECTORS; deal_II_dimension : DIMENSIONS) + { + namespace VectorTools + \{ - template - void project( - std::shared_ptr > matrix_free, + template void + project( + std::shared_ptr> + matrix_free, const ConstraintMatrix &constraints, - const std::function< VectorizedArray (const unsigned int, const unsigned int)> &, + const std::function(const unsigned int, const unsigned int)> &, VEC &, const unsigned int); - template - void project( - std::shared_ptr > matrix_free, + template void + project( + std::shared_ptr> + matrix_free, const ConstraintMatrix &constraints, const unsigned int, - const std::function< VectorizedArray (const unsigned int, const unsigned int)> &, + const std::function(const unsigned int, const unsigned int)> &, VEC &, const unsigned int); \} - -} + } diff --git a/source/numerics/vector_tools_rhs.inst.in b/source/numerics/vector_tools_rhs.inst.in index 08aa951e31..54d58792ba 100644 --- a/source/numerics/vector_tools_rhs.inst.in +++ b/source/numerics/vector_tools_rhs.inst.in @@ -14,97 +14,109 @@ // --------------------------------------------------------------------- -for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ +for (VEC : REAL_VECTOR_TYPES; deal_II_dimension : DIMENSIONS; + deal_II_space_dimension : SPACE_DIMENSIONS) + { #if deal_II_dimension <= deal_II_space_dimension - namespace VectorTools \{ - template - void create_right_hand_side - (const Mapping &, - const DoFHandler &, - const Quadrature &, - const Function &, - VEC &, - const ConstraintMatrix &); + namespace VectorTools + \{ + template void + create_right_hand_side( + const Mapping &, + const DoFHandler &, + const Quadrature &, + const Function &, + VEC &, + const ConstraintMatrix &); - template - void create_right_hand_side - (const DoFHandler &, - const Quadrature &, - const Function &, - VEC &, - const ConstraintMatrix &); + template void + create_right_hand_side( + const DoFHandler &, + const Quadrature &, + const Function &, + VEC &, + const ConstraintMatrix &); \} #endif -} + } -//TODO[SP]: replace by +// TODO[SP]: replace by // where applicable and move to codimension cases above also when applicable -for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ - namespace VectorTools \{ +for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) + { + namespace VectorTools + \{ #if deal_II_dimension == deal_II_space_dimension - template - void create_right_hand_side > - (const hp::MappingCollection &, - const hp::DoFHandler &, - const hp::QCollection &, - const Function::value_type> &, - Vector &, - const ConstraintMatrix &); + template void + create_right_hand_side>( + const hp::MappingCollection &, + const hp::DoFHandler &, + const hp::QCollection &, + const Function::value_type> &, + Vector &, + const ConstraintMatrix &); - template - void create_right_hand_side > - (const hp::DoFHandler &, - const hp::QCollection &, - const Function::value_type> &, - Vector &, - const ConstraintMatrix &); + template void + create_right_hand_side>( + const hp::DoFHandler &, + const hp::QCollection &, + const Function::value_type> &, + Vector &, + const ConstraintMatrix &); -#if deal_II_dimension > 1 - template - void - create_boundary_right_hand_side > - (const Mapping &, - const DoFHandler &, - const Quadrature &, - const Function::value_type> &, - Vector &, - const std::set &); -#endif +# if deal_II_dimension > 1 + template void + create_boundary_right_hand_side>( + const Mapping &, + const DoFHandler &, + const Quadrature &, + const Function::value_type> &, + Vector &, + const std::set &); +# endif - template - void - create_boundary_right_hand_side > - (const DoFHandler &, - const Quadrature &, - const Function::value_type> &, - Vector &, - const std::set &); + template void + create_boundary_right_hand_side>( + const DoFHandler &, + const Quadrature &, + const Function::value_type> &, + Vector &, + const std::set &); -#if deal_II_dimension > 1 - template - void - create_boundary_right_hand_side > - (const hp::MappingCollection &, - const hp::DoFHandler &, - const hp::QCollection &, - const Function::value_type> &, - Vector &, - const std::set &); -#endif +# if deal_II_dimension > 1 + template void + create_boundary_right_hand_side>( + const hp::MappingCollection &, + const hp::DoFHandler &, + const hp::QCollection &, + const Function::value_type> &, + Vector &, + const std::set &); +# endif - template - void - create_boundary_right_hand_side > - (const hp::DoFHandler &, - const hp::QCollection &, - const Function::value_type> &, - Vector &, - const std::set &); + template void + create_boundary_right_hand_side>( + const hp::DoFHandler &, + const hp::QCollection &, + const Function::value_type> &, + Vector &, + const std::set &); #endif \} -} + } diff --git a/source/opencascade/boundary_lib.inst.in b/source/opencascade/boundary_lib.inst.in index 46a478c34a..9af64276bc 100644 --- a/source/opencascade/boundary_lib.inst.in +++ b/source/opencascade/boundary_lib.inst.in @@ -16,11 +16,11 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class NormalProjectionBoundary; template class DirectionalProjectionBoundary; template class NormalToMeshProjectionBoundary; #if deal_II_dimension <= 2 template class DirectionalProjectionBoundary; #endif -} + } diff --git a/source/opencascade/manifold_lib.inst.in b/source/opencascade/manifold_lib.inst.in index c227a7f06d..224de1263b 100644 --- a/source/opencascade/manifold_lib.inst.in +++ b/source/opencascade/manifold_lib.inst.in @@ -16,7 +16,7 @@ for (deal_II_dimension : DIMENSIONS) -{ + { template class NormalProjectionManifold; template class DirectionalProjectionManifold; template class NormalToMeshProjectionManifold; @@ -27,4 +27,4 @@ for (deal_II_dimension : DIMENSIONS) template class ArclengthProjectionLineManifold; template class NURBSPatchManifold; #endif -} + } diff --git a/source/opencascade/utilities.inst.in b/source/opencascade/utilities.inst.in index c3a45cce05..ccaf447bc6 100644 --- a/source/opencascade/utilities.inst.in +++ b/source/opencascade/utilities.inst.in @@ -14,49 +14,50 @@ // --------------------------------------------------------------------- for (deal_II_dimension : DIMENSIONS) -{ + { #if deal_II_dimension > 1 // Explicit instantiations for dim = 2 and 3 - template - std::vector create_curves_from_triangulation_boundary - (const Triangulation<2, deal_II_dimension> &triangulation, - const Mapping<2, deal_II_dimension> &mapping); + template std::vector create_curves_from_triangulation_boundary( + const Triangulation<2, deal_II_dimension> &triangulation, + const Mapping<2, deal_II_dimension> & mapping); - template bool point_compare(const Point& p1, - const Point& p2, - const Tensor<1,deal_II_dimension>& direction, - const double tolerance ); + template bool point_compare(const Point & p1, + const Point & p2, + const Tensor<1, deal_II_dimension> &direction, + const double tolerance); - template Point point(const gp_Pnt &p, const double &tolerance); + template Point point(const gp_Pnt &p, + const double &tolerance); - template gp_Pnt point(const Point &p); + template gp_Pnt point(const Point &p); - template - TopoDS_Edge interpolation_curve(std::vector >& curve_points, - const Tensor<1, deal_II_dimension>& direction, - const bool closed, - const double tolerance); + template TopoDS_Edge interpolation_curve( + std::vector> & curve_points, + const Tensor<1, deal_II_dimension> &direction, + const bool closed, + const double tolerance); - template Point push_forward(const TopoDS_Shape &in_shape, - const double u, - const double v); + template Point push_forward( + const TopoDS_Shape &in_shape, const double u, const double v); - template Point line_intersection(const TopoDS_Shape &in_shape, - const Point &origin, - const Tensor<1,deal_II_dimension> &direction, - const double tolerance); + template Point line_intersection( + const TopoDS_Shape & in_shape, + const Point & origin, + const Tensor<1, deal_II_dimension> &direction, + const double tolerance); - template void create_triangulation(const TopoDS_Face &face, - Triangulation<2,deal_II_dimension> &tria); + template void create_triangulation( + const TopoDS_Face &face, Triangulation<2, deal_II_dimension> &tria); template std::tuple, TopoDS_Shape, double, double> - project_point_and_pull_back(const TopoDS_Shape &in_shape, - const Point& origin, - const double tolerance); + project_point_and_pull_back(const TopoDS_Shape & in_shape, + const Point &origin, + const double tolerance); - template Point closest_point(const TopoDS_Shape &in_shape, - const Point &origin, - const double tolerance); + template Point closest_point( + const TopoDS_Shape & in_shape, + const Point &origin, + const double tolerance); #endif -} + } diff --git a/source/particles/particle.inst.in b/source/particles/particle.inst.in index bf68675593..5e51ce216d 100644 --- a/source/particles/particle.inst.in +++ b/source/particles/particle.inst.in @@ -15,12 +15,11 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension namespace Particles \{ - template - class Particle ; + template class Particle; \} #endif -} + } diff --git a/source/particles/particle_accessor.inst.in b/source/particles/particle_accessor.inst.in index 71a9286f7c..0e4276baa2 100644 --- a/source/particles/particle_accessor.inst.in +++ b/source/particles/particle_accessor.inst.in @@ -15,12 +15,12 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension namespace Particles \{ - template - class ParticleAccessor ; + template class ParticleAccessor; \} #endif -} + } diff --git a/source/particles/particle_handler.inst.in b/source/particles/particle_handler.inst.in index 536a0a2a5d..23d1d939f0 100644 --- a/source/particles/particle_handler.inst.in +++ b/source/particles/particle_handler.inst.in @@ -15,12 +15,12 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension namespace Particles \{ - template - class ParticleHandler ; + template class ParticleHandler; \} #endif -} + } diff --git a/source/particles/particle_iterator.inst.in b/source/particles/particle_iterator.inst.in index 2d6e7c9678..74b3e444f5 100644 --- a/source/particles/particle_iterator.inst.in +++ b/source/particles/particle_iterator.inst.in @@ -15,12 +15,12 @@ for (deal_II_dimension : DIMENSIONS; deal_II_space_dimension : SPACE_DIMENSIONS) -{ + { #if deal_II_dimension <= deal_II_space_dimension namespace Particles \{ - template - class ParticleIterator ; + template class ParticleIterator; \} #endif -} + } diff --git a/source/physics/elasticity/kinematics.inst.in b/source/physics/elasticity/kinematics.inst.in index 8c34b48144..ae3a98683d 100644 --- a/source/physics/elasticity/kinematics.inst.in +++ b/source/physics/elasticity/kinematics.inst.in @@ -15,64 +15,60 @@ for (deal_II_dimension : DIMENSIONS; number : REAL_SCALARS) -{ - + { namespace Physics \{ - namespace Elasticity - \{ - namespace Kinematics - \{ - template - Tensor<2,deal_II_dimension,number> - F(const Tensor<2,deal_II_dimension,number>&); + namespace Elasticity + \{ + namespace Kinematics + \{ + template Tensor<2, deal_II_dimension, number> + F( + const Tensor<2, deal_II_dimension, number> &); - template - Tensor<2,deal_II_dimension,number> - F_iso(const Tensor<2,deal_II_dimension,number>&); + template Tensor<2, deal_II_dimension, number> + F_iso( + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<2,deal_II_dimension,number> - F_vol(const Tensor<2,deal_II_dimension,number>&); + template SymmetricTensor<2, deal_II_dimension, number> + F_vol( + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<2,deal_II_dimension,number> - C(const Tensor<2,deal_II_dimension,number>&); + template SymmetricTensor<2, deal_II_dimension, number> + C( + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<2,deal_II_dimension,number> - b(const Tensor<2,deal_II_dimension,number>&); + template SymmetricTensor<2, deal_II_dimension, number> + b( + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<2,deal_II_dimension,number> - E(const Tensor<2,deal_II_dimension,number>&); + template SymmetricTensor<2, deal_II_dimension, number> + E( + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<2,deal_II_dimension,number> - epsilon(const Tensor<2,deal_II_dimension,number>&); + template SymmetricTensor<2, deal_II_dimension, number> + epsilon( + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<2,deal_II_dimension,number> - e(const Tensor<2,deal_II_dimension,number>&); + template SymmetricTensor<2, deal_II_dimension, number> + e( + const Tensor<2, deal_II_dimension, number> &); - template - Tensor<2,deal_II_dimension,number> - l( - const Tensor<2,deal_II_dimension,number>&, - const Tensor<2,deal_II_dimension,number>&); + template Tensor<2, deal_II_dimension, number> + l( + const Tensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<2,deal_II_dimension,number> - d( - const Tensor<2,deal_II_dimension,number>&, - const Tensor<2,deal_II_dimension,number>&); + template SymmetricTensor<2, deal_II_dimension, number> + d( + const Tensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); - template - Tensor<2,deal_II_dimension,number> - w( - const Tensor<2,deal_II_dimension,number>&, - const Tensor<2,deal_II_dimension,number>&); - \} - \} + template Tensor<2, deal_II_dimension, number> + w( + const Tensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + \} + \} \} -} + } diff --git a/source/physics/elasticity/standard_tensors.inst.in b/source/physics/elasticity/standard_tensors.inst.in index fd415e2a3b..52887b1db4 100644 --- a/source/physics/elasticity/standard_tensors.inst.in +++ b/source/physics/elasticity/standard_tensors.inst.in @@ -15,39 +15,38 @@ for (deal_II_dimension : DIMENSIONS) -{ + { namespace Physics \{ - namespace Elasticity - \{ - template - class StandardTensors; - \} + namespace Elasticity + \{ + template class StandardTensors; + \} \} -} + } for (deal_II_dimension : DIMENSIONS; number : REAL_SCALARS) -{ + { namespace Physics \{ - namespace Elasticity - \{ - template - SymmetricTensor<4,deal_II_dimension,number> - StandardTensors::Dev_P(const Tensor<2,deal_II_dimension,number> &); + namespace Elasticity + \{ + template SymmetricTensor<4, deal_II_dimension, number> + StandardTensors::Dev_P( + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<4,deal_II_dimension,number> - StandardTensors::Dev_P_T(const Tensor<2,deal_II_dimension,number> &); + template SymmetricTensor<4, deal_II_dimension, number> + StandardTensors::Dev_P_T( + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<2,deal_II_dimension,number> - StandardTensors::ddet_F_dC(const Tensor<2,deal_II_dimension,number> &); + template SymmetricTensor<2, deal_II_dimension, number> + StandardTensors::ddet_F_dC( + const Tensor<2, deal_II_dimension, number> &); - template - SymmetricTensor<4,deal_II_dimension,number> - StandardTensors::dC_inv_dC(const Tensor<2,deal_II_dimension,number> &); - \} + template SymmetricTensor<4, deal_II_dimension, number> + StandardTensors::dC_inv_dC( + const Tensor<2, deal_II_dimension, number> &); + \} \} -} + } diff --git a/source/physics/transformations.inst.in b/source/physics/transformations.inst.in index be632643bb..6c1b3136f4 100644 --- a/source/physics/transformations.inst.in +++ b/source/physics/transformations.inst.in @@ -15,207 +15,144 @@ for (deal_II_dimension : DIMENSIONS; number : REAL_SCALARS) -{ - + { namespace Physics \{ - namespace Transformations - \{ - template - Tensor<1,deal_II_dimension,number> - nansons_formula ( - const Tensor<1,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - namespace Contravariant - \{ - template - Tensor<1,deal_II_dimension,number> - push_forward ( - const Tensor<1,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<2,deal_II_dimension,number> - push_forward ( - const Tensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<2,deal_II_dimension,number> - push_forward ( - const SymmetricTensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<4,deal_II_dimension,number> - push_forward ( - const Tensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<4,deal_II_dimension,number> - push_forward ( - const SymmetricTensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<1,deal_II_dimension,number> - pull_back ( - const Tensor<1,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<2,deal_II_dimension,number> - pull_back ( - const Tensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<2,deal_II_dimension,number> - pull_back ( - const SymmetricTensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<4,deal_II_dimension,number> - pull_back ( - const Tensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<4,deal_II_dimension,number> - pull_back ( - const SymmetricTensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - \} - - namespace Covariant - \{ - template - Tensor<1,deal_II_dimension,number> - push_forward ( - const Tensor<1,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<2,deal_II_dimension,number> - push_forward ( - const Tensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<2,deal_II_dimension,number> - push_forward ( - const SymmetricTensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<4,deal_II_dimension,number> - push_forward ( - const Tensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<4,deal_II_dimension,number> - push_forward ( - const SymmetricTensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<1,deal_II_dimension,number> - pull_back ( - const Tensor<1,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<2,deal_II_dimension,number> - pull_back ( - const Tensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<2,deal_II_dimension,number> - pull_back ( - const SymmetricTensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<4,deal_II_dimension,number> - pull_back ( - const Tensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<4,deal_II_dimension,number> - pull_back ( - const SymmetricTensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - \} - - namespace Piola - \{ - template - Tensor<1,deal_II_dimension,number> - push_forward ( - const Tensor<1,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<2,deal_II_dimension,number> - push_forward ( - const Tensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<2,deal_II_dimension,number> - push_forward ( - const SymmetricTensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<4,deal_II_dimension,number> - push_forward ( - const Tensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<4,deal_II_dimension,number> - push_forward ( - const SymmetricTensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<1,deal_II_dimension,number> - pull_back ( - const Tensor<1,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<2,deal_II_dimension,number> - pull_back ( - const Tensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<2,deal_II_dimension,number> - pull_back ( - const SymmetricTensor<2,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - Tensor<4,deal_II_dimension,number> - pull_back ( - const Tensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - - template - SymmetricTensor<4,deal_II_dimension,number> - pull_back ( - const SymmetricTensor<4,deal_II_dimension,number> &, - const Tensor<2,deal_II_dimension,number> &); - \} - - \} + namespace Transformations + \{ + template Tensor<1, deal_II_dimension, number> + nansons_formula(const Tensor<1, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + namespace Contravariant + \{ + template Tensor<1, deal_II_dimension, number> + push_forward(const Tensor<1, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<2, deal_II_dimension, number> + push_forward(const Tensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<2, deal_II_dimension, number> + push_forward(const SymmetricTensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<4, deal_II_dimension, number> + push_forward(const Tensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<4, deal_II_dimension, number> + push_forward(const SymmetricTensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<1, deal_II_dimension, number> + pull_back(const Tensor<1, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<2, deal_II_dimension, number> + pull_back(const Tensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<2, deal_II_dimension, number> + pull_back(const SymmetricTensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<4, deal_II_dimension, number> + pull_back(const Tensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<4, deal_II_dimension, number> + pull_back(const SymmetricTensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + \} + + namespace Covariant + \{ + template Tensor<1, deal_II_dimension, number> + push_forward(const Tensor<1, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<2, deal_II_dimension, number> + push_forward(const Tensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<2, deal_II_dimension, number> + push_forward(const SymmetricTensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<4, deal_II_dimension, number> + push_forward(const Tensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<4, deal_II_dimension, number> + push_forward(const SymmetricTensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<1, deal_II_dimension, number> + pull_back(const Tensor<1, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<2, deal_II_dimension, number> + pull_back(const Tensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<2, deal_II_dimension, number> + pull_back(const SymmetricTensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<4, deal_II_dimension, number> + pull_back(const Tensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<4, deal_II_dimension, number> + pull_back(const SymmetricTensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + \} + + namespace Piola + \{ + template Tensor<1, deal_II_dimension, number> + push_forward(const Tensor<1, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<2, deal_II_dimension, number> + push_forward(const Tensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<2, deal_II_dimension, number> + push_forward(const SymmetricTensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<4, deal_II_dimension, number> + push_forward(const Tensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<4, deal_II_dimension, number> + push_forward(const SymmetricTensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<1, deal_II_dimension, number> + pull_back(const Tensor<1, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<2, deal_II_dimension, number> + pull_back(const Tensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<2, deal_II_dimension, number> + pull_back(const SymmetricTensor<2, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template Tensor<4, deal_II_dimension, number> + pull_back(const Tensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + + template SymmetricTensor<4, deal_II_dimension, number> + pull_back(const SymmetricTensor<4, deal_II_dimension, number> &, + const Tensor<2, deal_II_dimension, number> &); + \} + + \} \} -} + }