mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
library: * routines for managing cellTable and boundaryRegion * writing ensight files and parts * mesh reader/writer for STARCD utils: * star4ToFoam * foamToStarMesh * foamToEnsightParts
96 lines
2.2 KiB
Plaintext
96 lines
2.2 KiB
Plaintext
With pro-STAR version v4, the input formats have changed radically.
|
|
* Easier to parse space-delimited input formats
|
|
* No arbitrary or integral couples
|
|
* No trimmed or degenerate cells
|
|
* Support for polyhedral cells
|
|
* Boundaries are directly connected to cell and faces
|
|
|
|
Since the boundaries are now connected directly to the faces,
|
|
we now must be concerned with cell face notation otherwise we perform the
|
|
incorrect lookup.
|
|
Fortunately, there are only 4 primitive shapes to be concerned with.
|
|
|
|
Hexa:
|
|
Foam pro-STAR
|
|
~~~~~~~~~~~~~~ ~~~~~~~~~~~
|
|
Face 0 (0 4 7 3) -> F5: (0 4 7 3)
|
|
Face 1 (1 2 6 5) -> F6: (1 2 6 5)
|
|
Face 2 (0 1 5 4) -> F3: (0 1 5 4)
|
|
Face 3 (3 7 6 2) -> F4: (2 3 7 6)
|
|
Face 4 (0 3 2 1) -> F1: (0 3 2 1)
|
|
Face 5 (4 5 6 7) -> F2: (4 5 6 7)
|
|
|
|
|
|
Prism:
|
|
Foam pro-STAR
|
|
~~~~~~~~~~~~~~ ~~~~~~~~~~~
|
|
Face 0 (0 2 1) -> F1: (0 2 1)
|
|
Face 1 (3 4 5) -> F2: (3 4 5)
|
|
Face 2 (0 3 5 2) -> F5: (0 3 5 2)
|
|
Face 3 (1 2 5 4) -> F6: (1 2 5 4)
|
|
Face 4 (0 1 4 3) -> F3: (0 1 4 3)
|
|
|
|
|
|
Tetra:
|
|
Foam pro-STAR
|
|
~~~~~~~~~~~~~~ ~~~~~~~~~~~
|
|
Face 0 (1 2 3) -> F6: (1 2 3)
|
|
Face 1 (0 3 2) -> F5: (0 3 2)
|
|
Face 2 (0 1 3) -> F3: (0 1 3)
|
|
Face 3 (0 2 1) -> F1: (0 2 1)
|
|
|
|
|
|
Pyramid:
|
|
Foam pro-STAR
|
|
~~~~~~~~~~~~~~ ~~~~~~~~~~~
|
|
Face 0 (0 3 2 1) -> F1: (0 3 2 1)
|
|
Face 1 (0 4 3) -> F5: (0 4 3)
|
|
Face 2 (3 4 2) -> F4: (2 3 4)
|
|
Face 3 (1 2 4) -> F6: (1 2 4)
|
|
Face 4 (0 1 4) -> F3: (0 1 4)
|
|
|
|
Noting that several faces are skipped over in the pro-STAR definitions,
|
|
simply introducing a new cell modeller will be a problem.
|
|
Instead, subtract 1 from the pro-STAR faces and use lookup tables.
|
|
|
|
|
|
Here are the pro-STAR macro snippets used for creating the primitive cells:
|
|
|
|
! hexa
|
|
v 10 0 0 0
|
|
v 11 1 0 0
|
|
v 12 1 1 0
|
|
v 13 0 1 0
|
|
v 14 0 0 1
|
|
v 15 1 0 1
|
|
v 16 1 1 1
|
|
v 17 0 1 1
|
|
c hexa 10 11 12 13 14 15 16 17
|
|
|
|
! prism
|
|
v 20 0 0 0
|
|
v 21 1 0 0
|
|
v 22 1 1 0
|
|
v 23 0 0 1
|
|
v 24 1 0 1
|
|
v 25 1 1 1
|
|
c prism 20 21 22 23 24 25
|
|
|
|
! tet
|
|
v 30 0 0 0
|
|
v 31 1 0 0
|
|
v 32 1 1 0
|
|
v 33 0.75 0.75 1
|
|
c tetra 30 31 32 33
|
|
|
|
! pyramid
|
|
v 40 0 0 0
|
|
v 41 1 0 0
|
|
v 42 1 1 0
|
|
v 43 0 1 0
|
|
v 44 0.5 0.5 1
|
|
c pyra 40 41 42 43 44
|
|
|
|
! list faces
|
|
flist all
|