exodusii
exodusii chooses Exodus II as the format of the files that the next write makes.
Syntax
exodusii
The command takes no argument. The command line spells the same format --format exodus.
What it does
exodusii sets the format. It stays in force for every later write until another format command replaces it. The command line flag --format is only a fallback: James uses it when the script names no format.
The file is a netCDF classic file in the 64-bit-offset variant. It holds one element block for each part that has an active element, in part order, with HEX8 elements, and the coordinates as the doubles coordx, coordy and coordz. A node and an element have the numbers of their positions, so James writes no map. James has checked the layout against the library’s source and with ncdump. It has not opened a file with another program’s Exodus reader. The file’s QA record holds james, the version, and an empty date and time, so that the same script gives the same bytes every time.
Writing Exodus II needs a build with the netCDF Fortran library. james -v says whether the build has it. A build without it refuses an Exodus write with built without Exodus support.
When James applies it
At the next write. exodusii is legal in the Control, Part and Merge phases.
Rules James adds
- A second format command that names a different format, before any
writehas used the first, is a warning (E1104). The later command governs. The same format twice raises nothing. A format command after awriteraises nothing either, so a script can write one mesh in two formats. - The title is stored cut to 80 characters. A longer title raises a warning that it was cut.
- A format command that James does not have, such as the one for an analysis program, is an error (E0100).
Diagnostics
- E1104: a format command replaces a different format that no
writehas used.
Example
The script tests/golden/006-merge-two-blocks/input.tg, which make test runs:
c Two blocks of 3 x 3 x 3 nodes sharing the face x = 1. Under stp the nine
c nodes of the second block's face merge into the first block's: 54 nodes
c become 45. The mesh is written twice, as the neutral file and as Exodus II.
block 1 3;1 3;1 3;0 1;0 1;0 1;
endpart
block 1 3;1 3;1 3;1 2;0 1;0 1;
endpart
merge
stp .001
neutral
write
exodusii
write
The two blocks share a face, and stp merges its nine nodes: 54 nodes become 45. The script writes the mesh twice, first as the neutral file and then, after exodusii, as an Exodus II file. No warning appears, because a write used the first format before the second command came. In a build with the writer James prints this, as tests/golden/006-merge-two-blocks/input.diag.txt holds:
input.tg:9:1: note: 9 nodes were deleted by tolerancing
input.tg:9:1: note: 9 nodes merged between parts 1 and 2
See also
- neutral: James’s own plain-text format.
- write: makes the file.
- Merge and output: what a file holds.