The model is capable of producing three different kinds of output files:
State snapshots can be saved in two ways:
- Pressing Ctrl+C to interrupt the headless model, then entering the 'save' command (with the desired filename)
- In the GUI, selecting File -> Save from the menu
State snapshots can be loaded from the GUI using the File -> Load menu item in order to load the saved state of the model.
Sample data files are produced by the headless
executable, and consist of a record of statistics of population samples taken
at various sampling sites throughout the map. This data is also included in state snapshots.
Sample data is saved as output_X.nc
, where X is the run ID.
Summaries are automatically saved as summary_X.nc
by the headless executable when a simulation is finished, where X is the run ID.
Tagged fish histories can be saved from the GUI using the File -> Save Tagged History menu item. They can also be loaded in the GUI using File -> Load Tagged History in order to view a replay of the history of the tagged fish.
All model outputs are saved as netCDF 4 files.
-
Snapshot files contain the following dimensions:
n
: Indicates individual, for per-fish variablespopulationHistoryLength
: Indicates timestep for population history entriessampleHistoryLength
: Indicates sample number for sample history entries (not equivalent to time)
-
Snapshot files contain the following variables:
modelTime
: int, the current model timesteprecruitTime[n]
: ints, each fish's entry timestepexitTime[n]
: ints, each fish's exit or death timestep (only valid for a givenn
ifstatus[n]
is not 0, since status 0 is Alive)entryForkLength[n]
: floats, fork length of each fish upon entry (mm)entryMass[n]
: floats, mass of each fish upon entry (g)forkLength[n]
: floats, current/final fork length of each fish (mm)mass[n]
: floats, current/final mass of each fish (g)status[n]
: ints, current/final status of each fish- 0: Alive
- 1: Dead from mortality risk
- 2: Dead from stranding
- 3: Dead from starvation
- 4: Exited
location[n]
: ints, current/final map node ID where each fish is locatedtravel[n]
: floats, most recent timestep's swim distance for each fish (m)lastGrowth[n]
: floats, most recent timestep's growth for each fish (g)lastPmax[n]
: floats, most recent timestep's Pmax for each fish (p)lastMortality[n]
: floats, most recent timestep's mortality risk for each fish (probability value)populationHistory[populationHistoryLength]
: ints, per-timestep counts of living individuals in the modelsampleSiteID[sampleHistoryLength]
: ints, each sample's site ID- Refer to data/sampling_sites.csv for a list of sample site names and coordinates. Site IDs correspond to line numbers (site ID 0 is Grain of Sand, 1 is FWP New Site, etc.)
sampleTime[sampleHistoryLength]
: ints, the timestep when each sample was takensamplePop[sampleHistoryLength]
: ints, the number of individuals in each samplesampleMeanMass[sampleHistoryLength]
: floats, each sample's mean individual mass (g)sampleMeanLength[sampleHistoryLength]
: floats, each sample's mean individual fork length (mm)sampleMeanSpawnTime[sampleHistoryLength]
: floats, each sample's mean individual spawn time (timesteps)
- Snapshot files contain the following dimensions:
sampleHistoryLength
: Indicates sample number for sample history entries (not equivalent to time)
- Sample data files contain the following variables:
sampleSiteID[sampleHistoryLength]
: ints, each sample's site ID- Refer to data/sampling_sites.csv for a list of sample site names and coordinates. Site IDs correspond to line numbers (site ID 0 is Grain of Sand, 1 is FWP New Site, etc.)
sampleTime[sampleHistoryLength]
: ints, the timestep when each sample was takensamplePop[sampleHistoryLength]
: ints, the number of individuals in each samplesampleMeanMass[sampleHistoryLength]
: floats, each sample's mean individual mass (g)sampleMeanLength[sampleHistoryLength]
: floats, each sample's mean individual fork length (mm)sampleMeanSpawnTime[sampleHistoryLength]
: floats, each sample's mean individual spawn time (timesteps)
- Summary files contain the following dimensions:
n
: Indicates individual
- Summary files contain the following variables:
recruitTime[n]
: ints, each fish's entry timestepexitTime[n]
: ints, each fish's exit or death timestep (only valid for a givenn
iffinalStatus[n]
is not 0, since status 0 is Alive)entryForkLength[n]
: floats, fork length of each fish upon entry (mm)entryMass[n]
: floats, mass of each fish upon entry (g)finalForkLength[n]
: floats, current/final fork length of each fish (mm)finalMass[n]
: floats, current/final mass of each fish (g)finalStatus[n]
: ints, current/final status of each fish
- Tagged fish histories contain the following dimensions:
n
: Indicates individualt
: Indicates timestep
- Tagged fish histories contain the following variables:
recruitTime[n]
: ints, each fish's entry timesteptaggedTime[n]
: ints, the timestep when each fish was taggedexitTime[n]
: ints, each fish's exit or death timestep (only valid for a givenn
iffinalStatus[n]
is not 0, since status 0 is Alive)entryForkLength[n]
: floats, fork length of each fish upon entry (mm)entryMass[n]
: floats, mass of each fish upon entry (g)finalForkLength[n]
: floats, current/final fork length of each fish (mm)finalMass[n]
: floats, current/final mass of each fish (g)finalStatus[n]
: ints, current/final status of each fishlocationHistory[n, t]
: ints, the map node ID where each fish was on each timestep (or -1 if a fish wasn't in the model on the timestep in question)growthHistory[n, t]
: floats, the growth (g) on each timestep for each fish, or 0 if the fish wasn't in the model on the timestep in questionpmaxHistory[n, t]
: floats, the pmax (p) on each timestep for each fish, or 0 if the fish wasn't in the model on the timestep in questionmortalityHistory[n, t]
: floats, the mortality risk (probability) on each timestep for each fish, or 0 if the fish wasn't in the model on the timestep in questiontempHistory[n, t]
: floats, the temperature in the current location at the end of each timestep for each fish, or 0 if the fish wasn't in the model on the timestep in questiondepthHistory[n, t]
: floats, the water depth in the location at the end of each timestep for each fish, or 0 if the fish wasn't in the model on the timestep in questionflowSpeedHistory[n, t]
: floats, the flow speed in the location at the end of each timestep for each fish, or 0 if the fish wasn't in the model on the timestep in question