SCOREC core
Parallel unstructured mesh tools
apfMixedNumbering.h
Go to the documentation of this file.
1 /*
2  * Copyright 2011 Scientific Computation Research Center
3  *
4  * This work is open source software, licensed under the terms of the
5  * BSD license as described in the LICENSE file in the top-level directory.
6  */
7 
8 #ifndef APF_MIXED_NUMBERING_H
9 #define APF_MIXED_NUMBERING_H
10 
16 #include "apf.h"
17 #include <vector>
18 
19 namespace apf {
20 
21 typedef NumberingOf<long> GlobalNumbering;
22 
26 int countDOFs(std::vector<Numbering*> const& n);
27 
31 int countDOFs(std::vector<GlobalNumbering*> const& n);
32 
38  std::vector<Numbering*> const& n,
39  MeshEntity* e,
40  std::vector<int>& numbers);
41 
47  std::vector<GlobalNumbering*> const& n,
48  MeshEntity* e,
49  std::vector<long>& numbers);
50 
56  std::vector<Field*> const& fields,
57  std::vector<Numbering*>& owned);
58 
64  std::vector<Field*> const& fields,
65  std::vector<Numbering*>& ghost);
66 
71  std::vector<Numbering*>& owned,
72  std::vector<GlobalNumbering*>& global,
73  pcu::PCU *PCUObj);
74 
75 }
76 
77 #endif
The APF Field interface.
The Parallel Contrul Unit class encapsulates parallel communication.
Definition: PCU.h:26
All APF symbols are contained in this namespace.
int getElementNumbers(Numbering *n, MeshEntity *e, NewArray< int > &numbers)
returns the node numbers of an element
int numberOwned(std::vector< Field * > const &fields, std::vector< Numbering * > &owned)
Number the owned nodes of multiple fields.
NumberingOf< long > GlobalNumbering
Global numberings use 64-bit integers.
Definition: apfMesh.h:31
GlobalNumbering * makeGlobal(Numbering *n, bool destroy=true)
converts a local numbering into a global numbering.
int numberGhost(std::vector< Field * > const &fields, std::vector< Numbering * > &ghost)
Number the ghost (overlapped/shared) nodes of multiple fields.
int countDOFs(std::vector< Numbering * > const &n)
Count the total numbered degrees of freedom.