]> https://gitweb.dealii.org/ - dealii-svn.git/commitdiff
Add a comment
authorbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 19 Jan 2007 20:28:50 +0000 (20:28 +0000)
committerbangerth <bangerth@0785d39b-7218-0410-832d-ea1e28bc413d>
Fri, 19 Jan 2007 20:28:50 +0000 (20:28 +0000)
git-svn-id: https://svn.dealii.org/trunk@14350 0785d39b-7218-0410-832d-ea1e28bc413d

deal.II/deal.II/include/dofs/dof_accessor.templates.h
deal.II/deal.II/source/dofs/dof_accessor.cc

index 124e2f9065ff46d756df08f31f44bc3510a2c994..612dd8e571930525963eb242f80b23d96098a5bc 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 by the deal.II authors
+//    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -588,6 +588,18 @@ DoFObjectAccessor<3,DH>::get_dof_indices (std::vector<unsigned int> &dof_indices
   for (unsigned int line=0; line<12; ++line)
     for (unsigned int d=0; d<dofs_per_line; ++d)
       *next++ = this->line(line)->dof_index(d,fe_index);
+  
+                                  // now copy dof numbers from the face. for
+                                  // faces with the wrong orientation, we
+                                  // have already made sure that we're ok by
+                                  // picking the correct lines and vertices
+                                  // (this happens automatically in the
+                                  // line() and vertex() functions. however,
+                                  // if the face is in wrong orientation, we
+                                  // look at it in flipped orientation and we
+                                  // will have to adjust the shape function
+                                  // indices that we see to correspond to the
+                                  // correct (cell-local) ordering.
   for (unsigned int quad=0; quad<6; ++quad)
     if (this->face_orientation(quad))
       for (unsigned int d=0; d<dofs_per_quad; ++d)
index 13043e4642fe1c4eac924628a0abc08cd6ad4381..78ad32b9693c9426c5d94e2083654feb6da9493e 100644 (file)
@@ -2,7 +2,7 @@
 //    $Id$
 //    Version: $Name$
 //
-//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 by the deal.II authors
+//    Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 by the deal.II authors
 //
 //    This file is subject to QPL and may not be  distributed
 //    without copyright and license information. Please refer
@@ -252,6 +252,18 @@ DoFCellAccessor<DoFHandler<3> >::update_cell_dof_indices_cache () const
   for (unsigned int line=0; line<12; ++line)
     for (unsigned int d=0; d<dofs_per_line; ++d)
       *next++ = this->line(line)->dof_index(d);
+
+                                  // now copy dof numbers from the face. for
+                                  // faces with the wrong orientation, we
+                                  // have already made sure that we're ok by
+                                  // picking the correct lines and vertices
+                                  // (this happens automatically in the
+                                  // line() and vertex() functions. however,
+                                  // if the face is in wrong orientation, we
+                                  // look at it in flipped orientation and we
+                                  // will have to adjust the shape function
+                                  // indices that we see to correspond to the
+                                  // correct (cell-local) ordering.
   for (unsigned int quad=0; quad<6; ++quad)
     if (this->face_orientation(quad))
       for (unsigned int d=0; d<dofs_per_quad; ++d)

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.