Deriving pre-defined atmospheric quantities
Computation of several derived atmospheric quantities (e.g., potential temperature, equivalent potential temperature) is implemented in Met.3D. Prerequisite is that corresponding input variables are specified by the user for the dataset for which derived quantities shall be computed. Below we provide a (possibly incomplete) list of available derived variables and potential restrictions to grid types on which the variables can be computed. If you are interested in the specific definitions, please refer to the corresponding source code referenced below.
Defining input variables for computations
Available derived quantities
Source code links
Computation of derived variables is implemented in the "derivedvars" source code subdirectory:
Variable computation is implemented for each derived variable in a class derived from MDerivedDataFieldProcessor.
The actual implementations are distributed over multiple files. A basic set of common quantities is implemented in
- https://gitlab.com/wxmetvis/met.3d/-/blob/master/src/data/derivedvars/derivedmetvars_standard.h
- https://gitlab.com/wxmetvis/met.3d/-/blob/master/src/data/derivedvars/derivedmetvars_standard.cpp
For each quantity, the implementation lists which input variables are required for computation. For example, the computation of horizontal wind speed requires the eastward and northward wind components as inputs.
MHorizontalWindSpeedProcessor::MHorizontalWindSpeedProcessor() : MDerivedDataFieldProcessor( "wind_speed", QStringList() << "eastward_wind" << "northward_wind") {}
All derived variables available are listed in the constructor of MDerivedMetVarsDataSource
:
Generic derivation of quantities (to come)
We are working on a Python interface to allow the computation of arbitrary quantities on-the-fly in Python scripts executed by Met.3D. Help with the implementation is appreciated!