]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Convert the remaining files in this directory.
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 9 Nov 2010 18:47:03 +0000 (18:47 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 9 Nov 2010 18:47:03 +0000 (18:47 +0000)
git-svn-id: https://svn.dealii.org/trunk@22654 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/source/grid/tria_accessor.all_dimensions.cc [moved from deal.II/source/grid/tria_accessor.cc with 96% similarity]
deal.II/source/grid/tria_accessor.inst.in [new file with mode: 0644]
deal.II/source/grid/tria_boundary.all_dimensions.cc [moved from deal.II/source/grid/tria_boundary.cc with 96% similarity]
deal.II/source/grid/tria_boundary.inst.in [new file with mode: 0644]
deal.II/source/grid/tria_boundary_lib.all_dimensions.cc [moved from deal.II/source/grid/tria_boundary_lib.cc with 96% similarity]
deal.II/source/grid/tria_boundary_lib.inst.in [new file with mode: 0644]
deal.II/source/grid/tria_faces.all_dimensions.cc [moved from deal.II/source/grid/tria_faces.cc with 86% similarity]

similarity index 96%
rename from deal.II/source/grid/tria_accessor.cc
rename to deal.II/source/grid/tria_accessor.all_dimensions.cc
index 4d9214845e1fe5cb7ac78428e393e788069f280f..376c94744fc9e6362fc5a47e839e26e70fb08c5e 100644 (file)
@@ -895,7 +895,6 @@ namespace
   }
 
 
-#if deal_II_dimension == 2
 
   double
   measure (const TriaAccessor<2,2,2> &accessor)
@@ -945,9 +944,6 @@ namespace
     return (-x[1]*y[0]+x[1]*y[3]+y[0]*x[2]+x[0]*y[1]-x[0]*y[2]-y[1]*x[3]-x[2]*y[3]+x[3]*y[2])/2;
   }
 
-#endif
-
-#if deal_II_dimension == 3
 
   double
   measure (const TriaAccessor<3, 3, 3> &accessor)
@@ -960,7 +956,6 @@ namespace
                                      vertex_indices);
   }
 
-#endif
 
 
   template <int structdim, int dim, int spacedim>
@@ -1013,7 +1008,6 @@ measure () const
 }
 
 
-#if deal_II_dimension == 1
 
 template <>
 double TriaAccessor<1,1,1>::extent_in_direction(const unsigned int axis) const
@@ -1023,7 +1017,6 @@ double TriaAccessor<1,1,1>::extent_in_direction(const unsigned int axis) const
   return this->diameter();
 }
 
-#elif deal_II_dimension == 2
 
 template <>
 double TriaAccessor<2,2,2>::extent_in_direction(const unsigned int axis) const
@@ -1037,7 +1030,6 @@ double TriaAccessor<2,2,2>::extent_in_direction(const unsigned int axis) const
                  this->line(lines[axis][1])->diameter());
 }
 
-#elif deal_II_dimension == 3
 
 template <>
 double TriaAccessor<3,3,3>::extent_in_direction(const unsigned int axis) const
@@ -1057,17 +1049,11 @@ double TriaAccessor<3,3,3>::extent_in_direction(const unsigned int axis) const
                  std::max(lengths[2], lengths[3]));
 }
 
-#else
-
-// Not implemented for higher dimensions
-
-#endif
 
 
 /*------------------------ Functions: CellAccessor<1> -----------------------*/
 
 
-#if deal_II_dimension == 1
 
 template <>
 bool CellAccessor<1>::point_inside (const Point<1> &p) const
@@ -1086,13 +1072,10 @@ bool CellAccessor<1,2>::point_inside (const Point<2> &) const
 
 
 
-#endif
-
 
 /*------------------------ Functions: CellAccessor<2> -----------------------*/
 
 
-#if deal_II_dimension == 2
 
 template <>
 bool CellAccessor<2>::point_inside (const Point<2> &p) const
@@ -1157,13 +1140,11 @@ bool CellAccessor<2,3>::point_inside (const Point<3> &) const
 }
 
 
-#endif
 
 
 /*------------------------ Functions: CellAccessor<3> -----------------------*/
 
 
-#if deal_II_dimension == 3
 
 template <>
 bool CellAccessor<3>::point_inside (const Point<3> &p) const
@@ -1204,7 +1185,6 @@ bool CellAccessor<3>::point_inside (const Point<3> &p) const
 }
 
 
-#endif
 
 
 /*------------------------ Functions: CellAccessor<dim,spacedim> -----------------------*/
