]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
adjusted fill_fe_face_values for continuous face elements
authorangela.klewinghaus <angela.klewinghaus@0785d39b-7218-0410-832d-ea1e28bc413d>
Mon, 25 Feb 2013 14:39:45 +0000 (14:39 +0000)
committerangela.klewinghaus <angela.klewinghaus@0785d39b-7218-0410-832d-ea1e28bc413d>
Mon, 25 Feb 2013 14:39:45 +0000 (14:39 +0000)
git-svn-id: https://svn.dealii.org/branches/branch_face_elements@28550 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/include/deal.II/fe/fe_poly_face.templates.h
deal.II/source/fe/fe_tools.cc

index 61c6bfdd2d5bfed4377332971559299be72206d3..043ca943bdac6ce4429d96f6e45ebc3ea8823ff5 100644 (file)
@@ -211,14 +211,18 @@ FE_PolyFace<POLY,dim,spacedim>::fill_fe_face_values (
         for (unsigned int k=0; k<this->dofs_per_cell; ++k)
           data.shape_values(k,i) = 0.;
        // Fill data for vertex shape functions
-       
+       if (this->n_dofs_per_vertex() != 0)
+         for (unsigned int lvertex=0; lvertex<GeometryInfo<dim>::vertices_per_face; ++lvertex)
+           data.shape_values(GeometryInfo<dim>::face_to_cell_vertices(face, lvertex),i) = fe_data.shape_values[lvertex][i];
+
+
        // Fill data for line shape functions
 
        // in 3D, this should be a loop over all lines of the face,
        // and the multiplier should not be the face itself
        const unsigned int foffset = this->first_line_index + this->dofs_per_line * face;
 
-        for (unsigned int k=0; k<fe_data.shape_values.size(); ++k)
+        for (unsigned int k=0; k<this->dofs_per_line; ++k)
           data.shape_values(foffset+k,i) = fe_data.shape_values[k+this->first_face_line_index][i];
 
        // Fill data for quad shape functions
index dba1b97ff305accc24f3f01e6efdb5b3f83b2ddd..79fc4159aab2438702ee555eb58b321dbee7c1c2 100644 (file)
@@ -2789,7 +2789,7 @@ namespace FETools
   {
     Assert (h2l.size() == fe.dofs_per_cell,
             ExcDimensionMismatch (h2l.size(), fe.dofs_per_cell));
-    hierarchic_to_lexicographic_numbering (h21, fe.dofs_per_line+1);
+    hierarchic_to_lexicographic_numbering<dim> (fe.dofs_per_line+1, h2l);
   }
 
 
@@ -2800,7 +2800,7 @@ namespace FETools
   {
     Assert (fe.n_components() == 1, ExcInvalidFE());
     std::vector<unsigned int> h2l(fe.dofs_per_cell);
-    hierarchic_to_lexicographic_numbering (h2l, fe.dofs_per_line+1);
+    hierarchic_to_lexicographic_numbering<dim> (fe.dofs_per_line+1, h2l);
     return (h2l);
   }
 

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.