Model output data
MPTRAC currently supports eight different types of model output: particle output, grid output, CSI output, ensemble output, profile output, sample output, station output, and VTK output. By default, these output functions generate data in ASCII table format, which is human-readable and compatible with various data analysis and visualization tools. This format is ideal for quick inspection and post-processing, making it accessible for a wide range of users.
However, for large-scale simulations or when handling extensive datasets, the ASCII format may become inefficient. To address this, MPTRAC offers the option to perform file I/O in more efficient formats such as binary or netCDF. These formats are particularly useful for managing large volumes of data, and they enable smoother integration with other tools and models, such as the CLaMS model for atmospheric studies.
Additionally, MPTRAC provides the capability to pipe output data directly to visualization tools, such as the graphing utility Gnuplot, for real-time analysis and visualization. This flexibility allows users to tailor the output format to the needs of their simulation and analysis, improving both performance and usability.
Particle data
The most comprehensive output of MPTRAC is the particle data output. Particle data output files can be generated at user-defined time intervals, which need to be integer multiples of the model time step. The particle data output files are the most comprehensive type of output because they contain the time, location, and the values of all user-defined quantities of each individual air parcel.
The air parcel output is configured using the ATM_*
control
parameters. The air parcel output file is set with the parameters
ATM_TYPE
and ATM_TYPE_OUT
, where ATM_TYPE
defines the file
format for reading and ATM_TYPE_OUT
defines the writing file
format. However, if ATM_TYPE_OUT
is not explicitly set in the
control file, ATM_TYPE
sets the file format for reading and writing.
ATM_TYPE | output format |
---|---|
0 | ASCII (default) |
1 | binary |
2 | netcdf |
3 | netcdf (CLaMS: trajectory and position file) |
4 | netcdf (CLaMS: position file) |
Gridded data
To manage the potentially large size of particle output — especially when simulating many air parcels — MPTRAC supports gridded output as an efficient alternative for analysis. This output is generated by integrating the mass of all particles within a regular grid defined by longitude × latitude × log-pressure height.
From the total mass in each grid cell and the corresponding air density, the column density and volume mixing ratio of the tracer are computed. If each particle is already assigned a volume mixing ratio, the system instead calculates and reports the mean volume mixing ratio per grid cell.
For more targeted analyses, users can limit output to a single
vertical layer to obtain total column values, or to a specific
longitude band to compute zonal means. The grid output is configured
using the GRID_*
control parameters. Gridded data can be written in
either ASCII or netCDF format, depending on the setting of the
GRID_TYPE
parameter.
GRID_TYPE | output format |
---|---|
0 | ASCII (default) |
1 | netcdf |
CSI data
Another type of output that we used in several studies (Hoffmann et
al., 2016; Heng et al., 2016) is the critical success index (CSI)
output. This output is produced by analyzing model and observational
data on a regular grid. The analysis is based on a 2×2 contingency
table of model predictions and observations. Here, predictions and
observations are counted as yes, if the model column density or the
observed variable exceed user-defined thresholds. Otherwise, they
would be counted as no. Next to the CSI, the counts allow us to
calculate the probability of detection (POD) and the false alarm rate
(FAR), which are additional skill scores that are often considered in
model verification. More recently, the CSI output was extended to also
include the equitable threat score (ETS), the linear and rank-order
correlation coefficients, the bias, the root mean square (RMS)
difference, and the mean absolute error. A more detailed discussion of
the skill scores is provided by Wilks (2011). The CSI output is
configured using the CSI_*
control parameters.
Ensemble data
Another option to condense comprehensive particle data is provided by
means of the ensemble output. This type of output requires a
user-defined specific ensemble index value to be assigned to each air
parcel. Instead of the individual air parcel data, the ensemble output
will contain the mean positions as well as the means and standard
deviations of the quantities selected for output for each set of air
parcels having the same ensemble index. The ensemble output if of
interest, if tracer dispersion from multiple point sources needs to be
quantified by means of a single model run, for instance. The ensemble
output is configured using the ENS_*
control parameters.
Profile data
The profile output of MPTRAC is similar to the grid output as it
creates vertical profiles from the model data on a regular
longitude × latitude horizontal grid. However, the vertical profiles
contain not only volume mixing ratios of the species of interest but
also profiles of pressure, temperature, water vapor, and ozone as
inferred from the meteorological input data. This output is compiled
with the intention to be used as input for a radiative transfer model,
in order to simulate satellite observations for the given model
output. In combination with real satellite observations, this output
can be used for model validation but also as a basis for radiance data
assimilation. The profile output is configured using the PROF_*
control parameters.
Sample data
The sample output of MPTRAC was implemented most recently. It allows
the user to extract model information on a list of given locations and
times, by calculating the column density and volume mixing ratio of
all parcels located within a user-specified horizontal search radius
and vertical height range. For large numbers of sampling locations and
air parcels, this type of output can become rather time-consuming. It
requires an efficient implementation and parallelization because it
needs to be tested at each time step of the model whether an air
parcel is located within a sampling volume or not. The numerical
effort scales linearly with both the number of air parcels and the
number of sampling volumes. The sample output was first applied in the
study of Cai et al. (2021) to sample MPTRAC data directly on
TROPOspheric Monitoring Instrument (TROPOMI) satellite
observations. The sample output is configured using the SAMPLE_*
control parameters.
Station data
Finally, the station output is collecting the data of air parcels that
are located within a search radius around a given location (latitude,
longitude). The vertical position is not considered here; i.e., the
information of all air parcels within the vertical column over the
station is collected. In order to avoid double counting of air parcels
over multiple time steps, the quantity STAT has been introduced that
keeps track on whether an air parcel has already been accounted for in
the station output or not. We used this type of output in studies
estimating volcanic emissions from satellite observations using the
backward-trajectory method (Hoffmann et al., 2016; Wu et al., 2017,
2018). The station output is configured using the STAT_*
control
parameters.
VTK data
MPTRAC also supports outputting air parcel data in VTK (Visualization
Toolkit) format, which is commonly used for visualizing and analyzing
simulation results in 3D. The VTK output provides detailed information
about the positions and properties of air parcels at each user-defined
time step. The VTK output can be enabled by specifying the appropriate
parameters in the control file. This output includes the time,
location (longitude, latitude, and altitude), and other properties of
each air parcel, allowing for advanced visualization and
post-processing. The frequency of output is controlled by user-defined
time intervals, which must be integer multiples of the model's time
step. The VTK output is configured using the VTK_*
control
parameters. Please see projects/paraview/README.md
for further
instructions and examples on how to create VTK output.