gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
CGNSRead.h
Go to the documentation of this file.
1 // Gmsh - Copyright (C) 1997-2022 C. Geuzaine, J.-F. Remacle
2 //
3 // See the LICENSE.txt file in the Gmsh root directory for license information.
4 // Please report all issues on https://gitlab.onelab.info/gmsh/gmsh/issues.
5 //
6 // Contributor(s):
7 // Thomas Toulorge
8 
9 #ifndef CGNS_READ_H
10 #define CGNS_READ_H
11 
12 #include <vector>
13 #include <map>
14 #include "GmshConfig.h"
15 #include "CGNSCommon.h"
16 
17 #if defined(HAVE_LIBCGNS)
18 
19 class GModel;
20 class MVertex;
21 class MElement;
22 class CGNSZone;
23 
24 // types for high-order node tranformation (CPEX0045)
25 typedef std::vector<std::vector<int> > ZoneEltNodeTransfo;
26 typedef std::map<std::string, ZoneEltNodeTransfo> Family2EltNodeTransfo;
27 
28 std::size_t nameIndex(const std::string &name,
29  std::vector<std::string> &allNames);
30 
31 int readScale(int fileIndex, int baseIndex, double &scale);
32 
33 int readEltNodeTransfo(int fileIndex, int baseIndex,
34  Family2EltNodeTransfo &allEltNodeTransfo);
35 
36 int createZones(int fileIndex, int baseIndex, int meshDim,
37  const Family2EltNodeTransfo &allEltNodeTransfo,
38  std::vector<CGNSZone *> &allZones,
39  std::map<std::string, int> &name2Zone, bool &postpro);
40 
41 void setPeriodicityInEntities(const std::vector<CGNSZone *> &allZones);
42 
43 int readPhysicals(int fileIndex, int baseIndex,
44  std::vector<std::string> &allPhysName,
45  std::multimap<std::string, int> &geomName2Phys);
46 
47 void setGeomAndPhysicalEntities(GModel *model, int meshDim,
48  std::vector<std::string> &allGeomName,
49  std::vector<std::string> &allPhysName,
50  std::multimap<std::string, int> &geomName2Phys);
51 
52 #endif // HAVE_LIBCGNS
53 
54 #endif // CGNS_READ_H
MVertex
Definition: MVertex.h:24
GModel
Definition: GModel.h:44
MElement
Definition: MElement.h:30
CGNSCommon.h
scale
static void scale(std::vector< double > &x, double s)
Definition: ConjugateGradients.cpp:21