@@ -1290,7 +1270,7 @@ CellAccessor<dim, spacedim>::parent () const
   Assert (this->present_level > 0, TriaAccessorExceptions::ExcCellHasNoParent ());
   TriaIterator<CellAccessor<dim,spacedim> >
     q (this->tria, this->present_level-1, this->parent_index ());
-  
+
   return q;
 }
 
@@ -1984,76 +1964,7 @@ neighbor_child_on_subface (const unsigned int face,
 // For more information, see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24331
 
 // explicit instantiations
-template class TriaAccessorBase<1,deal_II_dimension>;
-#if deal_II_dimension >= 2
-template class TriaAccessorBase<2,deal_II_dimension>;
-#endif
-#if deal_II_dimension >= 3
-template class TriaAccessorBase<3,deal_II_dimension>;
-#endif
-
-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>;
-#endif
-#if deal_II_dimension >= 3
-template class TriaAccessor<3,deal_II_dimension,deal_II_dimension>;
-#endif
-
-
-template class CellAccessor<deal_II_dimension>;
-template class TriaRawIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension> >;
-template class TriaRawIterator<CellAccessor<deal_II_dimension> >;
-template class TriaIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension> >;
-template class TriaIterator<CellAccessor<deal_II_dimension> >;
-template class TriaActiveIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension> >;
-template class TriaActiveIterator<CellAccessor<deal_II_dimension> >;
-
-
-#if deal_II_dimension >= 2
-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<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> >;
-#endif
-
-#if deal_II_dimension == 1
-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>;
-#endif
-#if deal_II_dimension == 2
-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>;
-#endif
-
-#if deal_II_dimension != 3
-template class CellAccessor<deal_II_dimension, deal_II_dimension+1>;
-template class TriaRawIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension+1> >;
-template class TriaRawIterator<CellAccessor<deal_II_dimension, deal_II_dimension+1> >;
-template class TriaIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension+1> >;
-template class TriaIterator<CellAccessor<deal_II_dimension, deal_II_dimension+1> >;
-template class TriaActiveIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension+1> >;
-template class TriaActiveIterator<CellAccessor<deal_II_dimension, deal_II_dimension+1> >;
-
-
-#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
+#include "tria_accessor.inst"
 
 DEAL_II_NAMESPACE_CLOSE
 
diff --git a/deal.II/source/grid/tria_accessor.inst.in b/deal.II/source/grid/tria_accessor.inst.in
new file mode 100644 (file)
index 0000000..7c4aba5
--- /dev/null
@@ -0,0 +1,93 @@
+//---------------------------------------------------------------------------
+//    $Id$
+//    Version: $Name$
+//
+//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 by the deal.II authors
+//
+//    This file is subject to QPL and may not be  distributed
+//    without copyright and license information. Please refer
+//    to the file deal.II/doc/license.html for the  text  and
+//    further information on this license.
+//
+//---------------------------------------------------------------------------
+
+
+for (deal_II_dimension : DIMENSIONS)
+  {
+// Remark: The explicit instantiations for "TriaAccessor" were moved
+// to the top of this source file. The reason is a slightly buggy version
+// of the Apple gcc v.3.3.
+// For more information, see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24331
+    template class TriaAccessorBase<1,deal_II_dimension>;
+#if deal_II_dimension >= 2
+    template class TriaAccessorBase<2,deal_II_dimension>;
+#endif
+#if deal_II_dimension >= 3
+    template class TriaAccessorBase<3,deal_II_dimension>;
+#endif
+
+    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>;
+#endif
+#if deal_II_dimension >= 3
+    template class TriaAccessor<3,deal_II_dimension,deal_II_dimension>;
+#endif
+
+
+    template class CellAccessor<deal_II_dimension>;
+    template class TriaRawIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension> >;
+    template class TriaRawIterator<CellAccessor<deal_II_dimension> >;
+    template class TriaIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension> >;
+    template class TriaIterator<CellAccessor<deal_II_dimension> >;
+    template class TriaActiveIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension> >;
+    template class TriaActiveIterator<CellAccessor<deal_II_dimension> >;
+
+
+#if deal_II_dimension >= 2
+    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<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> >;
+#endif
+
+#if deal_II_dimension == 1
+    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>;
+#endif
+#if deal_II_dimension == 2
+    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>;
+#endif
+
+#if deal_II_dimension != 3
+    template class CellAccessor<deal_II_dimension, deal_II_dimension+1>;
+    template class TriaRawIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension+1> >;
+    template class TriaRawIterator<CellAccessor<deal_II_dimension, deal_II_dimension+1> >;
+    template class TriaIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension+1> >;
+    template class TriaIterator<CellAccessor<deal_II_dimension, deal_II_dimension+1> >;
+    template class TriaActiveIterator<TriaAccessor<1, deal_II_dimension, deal_II_dimension+1> >;
+    template class TriaActiveIterator<CellAccessor<deal_II_dimension, deal_II_dimension+1> >;
+
+
+#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
+  }
+
+
similarity index 96%
rename from deal.II/source/grid/tria_boundary.cc
rename to deal.II/source/grid/tria_boundary.all_dimensions.cc
index e9aefe59d4bf454a04574689a2dc9970871659a2..bb3e51dc4b90805c1689f8a970d570ab458d5714 100644 (file)
@@ -64,7 +64,6 @@ get_intermediate_points_on_quad (const typename Triangulation<dim, spacedim>::qu
 }
 
 
-#if deal_II_dimension > 1
 
 template <int dim, int spacedim>
 Point<spacedim>
@@ -106,7 +105,7 @@ get_intermediate_points_on_face (const typename Triangulation<dim,spacedim>::fac
     }
 }
 
