]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Revert changes back to r22586.
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 2 Nov 2010 22:58:19 +0000 (22:58 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Tue, 2 Nov 2010 22:58:19 +0000 (22:58 +0000)
git-svn-id: https://svn.dealii.org/trunk@22591 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/doc/news/changes.h
deal.II/include/deal.II/fe/mapping.h
deal.II/include/deal.II/hp/fe_values.h
deal.II/include/deal.II/numerics/vectors.templates.h
deal.II/source/fe/fe_values.cc
deal.II/source/hp/fe_values.cc
deal.II/source/numerics/vectors.cc

index c6e2146b5811ad594f4add4da9252971c7e23cf0..ea5e92646e51d32d578890d52877c20a0dd082f0 100644 (file)
@@ -332,15 +332,6 @@ through DoFHandler::get_tria() and DoFHandler::get_fe(), respectively.
 <h3>deal.II</h3>
 
 <ol>
-  <li><p>New: The class hp::FEFaceValues and hp::FESubfaceValues were not
-  previously available for meshes that were embedded in a higher
-  dimensional space (i.e. if the codimension was greater than 1). This is
-  now fixed. As a consequence, the VectorTools::interpolate_boundary_values
-  function is now also available for such meshes.
-  <br>
-  (WB, 2010/11/02)
-  </p></li>
-
   <li><p>Fixed: The FEValuesExtractors::Vector class did not work when the dimension
   of the domain was not equal to the dimension of the space in which it is
   embedded. This is now fixed.
index e833a04dceb226058345f6615ec2f11a816c457b..4cc31d3ecc815132c18234dbfba1f082009b6555 100644 (file)
@@ -126,7 +126,7 @@ enum MappingType
  *
  * A hint to implementators: no function except the two functions
  * @p update_once and @p update_each may add any flags.
- *
+ * 
  * For more information about the <tt>spacedim</tt> template parameter
  * check the documentation of FiniteElement or the one of
  * Triangulation.
@@ -138,12 +138,12 @@ template <int dim, int spacedim=dim>
 class Mapping : public Subscriptor
 {
   public:
-
+    
                                     /**
                                      * Virtual destructor.
                                      */
     virtual ~Mapping ();
-
+    
                                     /**
                                      * Transforms the point @p p on
                                      * the unit cell to the point
@@ -154,7 +154,7 @@ class Mapping : public Subscriptor
     transform_unit_to_real_cell (
       const typename Triangulation<dim,spacedim>::cell_iterator &cell,
       const Point<dim>                                 &p) const = 0;
-
+    
                                     /**
                                      * Transforms the point @p p on
                                      * the real cell to the point
@@ -165,7 +165,7 @@ class Mapping : public Subscriptor
     transform_real_to_unit_cell (
       const typename Triangulation<dim,spacedim>::cell_iterator &cell,
       const Point<spacedim>                            &p) const = 0;
-
+    
                                     /**
                                      * Base class for internal data
                                      * of finite element and mapping
@@ -219,7 +219,7 @@ class Mapping : public Subscriptor
                                          * @p first_cell to @p true.
                                          */
         InternalDataBase ();
-
+       
                                         /**
                                          * Virtual destructor for
                                          * derived classes
@@ -231,7 +231,7 @@ class Mapping : public Subscriptor
                                          * by reinit.
                                          */
        UpdateFlags          update_flags;
-
+       
                                         /**
                                          * Values computed by
                                          * constructor.
@@ -286,7 +286,7 @@ class Mapping : public Subscriptor
                                           * the first cell.
                                           */
         virtual void clear_first_cell ();
-
+        
                                         /**
                                          * Return an estimate (in
                                          * bytes) or the memory
@@ -302,14 +302,14 @@ class Mapping : public Subscriptor
                                          * if #update_volume_elements.
                                          */
        std::vector<double> volume_elements;
-
+       
                                         /**
                                          * The positions of the
                                          * mapped (generalized)
                                          * support points.
                                          */
        std::vector<Point<spacedim> > support_point_values;
-
+       
                                         /*
                                          * The Jacobian of the
                                          * transformation in the
@@ -317,7 +317,7 @@ class Mapping : public Subscriptor
                                          * points.
                                          */
        std::vector<Tensor<2,spacedim> > support_point_gradients;
-
+       
                                         /*
                                          * The inverse of the
                                          * Jacobian of the
@@ -326,8 +326,8 @@ class Mapping : public Subscriptor
                                          * points.
                                          */
        std::vector<Tensor<2,spacedim> > support_point_inverse_gradients;
-
-
+       
+       
       private:
                                          /**
                                           * The value returned by
@@ -335,7 +335,7 @@ class Mapping : public Subscriptor
                                           */
         bool first_cell;
     };
-
+    
                                      /**
                                       * Transform a field of
                                       * vectors accorsing to
@@ -360,7 +360,7 @@ class Mapping : public Subscriptor
                VectorSlice<std::vector<Tensor<2,spacedim> > >             output,
                const InternalDataBase &internal,
                const MappingType type) const = 0;
-
+    
                                     /**
                                      * @deprecated Use transform() instead.
                                      */
@@ -391,7 +391,7 @@ class Mapping : public Subscriptor
                                      /**
                                      * @deprecated Use transform() instead.
                                       */
-
+    
     void
     transform_contravariant (const VectorSlice<const std::vector<Tensor<2,dim> > > intput,
                              const unsigned int                 offset,
@@ -405,7 +405,7 @@ class Mapping : public Subscriptor
     const Point<spacedim>& support_point_value(
       const unsigned int index,
       const typename Mapping<dim,spacedim>::InternalDataBase &internal) const;
-
+    
                                     /**
                                      * The Jacobian
                                      * matrix of the transformation
@@ -415,7 +415,7 @@ class Mapping : public Subscriptor
     const Tensor<2,spacedim>& support_point_gradient(
       const unsigned int index,
       const typename Mapping<dim,spacedim>::InternalDataBase &internal) const;
-
+    
                                     /**
                                      * The inverse Jacobian
                                      * matrix of the transformation
@@ -425,7 +425,7 @@ class Mapping : public Subscriptor
     const Tensor<2,spacedim>& support_point_inverse_gradient(
       const unsigned int index,
       const typename Mapping<dim,spacedim>::InternalDataBase &internal) const;
-
+    
                                      /**
                                       * Return a pointer to a copy of the
                                       * present object. The caller of this
@@ -441,7 +441,7 @@ class Mapping : public Subscriptor
                                       */
     virtual
     Mapping<dim,spacedim> * clone () const = 0;
-
+    
                                     /**
                                      * Returns whether the mapping preserves
                                      * vertex locations, i.e. whether the
@@ -466,7 +466,7 @@ class Mapping : public Subscriptor
     DeclException0 (ExcInvalidData);
 
   private:
-
+    
                                     /**
                                      * Indicate fields to be updated
                                      * in the constructor of
@@ -479,7 +479,7 @@ class Mapping : public Subscriptor
                                      * See @ref UpdateFlagsEssay.
                                      */
     virtual UpdateFlags update_once (const UpdateFlags) const = 0;
-
+    
                                     /**
                                      * The same as update_once(),
                                      * but for the flags to be updated for
@@ -507,7 +507,7 @@ class Mapping : public Subscriptor
     virtual InternalDataBase*
     get_face_data (const UpdateFlags flags,
                   const Quadrature<dim-1>& quadrature) const = 0;
-
+    
                                     /**
                                      * Prepare internal data
                                      * structure for transformation
@@ -601,7 +601,7 @@ class Mapping : public Subscriptor
                         const unsigned int                                        face_no,
                         const Quadrature<dim-1>                                   &quadrature,
                         InternalDataBase                                          &internal,
-                        std::vector<Point<spacedim> >                             &quadrature_points,
+                        std::vector<Point<dim> >                                  &quadrature_points,
                         std::vector<double>                                       &JxW_values,
                         std::vector<Tensor<1,dim> >                               &boundary_form,
                         std::vector<Point<spacedim> >                             &normal_vectors) const = 0;
@@ -615,7 +615,7 @@ class Mapping : public Subscriptor
                            const unsigned int                        sub_no,
                            const Quadrature<dim-1>                  &quadrature,
                            InternalDataBase                         &internal,
-                           std::vector<Point<spacedim> >        &quadrature_points,
+                           std::vector<Point<dim> >        &quadrature_points,
                            std::vector<double>                      &JxW_values,
                            std::vector<Tensor<1,dim> >     &boundary_form,
                            std::vector<Point<spacedim> >        &normal_vectors) const = 0;
@@ -682,7 +682,7 @@ Mapping<dim,spacedim>::support_point_value(
   const typename Mapping<dim,spacedim>::InternalDataBase& internal) const
 {
   AssertIndexRange(index, internal.support_point_values.size());
-  return internal.support_point_values[index];
+  return internal.support_point_values[index];  
 }
 
 
index 308f9946b0d0c090b1ff58fdded7554c730e4263..f39cbc0874ef0595fb1ff37b5c21f94a28d3548d 100644 (file)
@@ -546,8 +546,8 @@ namespace hp
  * @ingroup hp hpcollection
  * @author Wolfgang Bangerth, 2003
  */
-  template <int dim, int spacedim=dim>
-  class FEFaceValues : public internal::hp::FEValuesBase<dim,dim-1,dealii::FEFaceValues<dim,spacedim> >
+  template <int dim>
+  class FEFaceValues : public internal::hp::FEValuesBase<dim,dim-1,dealii::FEFaceValues<dim> >
   {
     public:
                                        /**
@@ -570,8 +570,8 @@ namespace hp
                                         * <tt>DoFHandler::get_fe()</tt>
                                         * function.
                                         */
-      FEFaceValues (const hp::MappingCollection<dim,spacedim> &mapping_collection,
-                    const hp::FECollection<dim,spacedim>  &fe_collection,
+      FEFaceValues (const hp::MappingCollection<dim> &mapping_collection,
+                    const hp::FECollection<dim>  &fe_collection,
                     const hp::QCollection<dim-1>     &q_collection,
                     const UpdateFlags             update_flags);
 
@@ -598,7 +598,7 @@ namespace hp
                                         * <tt>DoFHandler::get_fe()</tt>
                                         * function.
                                         */
-      FEFaceValues (const hp::FECollection<dim,spacedim>  &fe_collection,
+      FEFaceValues (const hp::FECollection<dim>  &fe_collection,
                     const hp::QCollection<dim-1> &q_collection,
                     const UpdateFlags             update_flags);
 
@@ -702,7 +702,7 @@ namespace hp
                                         * this argument is specified.
                                         */
       void
-      reinit (const typename hp::DoFHandler<dim,spacedim>::cell_iterator &cell,
+      reinit (const typename hp::DoFHandler<dim>::cell_iterator &cell,
               const unsigned int face_no,
               const unsigned int q_index = numbers::invalid_unsigned_int,
               const unsigned int mapping_index = numbers::invalid_unsigned_int,
@@ -738,7 +738,7 @@ namespace hp
                                         * these last three arguments.
                                         */
       void
-      reinit (const typename dealii::DoFHandler<dim,spacedim>::cell_iterator &cell,
+      reinit (const typename dealii::DoFHandler<dim>::cell_iterator &cell,
               const unsigned int face_no,
               const unsigned int q_index = numbers::invalid_unsigned_int,
               const unsigned int mapping_index = numbers::invalid_unsigned_int,
@@ -774,7 +774,7 @@ namespace hp
                                         * these last three arguments.
                                         */
       void
-      reinit (const typename MGDoFHandler<dim,spacedim>::cell_iterator &cell,
+      reinit (const typename MGDoFHandler<dim>::cell_iterator &cell,
               const unsigned int face_no,
               const unsigned int q_index = numbers::invalid_unsigned_int,
               const unsigned int mapping_index = numbers::invalid_unsigned_int,
@@ -811,7 +811,7 @@ namespace hp
                                         * three arguments.
                                         */
       void
-      reinit (const typename Triangulation<dim,spacedim>::cell_iterator &cell,
+      reinit (const typename Triangulation<dim>::cell_iterator &cell,
               const unsigned int face_no,
               const unsigned int q_index = numbers::invalid_unsigned_int,
               const unsigned int mapping_index = numbers::invalid_unsigned_int,
@@ -827,8 +827,8 @@ namespace hp
  * @ingroup hp hpcollection
  * @author Wolfgang Bangerth, 2003
  */
-  template <int dim, int spacedim=dim>
-  class FESubfaceValues : public internal::hp::FEValuesBase<dim,dim-1,dealii::FESubfaceValues<dim,spacedim> >
+  template <int dim>
+  class FESubfaceValues : public internal::hp::FEValuesBase<dim,dim-1,dealii::FESubfaceValues<dim> >
   {
     public:
                                        /**
@@ -851,8 +851,8 @@ namespace hp
                                         * <tt>DoFHandler::get_fe()</tt>
                                         * function.
                                         */
-      FESubfaceValues (const hp::MappingCollection<dim,spacedim> &mapping_collection,
-                       const hp::FECollection<dim,spacedim>  &fe_collection,
+      FESubfaceValues (const hp::MappingCollection<dim> &mapping_collection,
+                       const hp::FECollection<dim>  &fe_collection,
                        const hp::QCollection<dim-1>     &q_collection,
                        const UpdateFlags             update_flags);
 
@@ -879,7 +879,7 @@ namespace hp
                                         * <tt>DoFHandler::get_fe()</tt>
                                         * function.
                                         */
-      FESubfaceValues (const hp::FECollection<dim,spacedim> &fe_collection,
+      FESubfaceValues (const hp::FECollection<dim> &fe_collection,
                        const hp::QCollection<dim-1>    &q_collection,
                        const UpdateFlags            update_flags);
 
@@ -962,7 +962,7 @@ namespace hp
                                         * this argument is specified.
                                         */
       void
-      reinit (const typename hp::DoFHandler<dim,spacedim>::cell_iterator &cell,
+      reinit (const typename hp::DoFHandler<dim>::cell_iterator &cell,
               const unsigned int face_no,
               const unsigned int subface_no,
               const unsigned int q_index = numbers::invalid_unsigned_int,
@@ -999,7 +999,7 @@ namespace hp
                                         * these last three arguments.
                                         */
       void
-      reinit (const typename dealii::DoFHandler<dim,spacedim>::cell_iterator &cell,
+      reinit (const typename dealii::DoFHandler<dim>::cell_iterator &cell,
               const unsigned int face_no,
               const unsigned int subface_no,
               const unsigned int q_index = numbers::invalid_unsigned_int,
@@ -1036,7 +1036,7 @@ namespace hp
                                         * these last three arguments.
                                         */
       void
-      reinit (const typename MGDoFHandler<dim,spacedim>::cell_iterator &cell,
+      reinit (const typename MGDoFHandler<dim>::cell_iterator &cell,
               const unsigned int face_no,
               const unsigned int subface_no,
               const unsigned int q_index = numbers::invalid_unsigned_int,
@@ -1074,7 +1074,7 @@ namespace hp
                                         * three arguments.
                                         */
       void
-      reinit (const typename Triangulation<dim,spacedim>::cell_iterator &cell,
+      reinit (const typename Triangulation<dim>::cell_iterator &cell,
               const unsigned int face_no,
               const unsigned int subface_no,
               const unsigned int q_index = numbers::invalid_unsigned_int,
index b27f75adf4f685d47da4523caeb7c70c630eaf01..e0494237be9a9b360329dc8ebcee6061d51344c6 100644 (file)
@@ -1353,7 +1353,6 @@ interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension>
                              const std::vector<bool>       &component_mask_)
 {
   const unsigned int dim=DH::dimension;
-  const unsigned int spacedim=DH::space_dimension;
 
   Assert ((component_mask_.size() == 0) ||
          (component_mask_.size() == dof.get_fe().n_components()),
@@ -1374,7 +1373,7 @@ interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension>
   const unsigned int        n_components = DoFTools::n_components(dof);
   const bool                fe_is_system = (n_components != 1);
 
-  for (typename FunctionMap<spacedim>::type::const_iterator i=function_map.begin();
+  for (typename FunctionMap<DH::space_dimension>::type::const_iterator i=function_map.begin();
        i!=function_map.end(); ++i)
     Assert (n_components == i->second->n_components,
            ExcDimensionMismatch(n_components, i->second->n_components));
@@ -1392,7 +1391,7 @@ interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension>
   std::vector<unsigned int> face_dofs;
   face_dofs.reserve (DoFTools::max_dofs_per_face(dof));
 
-  std::vector<Point<spacedim> >  dof_locations;
+  std::vector<Point<DH::space_dimension> >  dof_locations;
   dof_locations.reserve (DoFTools::max_dofs_per_face(dof));
 
                                   // array to store the values of
@@ -1412,11 +1411,11 @@ interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension>
                                   // the interpolation points of all
                                   // finite elements that may ever be
                                   // in use
-  hp::FECollection<dim,spacedim> finite_elements (dof.get_fe());
+  hp::FECollection<dim> finite_elements (dof.get_fe());
   hp::QCollection<dim-1>  q_collection;
   for (unsigned int f=0; f<finite_elements.size(); ++f)
     {
-      const FiniteElement<dim,spacedim> &fe = finite_elements[f];
+      const FiniteElement<dim> &fe = finite_elements[f];
 
                                       // generate a quadrature rule
                                       // on the face from the unit
@@ -1484,9 +1483,9 @@ interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension>
                                   // hp::FEFaceValues object that we
                                   // can use to evaluate the boundary
                                   // values at
-  hp::MappingCollection<dim,spacedim> mapping_collection (mapping);
-  hp::FEFaceValues<dim,spacedim> x_fe_values (mapping_collection, finite_elements, q_collection,
-                                             update_quadrature_points);
+  hp::MappingCollection<dim> mapping_collection (mapping);
+  hp::FEFaceValues<dim> x_fe_values (mapping_collection, finite_elements, q_collection,
+                                    update_quadrature_points);
 
   typename DH::active_cell_iterator cell = dof.begin_active(),
                                    endc = dof.end();
@@ -1495,7 +1494,7 @@ interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension>
       for (unsigned int face_no = 0; face_no < GeometryInfo<dim>::faces_per_cell;
           ++face_no)
        {
-         const FiniteElement<dim,spacedim> &fe = cell->get_fe();
+         const FiniteElement<dim,DH::space_dimension> &fe = cell->get_fe();
 
                                           // we can presently deal only with
                                           // primitive elements for boundary
@@ -1527,14 +1526,14 @@ interpolate_boundary_values (const Mapping<DH::dimension, DH::space_dimension>
            {
                                               // face is of the right component
              x_fe_values.reinit(cell, face_no);
-             const FEFaceValues<dim,spacedim> &fe_values = x_fe_values.get_present_fe_values();
+             const FEFaceValues<dim> &fe_values = x_fe_values.get_present_fe_values();
 
                                               // get indices, physical location and
                                               // boundary values of dofs on this
                                               // face
              face_dofs.resize (fe.dofs_per_face);
              face->get_dof_indices (face_dofs, cell->active_fe_index());
-             const std::vector<Point<spacedim> > &dof_locations
+             const std::vector<Point<DH::space_dimension> > &dof_locations
                = fe_values.get_quadrature_points ();
 
              if (fe_is_system)
@@ -1998,7 +1997,7 @@ VectorTools::project_boundary_values (const Mapping<dim, spacedim>       &mappin
     && ! excluded_dofs[dof_to_boundary_mapping[i]])
       {
        Assert(numbers::is_finite(boundary_projection(dof_to_boundary_mapping[i])), ExcNumberNotFinite());
-
+       
                                       // this dof is on one of the
                                       // interesting boundary parts
                                       //
index a041ebd390900cec314ba7d4da60b23a8637bd4a..e89b8a4911bddadf4130feeebbaf8b8b144d0b46 100644 (file)
@@ -3607,7 +3607,7 @@ FEFaceValues<dim,spacedim>::FEFaceValues (const FiniteElement<dim,spacedim> &fe,
                FEFaceValuesBase<dim,spacedim> (quadrature.size(),
                                                fe.dofs_per_cell,
                                                update_flags,
-                                               StaticMappingQ1<dim,spacedim>::mapping,
+                                               StaticMappingQ1<dim>::mapping,
                                                fe, quadrature)
 {
   Assert (DEAL_II_COMPAT_MAPPING, ExcCompatibility("mapping"));
@@ -4158,14 +4158,14 @@ template class FEValuesBase<deal_II_dimension,deal_II_dimension+1>;
 template class FEValues<deal_II_dimension,deal_II_dimension+1>;
 template class FEValuesBase<deal_II_dimension,deal_II_dimension+1>::
 CellIterator<DoFHandler<deal_II_dimension,deal_II_dimension+1>::cell_iterator>;
-template class FEValuesBase<deal_II_dimension,deal_II_dimension+1>::
- CellIterator<MGDoFHandler<deal_II_dimension,deal_II_dimension+1>::cell_iterator>;
-
-#if deal_II_dimension == 2
-template class FEFaceValuesBase<deal_II_dimension,deal_II_dimension+1>;
-template class FEFaceValues<deal_II_dimension,deal_II_dimension+1>;
-template class FESubfaceValues<deal_II_dimension,deal_II_dimension+1>;
-#endif
+//template class FEValuesBase<deal_II_dimension,deal_II_dimension+1>::
+//  CellIterator<MGDoFHandler<deal_II_dimension,deal_II_dimension+1>::cell_iterator>;
+
+// #if deal_II_dimension == 2
+// template class FEFaceValuesBase<deal_II_dimension,deal_II_dimension+1>;
+// template class FEFaceValues<deal_II_dimension,deal_II_dimension+1>;
+// template class FESubfaceValues<deal_II_dimension,deal_II_dimension+1>;
+// #endif
 #endif
 
 
index 372d4b97c0fd6fd28465c474baf4c70a923fc606..c4b67767e9a77ff16a6ebd5b85bc52eabfc636eb 100644 (file)
@@ -309,33 +309,33 @@ namespace hp
 // -------------------------- FEFaceValues -------------------------
 
 
-  template <int dim, int spacedim>
-  FEFaceValues<dim,spacedim>::FEFaceValues (const hp::MappingCollection<dim,spacedim> &mapping,
-                                   const hp::FECollection<dim,spacedim>  &fe_collection,
+  template <int dim>
+  FEFaceValues<dim>::FEFaceValues (const hp::MappingCollection<dim> &mapping,
+                                   const hp::FECollection<dim>  &fe_collection,
                                    const hp::QCollection<dim-1> &q_collection,
                                    const UpdateFlags         update_flags)
                   :
-                  internal::hp::FEValuesBase<dim,dim-1,dealii::FEFaceValues<dim,spacedim> > (mapping,
+                  internal::hp::FEValuesBase<dim,dim-1,dealii::FEFaceValues<dim> > (mapping,
                                                                              fe_collection,
                                                                              q_collection,
                                                                              update_flags)
   {}
 
 
-  template <int dim, int spacedim>
-  FEFaceValues<dim,spacedim>::FEFaceValues (const hp::FECollection<dim,spacedim>  &fe_collection,
+  template <int dim>
+  FEFaceValues<dim>::FEFaceValues (const hp::FECollection<dim>  &fe_collection,
                                    const hp::QCollection<dim-1> &q_collection,
                                    const UpdateFlags         update_flags)
                   :
-                  internal::hp::FEValuesBase<dim,dim-1,dealii::FEFaceValues<dim,spacedim> > (fe_collection,
+                  internal::hp::FEValuesBase<dim,dim-1,dealii::FEFaceValues<dim> > (fe_collection,
                                                                              q_collection,
                                                                              update_flags)
   {}
 
 
-  template <int dim, int spacedim>
+  template <int dim>
   void
-  FEFaceValues<dim,spacedim>::reinit (const typename hp::DoFHandler<dim,spacedim>::cell_iterator &cell,
+  FEFaceValues<dim>::reinit (const typename hp::DoFHandler<dim>::cell_iterator &cell,
                              const unsigned int face_no,
                              const unsigned int q_index,
                              const unsigned int mapping_index,
@@ -384,9 +384,9 @@ namespace hp
 
 
 
-  template <int dim, int spacedim>
+  template <int dim>
   void
-  FEFaceValues<dim,spacedim>::reinit (const typename dealii::DoFHandler<dim,spacedim>::cell_iterator &cell,
+  FEFaceValues<dim>::reinit (const typename dealii::DoFHandler<dim>::cell_iterator &cell,
                              const unsigned int face_no,
                              const unsigned int q_index,
                              const unsigned int mapping_index,
@@ -425,9 +425,9 @@ namespace hp
 
 
 
-  template <int dim, int spacedim>
+  template <int dim>
   void
-  FEFaceValues<dim,spacedim>::reinit (const typename MGDoFHandler<dim,spacedim>::cell_iterator &cell,
+  FEFaceValues<dim>::reinit (const typename MGDoFHandler<dim>::cell_iterator &cell,
                              const unsigned int face_no,
                              const unsigned int q_index,
                              const unsigned int mapping_index,
@@ -466,9 +466,9 @@ namespace hp
 
 
 
-  template <int dim, int spacedim>
+  template <int dim>
   void
-  FEFaceValues<dim,spacedim>::reinit (const typename Triangulation<dim,spacedim>::cell_iterator &cell,
+  FEFaceValues<dim>::reinit (const typename Triangulation<dim>::cell_iterator &cell,
                              const unsigned int face_no,
                              const unsigned int q_index,
                              const unsigned int mapping_index,
@@ -509,33 +509,33 @@ namespace hp
 // -------------------------- FESubfaceValues -------------------------
 
 
-  template <int dim, int spacedim>
-  FESubfaceValues<dim,spacedim>::FESubfaceValues (const hp::MappingCollection<dim,spacedim> &mapping,
-                                         const hp::FECollection<dim,spacedim>  &fe_collection,
+  template <int dim>
+  FESubfaceValues<dim>::FESubfaceValues (const hp::MappingCollection<dim> &mapping,
+                                         const hp::FECollection<dim>  &fe_collection,
                                          const hp::QCollection<dim-1> &q_collection,
                                          const UpdateFlags         update_flags)
                   :
-                  internal::hp::FEValuesBase<dim,dim-1,dealii::FESubfaceValues<dim,spacedim> > (mapping,
+                  internal::hp::FEValuesBase<dim,dim-1,dealii::FESubfaceValues<dim> > (mapping,
                                                                                 fe_collection,
                                                                                 q_collection,
                                                                                 update_flags)
   {}
 
 
-  template <int dim, int spacedim>
-  FESubfaceValues<dim,spacedim>::FESubfaceValues (const hp::FECollection<dim,spacedim>  &fe_collection,
+  template <int dim>
+  FESubfaceValues<dim>::FESubfaceValues (const hp::FECollection<dim>  &fe_collection,
                                          const hp::QCollection<dim-1> &q_collection,
                                          const UpdateFlags         update_flags)
                   :
-                  internal::hp::FEValuesBase<dim,dim-1,dealii::FESubfaceValues<dim,spacedim> > (fe_collection,
+                  internal::hp::FEValuesBase<dim,dim-1,dealii::FESubfaceValues<dim> > (fe_collection,
                                                                                 q_collection,
                                                                                 update_flags)
   {}
 
 
-  template <int dim, int spacedim>
+  template <int dim>
   void
-  FESubfaceValues<dim,spacedim>::reinit (const typename hp::DoFHandler<dim,spacedim>::cell_iterator &cell,
+  FESubfaceValues<dim>::reinit (const typename hp::DoFHandler<dim>::cell_iterator &cell,
                                 const unsigned int face_no,
                                 const unsigned int subface_no,
                                 const unsigned int q_index,
@@ -585,9 +585,9 @@ namespace hp
 
 
 
-  template <int dim, int spacedim>
+  template <int dim>
   void
-  FESubfaceValues<dim,spacedim>::reinit (const typename dealii::DoFHandler<dim,spacedim>::cell_iterator &cell,
+  FESubfaceValues<dim>::reinit (const typename dealii::DoFHandler<dim>::cell_iterator &cell,
                                 const unsigned int face_no,
                                 const unsigned int subface_no,
                                 const unsigned int q_index,
@@ -627,9 +627,9 @@ namespace hp
 
 
 
-  template <int dim, int spacedim>
+  template <int dim>
   void
-  FESubfaceValues<dim,spacedim>::reinit (const typename MGDoFHandler<dim,spacedim>::cell_iterator &cell,
+  FESubfaceValues<dim>::reinit (const typename MGDoFHandler<dim>::cell_iterator &cell,
                                 const unsigned int face_no,
                                 const unsigned int subface_no,
                                 const unsigned int q_index,
@@ -669,9 +669,9 @@ namespace hp
 
 
 
-  template <int dim, int spacedim>
+  template <int dim>
   void
-  FESubfaceValues<dim,spacedim>::reinit (const typename Triangulation<dim,spacedim>::cell_iterator &cell,
+  FESubfaceValues<dim>::reinit (const typename Triangulation<dim>::cell_iterator &cell,
                                 const unsigned int face_no,
                                 const unsigned int subface_no,
                                 const unsigned int q_index,
@@ -746,12 +746,13 @@ namespace internal
   {
     template class FEValuesBase<deal_II_dimension,deal_II_dimension,
                                 dealii::FEValues<deal_II_dimension,deal_II_dimension+1> >;
-#if deal_II_dimension == 2
-    template class FEValuesBase<deal_II_dimension,deal_II_dimension-1,
-                                dealii::FEFaceValues<deal_II_dimension,deal_II_dimension+1> >;
-    template class FEValuesBase<deal_II_dimension,deal_II_dimension-1,
-                                dealii::FESubfaceValues<deal_II_dimension,deal_II_dimension+1> >;
-#endif
+// not yet implemented:
+// #if deal_II_dimension == 2
+//     template class FEValuesBase<deal_II_dimension,deal_II_dimension-1,
+//                                 dealii::FEFaceValues<deal_II_dimension> >;
+//     template class FEValuesBase<deal_II_dimension,deal_II_dimension-1,
+//                                 dealii::FESubfaceValues<deal_II_dimension> >;
+// #endif
   }
 }
 
@@ -759,10 +760,11 @@ namespace hp
 {
   template class FEValues<deal_II_dimension, deal_II_dimension+1>;
 
-#if deal_II_dimension == 2
-  template class FEFaceValues<deal_II_dimension, deal_II_dimension+1>;
-  template class FESubfaceValues<deal_II_dimension, deal_II_dimension+1>;
-#endif
+// not yet implemented:
+//#if deal_II_dimension == 2
+//   template class FEFaceValues<deal_II_dimension, deal_II_dimension+1>;
+//   template class FESubfaceValues<deal_II_dimension, deal_II_dimension+1>;
+//#endif
 }
 #endif
 
index c30a9f4c51c223d5b76d8590c133443fa4496031..c0bf0b59f7de5c7fbe59a24dfe02da4cd4c91f53 100644 (file)
@@ -206,101 +206,6 @@ void VectorTools::interpolate_boundary_values (
   ConstraintMatrix                    &,
   const std::vector<bool>    &);
 
-#if deal_II_dimension < 3
-template
-void VectorTools::interpolate_boundary_values (
-  const DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const unsigned char,
-  const Function<deal_II_dimension+1>   &,
-  std::map<unsigned int,double>       &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const hp::DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const unsigned char,
-  const Function<deal_II_dimension+1>   &,
-  std::map<unsigned int,double>       &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const MGDoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const unsigned char,
-  const Function<deal_II_dimension+1>   &,
-  std::map<unsigned int,double>       &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const unsigned char,
-  const Function<deal_II_dimension+1>   &,
-  ConstraintMatrix                    &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const hp::DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const unsigned char,
-  const Function<deal_II_dimension+1>   &,
-  ConstraintMatrix                    &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const MGDoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const unsigned char,
-  const Function<deal_II_dimension+1>   &,
-  ConstraintMatrix                    &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const Mapping<deal_II_dimension,deal_II_dimension+1>    &,
-  const DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const FunctionMap<deal_II_dimension+1>::type   &,
-  ConstraintMatrix                    &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const Mapping<deal_II_dimension,deal_II_dimension+1>    &,
-  const hp::DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const FunctionMap<deal_II_dimension+1>::type   &,
-  ConstraintMatrix                    &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const Mapping<deal_II_dimension,deal_II_dimension+1>    &,
-  const MGDoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const FunctionMap<deal_II_dimension+1>::type   &,
-  ConstraintMatrix                    &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const FunctionMap<deal_II_dimension+1>::type   &,
-  ConstraintMatrix                    &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const hp::DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const FunctionMap<deal_II_dimension+1>::type   &,
-  ConstraintMatrix                    &,
-  const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values (
-  const MGDoFHandler<deal_II_dimension,deal_II_dimension+1> &,
-  const FunctionMap<deal_II_dimension+1>::type   &,
-  ConstraintMatrix                    &,
-  const std::vector<bool>    &);
-#endif
-
 template
 void VectorTools::project_boundary_values<deal_II_dimension>
 (const Mapping<deal_II_dimension>     &,
@@ -361,6 +266,22 @@ VectorTools::compute_no_normal_flux_constraints (const DoFHandler<deal_II_dimens
 
 
 
+// // Due to introducing the DoFHandler as a template parameter,
+// // the following instantiations are required in 1d
+// #if deal_II_dimension == 1
+// template
+// void VectorTools::interpolate_boundary_values<deal_II_dimension>
+// (const Mapping<1>         &,
+//  const DoFHandler<1>      &,
+//  const unsigned char,
+//  const Function<1>        &,
+//  std::map<unsigned int,double> &,
+//  const std::vector<bool>       &);
+// #endif
+
+// the following two functions are not derived from a template in 1d
+// and thus need no explicit instantiation
+//#if deal_II_dimension > 1
 template
 void VectorTools::interpolate_boundary_values
 (const Mapping<deal_II_dimension>    &,
@@ -378,24 +299,7 @@ void VectorTools::interpolate_boundary_values
  std::map<unsigned int,double>       &,
  const std::vector<bool>    &);
 
-#if deal_II_dimension < 3
-template
-void VectorTools::interpolate_boundary_values
-(const Mapping<deal_II_dimension,deal_II_dimension+1>    &,
- const DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
- const FunctionMap<deal_II_dimension+1>::type &,
- std::map<unsigned int,double>       &,
- const std::vector<bool>    &);
-
-template
-void VectorTools::interpolate_boundary_values
-(const Mapping<deal_II_dimension,deal_II_dimension+1>    &,
- const DoFHandler<deal_II_dimension,deal_II_dimension+1> &,
- const unsigned char,
- const Function<deal_II_dimension+1>   &,
- std::map<unsigned int,double>       &,
- const std::vector<bool>    &);
-#endif
+//#endif
 
 
 template

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.