mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
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