-#else
+
 
 template <>
 Point<1>
@@ -150,7 +149,6 @@ get_intermediate_points_on_face (const Triangulation<1,2>::face_iterator &,
 
 
 
-#endif
 
 template <int dim, int spacedim>
 void
@@ -310,7 +308,6 @@ namespace
 }
 
 
-#if deal_II_dimension < 3
 
 template <int dim, int spacedim>
 Point<spacedim>
@@ -321,7 +318,7 @@ get_new_point_on_quad (const typename Triangulation<dim, spacedim>::quad_iterato
   return Point<spacedim>();
 }
 
-#if deal_II_dimension == 2
+
 template <>
 Point<3>
 StraightBoundary<2,3>::
@@ -330,8 +327,7 @@ get_new_point_on_quad (const Triangulation<2,3>::quad_iterator &quad) const
   return compute_new_point_on_quad<2> (quad);
 }
 
-#endif
-#else
+
 
 template <>
 Point<3>
@@ -341,11 +337,8 @@ get_new_point_on_quad (const Triangulation<3>::quad_iterator &quad) const
   return compute_new_point_on_quad<3> (quad);
 }
 
-#endif
 
 
-#if deal_II_dimension == 1
-
 template <>
 void
 StraightBoundary<1>::
@@ -375,7 +368,7 @@ get_intermediate_points_on_line (const Triangulation<1, 2>::line_iterator &line,
     points[i] = (1-x)*vertices[0] + x*vertices[1];
 }
 
-#else
+
 
 
 template <int dim, int spacedim>
@@ -397,11 +390,8 @@ get_intermediate_points_on_line (const typename Triangulation<dim, spacedim>::li
     points[i] = (1-x)*vertices[0] + x*vertices[1];
 }
 
-#endif
-
 
 
-#if deal_II_dimension < 3
 
 template <int dim, int spacedim>
 void
@@ -412,7 +402,7 @@ get_intermediate_points_on_quad (const typename Triangulation<dim, spacedim>::qu
   Assert(false, ExcImpossibleInDim(dim));
 }
 
-#else
+
 
 template <>
 void
@@ -446,9 +436,7 @@ get_intermediate_points_on_quad (const Triangulation<3>::quad_iterator &quad,
     }
 }
 
-#endif
 
-#if deal_II_dimension == 2
 
 template <>
 void
@@ -481,11 +469,8 @@ get_intermediate_points_on_quad (const Triangulation<2,3>::quad_iterator &quad,
                       x     * vertices[3]) * y;
     }
 }
-#endif
-
 
 
-#if deal_II_dimension == 1
 
 template <>
 void
@@ -505,10 +490,7 @@ get_normals_at_vertices (const Triangulation<1,2>::face_iterator &,
   Assert (false, ExcNotImplemented());
 }
 
-#endif
-
 
-#if deal_II_dimension == 2
 
 template <>
 void
@@ -537,12 +519,9 @@ get_normals_at_vertices (const Triangulation<2,3>::face_iterator &face,
   Assert(false, ExcNotImplemented());
 }
 
-#endif
 
 
 
-#if deal_II_dimension == 3
-
 template <>
 void
 StraightBoundary<3>::
