FreeFOAM The Cross-Platform CFD Toolkit
getFieldTensor.H
Go to the documentation of this file.
2 {
3  return Z_UNDEF;
4 }
5 
6 
7 IOobject fieldObjectPtr
8 (
10  runTime.timeName(),
11  mesh,
12  IOobject::NO_READ
13 );
14 
15 if (!fieldObjectPtr.headerOk())
16 {
17  return Z_UNDEF;
18 }
19 
20 IOobject fieldObject
21 (
22  fieldNames[var2field[nVar]],
23  runTime.timeName(),
24  mesh,
25  IOobject::MUST_READ,
26  IOobject::NO_WRITE
27 );
28 
30 (
32  mesh
33 );
34 
35 const cellShapeList& cellShapes = meshPtr->cellShapes();
36 
37 // hexa's
38 if (which_type == Z_HEX08)
39 {
40  const cellModel& hex = *(cellModeller::lookup("hex"));
41  //const cellModel& wedge = *(cellModeller::lookup("wedge"));
42 
43  label counter = 1;
44  for (label n=0; n<nCells; n++)
45  {
46  const cellShape& cellShape = cellShapes[n];
47  const cellModel& cellModel = cellShape.model();
48 
49  if (cellModel == hex) // || (cellModel == wedge))
50  {
51 # include "tensorConversion.H"
52  }
53  }
54 }
55 
56 // penta's
57 if (which_type == Z_PEN06)
58 {
59  const cellModel& prism = *(cellModeller::lookup("prism"));
60 
61  label counter = 1;
62  for (label n=0; n<nCells; n++)
63  {
64  const cellShape& cellShape = cellShapes[n];
65  const cellModel& cellModel = cellShape.model();
66 
67  if (cellModel == prism)
68  {
69 # include "tensorConversion.H"
70  }
71  }
72 }
73 
74 // pyramids's
75 if (which_type == Z_PYR05)
76 {
77  const cellModel& pyr = *(cellModeller::lookup("pyr"));
78 
79  label counter = 1;
80  for (label n=0; n<nCells; n++)
81  {
82  const cellShape& cellShape = cellShapes[n];
83  const cellModel& cellModel = cellShape.model();
84 
85  if (cellModel == pyr)
86  {
87 # include "tensorConversion.H"
88  }
89  }
90 }
91 
92 
93 // penta's
94 if (which_type == Z_TET04)
95 {
96  const cellModel& tet = *(cellModeller::lookup("tet"));
97 
98  label counter = 1;
99 
100  for (label n=0; n<nCells; n++)
101  {
102  const cellShape& cellShape = cellShapes[n];
103  const cellModel& cellModel = cellShape.model();
104 
105  if (cellModel == tet)
106  {
107 # include "tensorConversion.H"
108  }
109  }
110 }
111 
112 if (which_type == Z_NFACED)
113 {
114  const cellList& cells = meshPtr->cells();
115 
116  label counter = 1;
117  for (label n=0; n<nCells; n++)
118  {
119  const labelList& points = cellShapes[n];
120  label nFacesInCell = cells[n].size();
121 
122  if ((nFacesInCell == 6) && (points.size() == 8))
123  {}
124  else if ((nFacesInCell == 4) && (points.size() == 4))
125  {}
126  else if (nFacesInCell == 5)
127  {
128  if (points.size() == 6)
129  {}
130  else if (points.size() == 5)
131  {}
132  else
133  {
134 # include "tensorConversion.H"
135  }
136  }
137  else
138  {
139 # include "tensorConversion.H"
140  }
141  }
142 }
143 
144 // ************************ vim: set sw=4 sts=4 et: ************************ //