Opening files
The simplest way to open an exodusII file is to call the following method
mode = "r" # can be "r" for read, "rw" for read write
# or "w" for write modes
exo = ExodusDatabase("/path/to/file/file.e", mode)
this howewer introduces a type stability however since the storage types different data types are not known until runtime.
If ahead of time you know the types your data are stored as (typeically 32 bit integers for ids and 64 bit floats for values) you can call this constructor which is type stable (important if you keep reading)
mode = "r" # can be "r" for read, "rw" for read write
# or "w" for write modes
exo = ExodusDatabase{Int32, Int32, Int32, Float64}("/path/to/file/file.e", mode)
Either way, these constructors return an ExodusDatabase
container which has a field "exo" that is a file id for this now opened exodusII database in "mode" i.e. read/read-write/write format.
The container also contains additional meta-data for the current names of sets, variables, etc. present in the file to allow for a clean and efficient user facing interface.
Example opening a file in read-only mode
using Exodus
exo = ExodusDatabase("../test/example_output/output.gold", "r")
# example output
ExodusDatabase:
File name = ../test/example_output/output.gold
Mode = r
Initialization:
Number of dim = 2
Number of nodes = 16641
Number of elem = 16384
Number of blocks = 1
Number of node sets = 4
Number of side sets = 4
Block:
unnamed_block_1
NodeSet:
unnamed_nset_1 unnamed_nset_2 unnamed_nset_3 unnamed_nset_4
SideSet:
unnamed_sset_1 unnamed_sset_2 unnamed_sset_3 unnamed_sset_4
NodalVariable:
u