@@ -576,7 +555,6 @@ get_normals_at_vertices (const Triangulation<3>::face_iterator &face,
     };
 }
 
-#endif
 
 
 template <int dim, int spacedim>
@@ -765,13 +743,7 @@ project_to_surface (const typename Triangulation<dim, spacedim>::hex_iterator &,
 
 
 // explicit instantiations
-template class Boundary<deal_II_dimension>;
-template class StraightBoundary<deal_II_dimension>;
-
-#if deal_II_dimension == 1 || deal_II_dimension == 2
-template class Boundary<deal_II_dimension, deal_II_dimension+1>;
-template class StraightBoundary<deal_II_dimension, deal_II_dimension+1>;
-#endif
+#include "tria_boundary.inst"
 
 DEAL_II_NAMESPACE_CLOSE
 
diff --git a/deal.II/source/grid/tria_boundary.inst.in b/deal.II/source/grid/tria_boundary.inst.in
new file mode 100644 (file)
index 0000000..d404a85
--- /dev/null
@@ -0,0 +1,25 @@
+//---------------------------------------------------------------------------
+//    $Id$
+//    Version: $Name$
+//
+//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2008, 2009, 2010 by the deal.II authors
+//
+//    This file is subject to QPL and may not be  distributed
+//    without copyright and license information. Please refer
+//    to the file deal.II/doc/license.html for the  text  and
+//    further information on this license.
+//
+//---------------------------------------------------------------------------
+
+for (deal_II_dimension : DIMENSIONS)
+  {
+    template class Boundary<deal_II_dimension>;
+    template class StraightBoundary<deal_II_dimension>;
+
+#if deal_II_dimension == 1 || deal_II_dimension == 2
+    template class Boundary<deal_II_dimension, deal_II_dimension+1>;
+    template class StraightBoundary<deal_II_dimension, deal_II_dimension+1>;
+#endif
+  }
+
+
similarity index 96%
rename from deal.II/source/grid/tria_boundary_lib.cc
rename to deal.II/source/grid/tria_boundary_lib.all_dimensions.cc
index ce03ff0286187a1daac8ca75f814f18f5f386f18..82ea8092279dff97ac034ea22f0eb5b7121ec2ad 100644 (file)
@@ -19,9 +19,9 @@
 #include <base/tensor.h>
 #include <cmath>
 
-DEAL_II_NAMESPACE_OPEN
 
 
+DEAL_II_NAMESPACE_OPEN
 
 
 
@@ -88,7 +88,6 @@ get_new_point_on_line (const typename Triangulation<dim>::line_iterator &line) c
 }
 
 
-#if deal_II_dimension >=3
 
 template<>
 Point<3>
@@ -109,7 +108,6 @@ get_new_point_on_quad (const Triangulation<3>::quad_iterator &quad) const
            point_on_axis);
 }
 
-#endif
 
 
 template <int dim>
@@ -167,7 +165,6 @@ CylinderBoundary<dim>::get_intermediate_points_between_points (
 }
 
 
-#if deal_II_dimension == 3
 
 template <>
 void
@@ -199,7 +196,6 @@ CylinderBoundary<3>::get_intermediate_points_on_quad (
     }
 }
 
-#endif
 
 
 template <int dim>
@@ -213,7 +209,6 @@ CylinderBoundary<dim>::get_intermediate_points_on_quad (
 
 
 
-#if deal_II_dimension == 1
 
 template <>
 void
@@ -224,7 +219,6 @@ get_normals_at_vertices (const Triangulation<1>::face_iterator &,
   Assert (false, ExcImpossibleInDim(1));
 }
 
-#endif
 
 
 template <int dim>
@@ -335,13 +329,14 @@ get_new_point_on_line (const typename Triangulation<dim>::line_iterator &line) c
 }
 
 
-#if deal_II_dimension == 3
 
-template<int dim>
-Point<dim>
-ConeBoundary<dim>::
-get_new_point_on_quad (const typename Triangulation<dim>::quad_iterator &quad) const
+template <>
+Point<3>
+ConeBoundary<3>::
+get_new_point_on_quad (const Triangulation<3>::quad_iterator &quad) const
 {
+  const int dim = 3;
+
   const Point<dim> axis = x_1 - x_0;
                                   // Compute the middle point of the
                                   // quad.
@@ -360,7 +355,7 @@ get_new_point_on_quad (const typename Triangulation<dim>::quad_iterator &quad) c
   return middle_p + get_radius (middle_p) * (middle - middle_p) / (middle - middle_p).norm ();
 }
 
