Post Processing
For each run, an output directory is either created, overwritten, or appended to. This is determined by the command line arguments or by resumption from the input file (see Running Simulations for details).
Within each output directory, GUERNICA writes:
ex9.mesh— a copy of the mesh used for the rungit_diff.patch— the difference between the current code and the recorded git commit<name>.cfg— a copy of the input file used for the runrun.log— a log file containing everything that would otherwise have been written to the terminalgf_out/— a directory containing saved simulation outputs as MFEM grid functions
Output Controls
Output behavior is controlled through the [output] section of the input file.
display
display dictates whether anything is output to the log file.
save_dist
save_dist dictates whether the full distribution function is written for each intermediate time step, as set by vis_steps.
The full distribution function is always written at the end of the simulation to allow the simulation to be resumed, even if save_dist = false.
profile
profile dictates whether anything is written for each intermediate time step.
Saved outputs are still written at the end of the simulation even if profile = false.
precision
precision dictates the numerical precision used when outputs are written.
Contents of gf_out/
Distribution Function
The distribution function is saved as velocity slices with filenames of the form:
ex9-v_<ix>_<iy>_<iz>-<step>.gf
where:
ixis the velocity index inxiyis the velocity index inyizis the velocity index inzstepis the time step index
Within each file, the distribution function is stored in dof-inner, element-outer format.
Density, Momentum, and Energy
Density, momentum, and energy are saved with filenames of the form:
rho-<step>.gf
rho_ux-<step>.gf
rho_uy-<step>.gf
rho_uz-<step>.gf
E-<step>.gf
Within each file, the values are stored in dof-inner, element-outer format.
Global Moments
The global mass, momentum, energy, and entropy values are written to:
moment.gf
They are saved first in the order:
- mass
- momentum_x
- momentum_y
- momentum_z
- energy
- entropy
and then in time.
moment.gf is only written at the end of a simulation. It is not populated while the simulation is running, so prematurely ending the simulation will result in moment.gf remaining empty.
moment.gf is currently only written when neutral-neutral collisions are on.
Plotting
Examples of plotting results with Python are provided in the scripts/ directory.