# Exodus-II File Format¶

Nalu requires the user to provide the computational mesh in Exodus-II format. The output and restart files generated by Nalu are also in Exodus-II format where the requested fields are output along side the mesh. The restart files from one Nalu simulation can serve as the input file for a subsequent simulation.

Several commercial mesh generation software support output to Exodus-II format. Two such software used by Nalu developers are:

Furthermore, NaluWindUtils provides an abl_mesh utility that can be used to generate simple structured meshes (output into Exodus-II format) for use with atmospheric boundary layer simulations.

## Examining Exodus-II Files¶

Exodus-II uses the NetCDF format to store data, therefore, the several NetCDF utilities can be used to examine the file metadata. For example, the following code snippet shows the use of ncdump to examine the names of the mesh blocks and side sets, as well as the nodal fields available in a given mesh file.

ncdump -v eb_names,ss_names,name_nod_var channel_coarse_ic.g
# <output truncated to show only relevant parts>
data:

eb_names =
"interior" ;

ss_names =
"inlet",
"outlet",
"bottomwall",
"topwall",
"back",
"front" ;

name_nod_var =
"turbulent_ke",
"velocity_x",
"velocity_y",
"velocity_z" ;


For brevity, the example above has removed the NetCDF dimensions and variables sections to show just the contents of the variable names of interest. The output shows that the mesh in question contains one element block (interior) with six boundary planes (side-sets) and has two nodal fields: the velocity vector, and the turbulent kinetic energy scalar. ncdump can be invoked with the -h flag to print just the headers. Of particular interest is the NetCDF dimensions section that contains information about the total number of nodes, element, boundary faces, etc. in the mesh file.

Most visualization programs support loading Exodus-II mesh/solution files and can be used to visualize the flow fields generated by Nalu. Two open-source visualization programs available are:

Preliminary support for in-situ visualization using ParaView Catalyst is available within the Nalu code base and can be enabled by linking to Catalyst libraries during compile time. See input file specifications more details on setting up Cataylst for in-situ visualization of Nalu solution files.

## Other Exodus-II Utilities¶

A brief description of some useful Exodus-II utilities are provided here. Please consult the documentation of these programs to understand the full range of options available.

decomp

decomp is a SEACAS utility (available from a Trilinos install) that can be used to decompose a mesh file acros several MPI ranks for use in a subsequent paralell simulation.

epu

epu performs the reverse action of decomp, i.e., it combines parallel decomposed files from a simulation into a single Exodus-II database. The simplest invocation is

epu -auto nalu_output.e.8.0


The -auto flag determines the database structured based on the file provided on the command line and combines the files (in the above example into nalu_output.e).

mapvar-kd

Map solution fields from one mesh to another mesh.

percept

The Percept project provides various tools to perform mesh refinement, higher-order promotion, etc. See documentation for mesh_adapt to determine various options available.