-#else
+
 
 template<int dim>
 Point<dim>
@@ -372,7 +367,7 @@ get_new_point_on_quad (const typename Triangulation<dim>::quad_iterator &) const
   return Point<dim>();
 }
 
-#endif
+
 
 template<int dim>
 void
@@ -387,7 +382,7 @@ get_intermediate_points_on_line (const typename Triangulation<dim>::line_iterato
 }
 
 
-#if deal_II_dimension == 3
+
 
 template<>
 void
@@ -423,7 +418,7 @@ get_intermediate_points_on_quad (const Triangulation<3>::quad_iterator &quad,
     }
 }
 
-#endif
+
 
 template <int dim>
 void
@@ -435,7 +430,7 @@ get_intermediate_points_on_quad (const typename Triangulation<dim>::quad_iterato
 }
 
 
-#if deal_II_dimension == 1
+
 
 template<>
 void
@@ -446,7 +441,7 @@ get_normals_at_vertices (const Triangulation<1>::face_iterator &,
   Assert (false, ExcImpossibleInDim (1));
 }
 
-#endif
+
 
 template<int dim>
 void
@@ -509,8 +504,6 @@ HyperBallBoundary<dim,spacedim>::get_new_point_on_line (const typename Triangula
 
 
 
-#if deal_II_dimension == 1
-
 template <>
 Point<1>
 HyperBallBoundary<1,1>::
@@ -529,8 +522,6 @@ get_new_point_on_quad (const Triangulation<1,2>::quad_iterator &) const
   return Point<2>();
 }
 
-#endif
-
 
 
 template <int dim, int spacedim>
@@ -558,7 +549,6 @@ get_new_point_on_quad (const typename Triangulation<dim,spacedim>::quad_iterator
 }
 
 
-#if deal_II_dimension == 1
 
 template <>
 void
@@ -569,7 +559,6 @@ HyperBallBoundary<1>::get_intermediate_points_on_line (
   Assert (false, ExcImpossibleInDim(1));
 }
 
-#endif
 
 
 template <int dim, int spacedim>
@@ -664,7 +653,7 @@ HyperBallBoundary<dim,spacedim>::get_intermediate_points_between_points (
     }
 }
 
-#if deal_II_dimension == 3
+
 
 template <>
 void
@@ -696,11 +685,8 @@ HyperBallBoundary<3>::get_intermediate_points_on_quad (
     }
 }
 
-#endif
 
 
-#if deal_II_dimension == 2
-
 template <>
 void
 HyperBallBoundary<2,3>::get_intermediate_points_on_quad (
@@ -731,7 +717,7 @@ HyperBallBoundary<2,3>::get_intermediate_points_on_quad (
     }
 }
 
-#endif
+
 
 template <int dim, int spacedim>
 void
@@ -744,8 +730,6 @@ HyperBallBoundary<dim,spacedim>::get_intermediate_points_on_quad (
 
 
 
-#if deal_II_dimension == 1
-
 template <>
 void
 HyperBallBoundary<1>::
@@ -764,7 +748,6 @@ get_normals_at_vertices (const Triangulation<1,2>::face_iterator &,
   Assert (false, ExcImpossibleInDim(1));
 }
 
-#endif
 
 
 template <int dim, int spacedim>
@@ -826,8 +809,6 @@ get_new_point_on_line (const typename Triangulation<dim>::line_iterator &line) c
 
 
 
-#if deal_II_dimension == 1
-
 template <>
 Point<1>
 HalfHyperBallBoundary<1>::
@@ -837,8 +818,6 @@ get_new_point_on_quad (const Triangulation<1>::quad_iterator &) const
   return Point<1>();
 }
 
-#endif
-
 
 
 template <int dim>
@@ -897,7 +876,6 @@ get_intermediate_points_on_quad (const typename Triangulation<dim>::quad_iterato
 }
 
 
-#if deal_II_dimension == 1
 
 template <>
 void
@@ -908,10 +886,7 @@ get_intermediate_points_on_quad (const Triangulation<1>::quad_iterator &,
   Assert (false, ExcInternalError());
 }
 
-#endif
-
 
-#if deal_II_dimension == 1
 
 template <>
 void
@@ -922,7 +897,6 @@ get_normals_at_vertices (const Triangulation<1>::face_iterator &,
   Assert (false, ExcImpossibleInDim(1));
 }
 
-#endif
 
 
 template <int dim>
