Clarify doAddNodes flag, and change example to the common case
authorOrion Lawlor <olawlor@acm.org>
Thu, 9 Sep 2004 23:10:52 +0000 (23:10 +0000)
committerOrion Lawlor <olawlor@acm.org>
Thu, 9 Sep 2004 23:10:52 +0000 (23:10 +0000)
of *adding* nodes.  doAddNodes probably shouldn't even exist;
but since it does, the default should be sensible.

doc/fem/mesh.tex

index 770b8107901e1bde08c190ae5848f47b2e36ea83..027485cdcb24dd182b05aba2e1dfc93b9a5a365c 100644 (file)
@@ -783,7 +783,7 @@ The framework's ghost handling is element-centric. You specify which kinds of el
 \function{void FEM\_Add\_ghost\_layer(int nodesPerFace,int doAddNodes);}
 \function{SUBROUTINE FEM\_Add\_ghost\_layer(nodesPerFace,doAddNodes)}
   \args{INTEGER, INTENT(IN) :: nodesPerFace,doAddNodes}
-This routine creates a new layer of ghosts around each FEM chunk. \kw{nodesPerFace} is the number of shared nodes that together form a ``face''. \kw{doAddNodes} specifies that you want ghost nodes as well as elements.
+This routine creates a new layer of ghosts around each FEM chunk. \kw{nodesPerFace} is the number of shared nodes that together form a ``face''. \kw{doAddNodes} specifies that you want ghost nodes around your ghost elements.  If \kw{doAddNodes} is 0, ghost elements will have invalid -1 (in C) or 0 (in Fortran) connectivity entries where there is no corresponding local node.
 
 A face is an unordered ``tuple'' of nodes, and is an abstract way to describe which ghosts
 your application needs---an element will be added to your chunk if it connects to at 
@@ -815,14 +815,14 @@ a simple way to add ghosts from two kinds of faces at once.
 
 The above two routines are always used together. For example, if your elements are 3-node triangles and you only require one shared node for inclusion in a single ghost layer, you would use:
 \begin{alltt}
-   FEM\_Add\_ghost\_layer(1,0); /* 1 node per face: node adjacency */
+   FEM\_Add\_ghost\_layer(1,1); /* 1 node per face: node adjacency */
    const static int tri2node[]=\{0,1,2\};
    FEM\_Add\_ghost\_elem(0,3,tri2node); /* triangles are surrounded by 3 nodes */
 \end{alltt}
 
 If you require two shared nodes (a shared edge), the code will look like:
 \begin{alltt}    
-   FEM\_Add\_ghost\_layer(2,0); /* 2 nodes per face: edge adjacency */
+   FEM\_Add\_ghost\_layer(2,1); /* 2 nodes per face: edge adjacency */
    const static int tri2edge[]=\{0,1,  1,2,  2,0\};
    FEM\_Add\_ghost\_elem(0,3,tri2edge); /*triangles are surrounded by 3 edges */
 \end{alltt}