fixed writing out entries in advective bc
[OpenFOAM-1.6-ext.git] / src / tetDecompositionFiniteElement / elementMesh / elementMesh.H
blob2f814d28ec5ac8b9b7c0fa7c8c438a324dfc936a
1 /*---------------------------------------------------------------------------*\
2   =========                 |
3   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
4    \\    /   O peration     |
5     \\  /    A nd           | Copyright held by original author
6      \\/     M anipulation  |
7 -------------------------------------------------------------------------------
8 License
9     This file is part of OpenFOAM.
11     OpenFOAM is free software; you can redistribute it and/or modify it
12     under the terms of the GNU General Public License as published by the
13     Free Software Foundation; either version 2 of the License, or (at your
14     option) any later version.
16     OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
19     for more details.
21     You should have received a copy of the GNU General Public License
22     along with OpenFOAM; if not, write to the Free Software Foundation,
23     Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
25 Class
26     elementMesh
28 Description
29     Mesh data needed to do the Finite Element discretisation.
30     Element-based fields.
32     In this setup, the finite element is considered to be the complete cell
33     and the decomposition into tets is done just as an auxiliary tool.
34     Therefore, all element-based fields are defined "per polyhedron" rather
35     that per-tet.  
37 \*---------------------------------------------------------------------------*/
39 #ifndef elementMesh_H
40 #define elementMesh_H
42 #include "GeoMesh.H"
43 #include "tetPolyMesh.H"
44 #include "tetPolyBoundaryMesh.H"
46 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
48 namespace Foam
51 /*---------------------------------------------------------------------------*\
52                            Class elementMesh Declaration
53 \*---------------------------------------------------------------------------*/
55 class elementMesh
57     public GeoMesh<tetPolyMesh>
59 public:
61     // Constructors
63         //- Construct from tetPolyMesh
64         elementMesh(const tetPolyMesh& mesh)
65         :
66             GeoMesh<tetPolyMesh>(mesh)
67         {}
70     // Member Functions
72         //- Return size
73         label size() const
74         {
75             return size(mesh_);
76         }
78         //- Return size
79         static label size(const Mesh& mesh)
80         {
81             return mesh.nCells();
82         }
86 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
88 } // End namespace Foam
90 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
92 #endif
94 // ************************************************************************* //