@@ -1043,8 +1017,6 @@ get_new_point_on_line (const typename Triangulation<dim>::line_iterator &line) c
 
 
 
-#if deal_II_dimension == 1
-
 template <>
 Point<1>
 HalfHyperShellBoundary<1>::
@@ -1054,7 +1026,6 @@ get_new_point_on_quad (const Triangulation<1>::quad_iterator &) const
   return Point<1>();
 }
 
-#endif
 
 
 
@@ -1195,8 +1166,6 @@ get_intermediate_points_on_quad (const typename Triangulation<dim>::quad_iterato
 
 
 
-#if deal_II_dimension == 1
-
 template <>
 void
 HalfHyperShellBoundary<1>::
@@ -1206,12 +1175,8 @@ get_intermediate_points_on_quad (const Triangulation<1>::quad_iterator &,
   Assert (false, ExcInternalError());
 }
 
-#endif
 
 
-
-#if deal_II_dimension == 1
-
 template <>
 void
 HalfHyperShellBoundary<1>::
@@ -1221,7 +1186,7 @@ get_normals_at_vertices (const Triangulation<1>::face_iterator &,
   Assert (false, ExcImpossibleInDim(1));
 }
 
-#endif
+
 
 
 
@@ -1240,16 +1205,7 @@ get_normals_at_vertices (const typename Triangulation<dim>::face_iterator &face,
 
 
 // explicit instantiations
-template class CylinderBoundary<deal_II_dimension>;
-template class ConeBoundary<deal_II_dimension>;
-template class HyperBallBoundary<deal_II_dimension>;
-template class HalfHyperBallBoundary<deal_II_dimension>;
-template class HyperShellBoundary<deal_II_dimension>;
-template class HalfHyperShellBoundary<deal_II_dimension>;
-
-#if deal_II_dimension != 3
-template class HyperBallBoundary<deal_II_dimension,deal_II_dimension+1>;
-#endif
+#include "tria_boundary_lib.inst"
 
 DEAL_II_NAMESPACE_CLOSE
 
diff --git a/deal.II/source/grid/tria_boundary_lib.inst.in b/deal.II/source/grid/tria_boundary_lib.inst.in
new file mode 100644 (file)
index 0000000..79b58d4
--- /dev/null
@@ -0,0 +1,28 @@
+//---------------------------------------------------------------------------
+//    $Id$
+//    Version: $Name$
+//
+//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010 by the deal.II authors
+//
+//    This file is subject to QPL and may not be  distributed
+//    without copyright and license information. Please refer
+//    to the file deal.II/doc/license.html for the  text  and
+//    further information on this license.
+//
+//---------------------------------------------------------------------------
+
+for (deal_II_dimension : DIMENSIONS)
+  {
+    template class CylinderBoundary<deal_II_dimension>;
+    template class ConeBoundary<deal_II_dimension>;
+    template class HyperBallBoundary<deal_II_dimension>;
+    template class HalfHyperBallBoundary<deal_II_dimension>;
+    template class HyperShellBoundary<deal_II_dimension>;
+    template class HalfHyperShellBoundary<deal_II_dimension>;
+
+#if deal_II_dimension != 3
+    template class HyperBallBoundary<deal_II_dimension,deal_II_dimension+1>;
+#endif
+  }
+
+
similarity index 86%
rename from deal.II/source/grid/tria_faces.cc
rename to deal.II/source/grid/tria_faces.all_dimensions.cc
index f86469b22443d458d5a821c5eee85e54c601bb9c..45d7cc0108d1603146688e58f5144fc5abe05595 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 2006 by the deal.II authors
+//    Copyright (C) 2006, 2010 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -22,17 +22,12 @@ namespace internal
   namespace Triangulation
   {
 
-#if deal_II_dimension == 1
-
     unsigned int
     TriaFaces<1>::memory_consumption () const
     {
       return 0;
     }
 
-#endif
-
-#if deal_II_dimension == 2
 
     unsigned int
     TriaFaces<2>::memory_consumption () const
@@ -40,9 +35,6 @@ namespace internal
       return MemoryConsumption::memory_consumption (lines);
     }
 
-#endif
-
-#if deal_II_dimension == 3
 
     unsigned int
     TriaFaces<3>::memory_consumption () const
@@ -50,9 +42,6 @@ namespace internal
       return (MemoryConsumption::memory_consumption (quads) +
              MemoryConsumption::memory_consumption (lines) );
     }
-
-#endif
-
   }
 }
 

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.