Skip to content

Releases: slcs-jsc/mptrac

v2.7

16 Jul 14:16
Compare
Choose a tag to compare
  • Added boundary checks for reading compressed meteo data.
  • Added control parameters for cmultiscale compression.
  • Added compression rate to cmultiscale log messages.
  • Added check of pressure profiles.
  • Added option to calculate kinematic trajectories using model level meteo data.
  • Added interpolation functions for meteo data on model levels.
  • Update write_csi() for the particle filter.
  • Merged module_advect() and module_advect_diabatic().
  • Revised initialization functions.
  • Added code for MPI broadcasting of meteo data.
  • Added RWC and SWC as separate meteo data variables.
  • Modified checks of VERT_COORD_AP and VERT_COORD_MET.
  • Added Makefile target lib to create dynamic or static library of MPTRAC.
  • Renamed libtrac.c/h to mptrac.c/h.
  • Replaced call to gsl_finite() by isfinite().
  • Removed calls of GSL macros.
  • Fixed displaying of equations in doxygen.
  • Added example on creating ParaView output to projects.
  • Added function module_press_init to factorize the code.
  • Moved all modules, static variables and macros from trac.c to libtrac.c.
  • Added script to retrieve ERA5 data.
  • Modified code to read meteo data on model levels.
  • Added script to retrieve NCEP-NCAR Reanalysis 1 data.
  • Added script to download GFS forecasts.
  • Added script to retrieve GFS forecasts.
  • Added script to retrieve MERRA-2 data.
  • Started integrating cmultiscale.
  • Modified ZFP compression settings.
  • Added clang compiler to Makefile.
  • Added project directory for benchmarking.
  • Added selection based on potential temperature to atm_select.
  • Modified GPU offloading of mixing module.
  • Added GPU compilation for gcc.
  • Added COMPILER flag to Makefile.
  • Revised mixing code.
  • Check fix of CURAND compilation flag.
  • Update tropopause climatology file format.
  • Added new tool tropo_clim to calculate tropopause climatology.
  • Added CLaMS photolysis data.
  • Added new function read_met_polar_winds() to fix winds at the poles.
  • Revised timers. Added flag for GPU memory pinning.
  • Added level definitions for ml2pl operator.
  • Added const qualifiers.
  • Add new tool atm2grid.c.
  • Minor change on module_mixing and kpp_chem.
  • Update TUV photolysis data of o2,o3,h2o2.
  • Use a finer pressure grid in photolysis data.
  • Modified pragmas for module_mixing_help().
  • Refined grid levels at the bottom for predefined levels.
  • Update user manual.
  • Add dt_kpp as time step size for KPP chemistry.
  • Added checks of meteo data layout for packed netCDF files.
  • Implemented different meteo data layouts for 2-D variables.
  • Added control parameter RNG_TYPE to select random number generator.
  • Added counter-based random number generator.
  • Code cleaning.
  • Modified control parameters for reading netCDF meteo files.
  • Build zlib with -fPIC flag.
  • Added timer for read_met_monotonoize().
  • Update build.sh.
  • Add python plot scripts.
  • Update documentation.
  • Update GPU test case.
  • Revised interpolation method in convection module.
  • Added total column ozone to output of met tools.
  • Fixed compilation error on JUWELS Cluster.
  • Add standard deviation output to write_grid.

v2.6

02 Nov 21:48
Compare
Choose a tag to compare
  • Update CITATION.cff file.
  • Simplified the example for the Puyehue case.
  • Removed OpenMP quicksort algorithm.
  • Update documentation.
  • Update test cases.
  • Bugfix: Correcting CLaMS filenames.
  • Integrated photolysis rates in climatological data struct.
  • Modify the dimension of sza to unit rad.
  • Switch the photolysis rate to Roeth's scheme.
  • Added tuv photolysis data.
  • Added check of surface pressure to read_met_ozone().
  • Added total column ozone to interpolation functions.
  • Added function to calculate total column ozone.
  • Removed uvw cache for diabatic calculations. It needs further considerations.
  • Added a test to spot changes in the diabatic calculations.
  • Added parameter to read meteo data in different conventions.
  • Added interoper_test, the part for testing IO of atmospheric data.
  • Added the diabatic transport scheme.
  • Added option to select pre-defined pressure level sets.
  • Optimized calculation of solar zenith angle.
  • Optimized tracer chemistry code.
  • Fixed compilation warning for ZFP code.
  • Obsolete output omitted for make check
  • Bugfix zfp code.
  • Added const qualifiers.
  • Update README.md
  • Renamed variables of climatological data.
  • Update unit strings for volume mixing ratios.
  • Fix for NVIDIA C compiler.
  • Added control parameters for ZFP compression.
  • Update grid output to include quantity mean values.
  • Add compilation of KPP in build.sh
  • Added macro for particle loop.
  • Changed group assignment of sorting timer.
  • Fix in module_chemgrid.
  • Check conflict of THRUST and STATIC flags in Makefile.
  • Update library build script.
  • Added an overview image showing the MPTRAC modules.
  • Added CLaMS radical species files with concentrations converted to vmr.
  • Removed redundant mixing of O3 in module_mixing().
  • Revised code for tracer concentrations and fixes of GPU code.
  • Fix for KPP code.
  • Added new function clim_ts() and clim_zm() to interpolate climatological data.
  • Update references.
  • Read HNO3 climatology from file.
  • Update GOZCARDS data files.
  • Added module_h2o2_chem() and module_chemgrid() to trac_test.
  • Added language/locales setting to run scripts.
  • Renamed chem_test into kpp_test.
  • Added module_mixing to trac_test.
  • Added check of KPP flag in trac.
  • Merged module_h2o2_chemgrid() and module_kpp_chemgrid() into module_chemgrid().
  • Revised atm_init to initialize for age of air calculation.
  • Revised control parameter defaults for boundary condition module.
  • Fixed boundary conditions for CCl4 and SF6.
  • Removed CFC-13 from tracer chemistry.
  • Added code to calculate age of air.
  • Revised reaction rates of chemical tracers.
  • Added trends for CFCs and N2O boundary conditions.
  • Added climatological time series of CFCs, N2O, and SF6.
  • Revised preprocessor directives for KPP.
  • Fix OpenACC pragma for sza_calc().
  • Added control switch TRACER_CHEM for first-order tracer chemistry.
  • Changed default values for mixing module.
  • Added module for inter-parcel mixing.
  • Add o3 climatology from CAMS reanalysis.
  • Removed setting of GPU vector length.
  • Changed ordering of calls to boundary condition module in trac.
  • Added VTK output to trac_test.
  • Added new quantities for H2O2, HO2, and O(1D) number concentrations.
  • Added HO2 and O(1D) to output of met tools.
  • Revised clim_oh() function to use clim_var().
  • Removed clim_h2o2() function.
  • Implemented a separate function for VTK output.
  • Modified GPU vector length of advection kernel.
  • Added dry deposition to trac_test.
  • Revised code for reading species defaults.
  • Added vtk output for particle data.
  • Fix for OH diurnal correction.
  • Added const qualifier to locate functions.
  • Revised function call for clim_var().
  • Update OH climatology code.

v2.5

27 Jul 17:42
191c86f
Compare
Choose a tag to compare
  • update README.md
  • update doxygen and mkdocs documentation
  • fix doxygen and mkdocs actions
  • new module for KPP chemistry
  • new test case for KPP chemistry
  • fix for reading/writing binary data
  • update ERA-Interim netCDF data files.
  • fixed code for reading SST.
  • added cloud cover, land-sea mask, and sea surface temperature to meteo data
  • added code to read relative humidity as meteo input
  • implemented "sp" and "SP" as additional netCDF variable names for surface pressure.
  • update netCDF calls
  • added function to read time from filename
  • added a function to read kernel data file
  • added a function to extract weighting factors from kernel function
  • added kernel function to CSI output, grid output, and sample output
  • update example
  • revised sorting code and thrustsort wrapper
  • added a logo
  • revised dry deposition module
  • use (WMO, 2018) to calculate T_ice
  • added option to terminate trajectories at boundaries of local meteo data sets
  • added surface pressure and height to tropo tools
  • added a function to calculate buoyancy frequency
  • added checks to chemgrid module.
  • added a tool to add CAPE data to CLaMS netCDF files
  • updates of module_h2o2_chem()
  • updates of module_chemgrid
  • revised netCDF grid output
  • added new criteria for boundary conditions
  • update GPU test data.
  • changed convection module default parameter settings

v2.4

22 Dec 14:40
Compare
Choose a tag to compare
  • Update doxygen manual.
  • Bugfix of layer packing code.
  • Update of H2O2 chemistry.
  • Fix library build script.
  • Added OpenMP parallelization to write_grid().
  • Revised wet deposition module.
  • Revised ensemble output. Added a test case.
  • Added CSI output to trac_test.
  • Revised write_csi() function.
  • Added GPU test case.
  • Added new function to read observation data.
  • Revised profile output including test case.
  • Update CITATION.cff
  • Update codecov.yml, doxygen.yml and tests.yml.
  • Revised sample output. Extended trac_test.
  • Fix of mass loss calculation.
  • Added netCDF output for grid data.
  • Added mkdocs manual for RTD.
  • Added tests for compression of meteo data.
  • Added macros to access 2-D and 3-D arrays.
  • Added netCDF I/O for air parcel data.
  • Revised tropopause climatology code.
  • Revised HNO3 climatology code.
  • Revised advection code.
  • Added Makefile flag for UVW cache.
  • Fixed meteo filename extensions.
  • Convective mixing based on density.
  • Added option to redefine physical constants.
  • Bug fix for backward trajectories.
  • Added vertical velocity to wind tool.
  • Added timer statistics.
  • Added tests of tropopause code.
  • Added control parameter MET_NC_SCALE to check scaling factor and offset of meteo files.
  • Added quantities to track mass loss.
  • Added control parameter MET_CLOUD_MIN to specify minimum CLWC and CIWC.
  • Added macros for netCDF.
  • Revised I/O functions for atmospheric data.
  • Added tool to calculate zonal men tropopause statistics.
  • Update wet deposition module.
  • Added H2O2 chemistry module.
  • Added new quantity IDX for air parcel index.
  • Added Thrust library for sorting.
  • Added netcdf4 reading and writing functions similar to CLaMS.
  • Updates of wet deposition module.
  • Added new quantity RHO for density of air.
  • Renamed quantities RP and RHOP for particle radius and density.
  • Add asyncIO (to be tested).
  • Revised sorting code.
  • Added GOZCARDS climatology data files.
  • Moved example to project directory.

v2.3

08 Aug 12:49
Compare
Choose a tag to compare
  • Added new function read_clim() to read climatological data files.
  • Added linear trends to boundary condition module.
  • Renamed group timers.
  • Update GPU code.
  • Read CLaMS data, save as netcdf files
  • Tentative interpolations in zeta coordinates and functions for diabatic simulations.
  • Added H2O as a species.
  • Added module for sorting of particles.
  • Added zstd compression.
  • Added zfp compression.
  • Revised code for mesoscale diffusion.
  • Added cache for wind data.
  • Added checks for binary data.
  • Added code to read/write binary meteo data.
  • Added tools test.
  • Update Makefile. Renamed lapse and subgrid tools.
  • Added tests for atm tools.
  • Added option for multiple test cases.
  • Update bug_report.md
  • Update feature_request.md
  • Added test for code coverage.
  • Added citation file.
  • Added cppcheck. Fixed minor issues.
  • Add Codacy badge
  • Minor fixes (SoftWipe analysis).
  • Added 4th-order Runge-Kutta method for advection.
  • Added control parameter REFLECT for reflection of particles at top and bottom boundary.
  • Added check of CONV_CAPE and COVE_CIN to met tools.
  • Added output of the number of data points in met tools.
  • Changed calculations of mean values in met tools.
  • Added CIN threshold to convection module.
  • Added code to calculate convective inhibition (CIN).
  • Added control parameter CONV_WMAX to limit vertical velocities.
  • Update mesoscale diffusion.
  • Added option to initialize with cosine bell in atm_init.
  • Added tool for synthetic wind fields.
  • Changed code to calculate standard deviations.
  • Modified OpenMP scheduling for read_met_help().
  • Take into account fill values and missing values in meteo netCDF files.
  • Modified code to read packed netCDF meteo files.
  • Added control parameter MET_CACHE for preloading meteo data into disk cache.
  • Use disk cache for meteo data.
  • Revised example to include convection, wet deposition, and boundary conditions.
  • Update to HDF5 v1.12.1 and netCDF v4.8.1.
  • Added module for timesteps.
  • Modified spatial interpolation methods.
  • Replaced pgcc by nvc.
  • Added group timers.
  • Added log message for read_atm() and write_atm().
  • Added output of git version number.
  • Modified time filter for atmospheric data output.
  • Modified get_met() function to ignore DIRECTION flag.
  • Added tool "tnat" to calculate PSC temperatures. Fix for negative H2O vmr.

v2.2

19 Nov 16:13
Compare
Choose a tag to compare
  • Update met tools (additional output variables).
  • Bugfix for latitudes in met_zm output.
  • Changed DT_MET to 3600s to match ERA5 data. GPU managed memory switched off by default.
  • Added code to estimate cloud bottom pressure.
  • Added function to calculate weighting factor from tropopause distance.
  • Fixed calculation of lifetime in wet deposition module.
  • Fixed GPU code.
  • Revised OpenMP collapse clauses.
  • Added new quantity definitions.
  • Revised 2-D interpolation scheme to consider NaNs.
  • Added default coefficients for OH reactions.
  • Added output of particle Reynolds number to sedi tool.
  • Added tools to calculate sedimentation velocity and grid-scale wind variances.
  • Added wet deposition coefficients for various species.
  • Revised check for observation time in write_csi, write_prof, and write_sample.
  • Added longitude range to met_zm tool.
  • Revised profile output.
  • Added time range for station output.
  • Update to GSL v2.7.

v2.1

22 Oct 15:20
Compare
Choose a tag to compare
  • Revised OH chemistry code.
  • Revised profile output.
  • Added outlier filter for atm_dist.
  • Added macro for log messages.
  • Revised doxygen documentation.
  • Added check for time information in meteo data files.
  • Fixed linear interpolation in tropopause code.
  • Added control parameters for tropopause calculation.
  • Faster time interpolation of meteo data.
  • Use different rng seeds for different MPI tasks.
  • Added function to estimate pressure of the planetary boundary layer.
  • Added quantity for (explicit) volume mixing ratios.
  • Added a module to apply boundary conditions.
  • Bugfix dry deposition module.
  • Added zeta hybrid vertical coordinate as a quantity.
  • Added linear interpolation to lapse rate tool.
  • Added time interval for convection module.
  • Faster index calculation in write_grid().
  • Bugfix for surface variables.
  • Revised write_output function in trac.c.
  • Added IO tuning parameters to the control parameters: chunkszhint, readmode
  • Revised equation to calculate molecular density of air.
  • New code to read RWC and SWC.
  • Update doxygen documentation.
  • Revised interpolation methods in clim_hno3 and clim_oh.
  • Added a tool to calculate lapse rate statistics.
  • Fixed quantity names.
  • Revised example (maps of meteo data). Revised timers.
  • Added dew point and frost point temperature to output of met tools.
  • Allow for "nan" in observation data.
  • Added generic sampling function.
  • Added a detrending method for temperature and winds.
  • Revised interpolation scheme in tropo_sample.
  • Revised grid output.
  • Additional verification statistics in CSI output.
  • Added delta-Z filter in tropo_sample.
  • Added option to extract meteo maps on isentropic levels.
  • Revised 3-D interpolation scheme for tropopause data.
  • Fixed problem with building HDF5 and netCDF-4 on JURECA.
  • Added surface variables (T2m, U10m, V10m) to meteo data.
  • Revised consistency check of meteo grids.
  • Revised code to read meteo data. Removed MET_STAGE option.
  • Added new control parameter METBASE.
  • Added macro to calculate geopotential height differences.
  • Added macro to calculate lapse rate between pressure levels.
  • Added interpolation macros. Added tropopause T, z, and q to trac output.
  • Added function to calculate T_NAT.
  • Made identification of quantity names case-independent.
  • Revised wet deposition scheme.
  • Added module to simulate convection.
  • Added code to calculate convective available potential energy (CAPE).
  • Bugfix OpenMP parallelization of grid output.
  • Revised code for humidity calculations.
  • Improved calculation of geopotential heights near the surface.
  • Modified horizontal smoothing method for geopotential heights.
  • Added function to calculate frost point temperature.
  • Added code to calculate dew point temperature and lapse rate.
  • Added module to calculate dry deposition.
  • Changed default time step DT_MOD to 180s.

v2.0

22 Oct 14:52
Compare
Choose a tag to compare
  • Revised GPU code.
  • Minor fix to allow for compilation on JURECA-DC and JUWELS.
  • Update to gsl-2.6 and netcdf-c-4.7.4.
  • Added HDF5 and zlib libraries to enable netCDF-4.
  • Modified read_met for ERA5 netcdf files created by new cdo version.
  • Added NVTX markers.
  • Minor changes in Makefile.
  • Publication of releases on zenodo.

v1.9

30 Dec 13:13
Compare
Choose a tag to compare
  • Added module to calculate wet deposition.
  • Added option to read surface geopotential for NCEP reanalysis.
  • Revised output of cloud parameters.
  • Bugfix geopot function.
  • Added new function to read surface data.
  • Added cloud liquid water content and ice water content to meteo data.
  • Added simple scheme for SO2 chemistry.
  • Added OH climatology.
  • Revised interpolation schemes for meteo data.
  • Added code to calculate relative humidity.
  • Revised code for multi-GPU runs.
  • Replaced extract tool by atm_select.
  • Modified netCDF output of tropo tool.
  • Fixed spline interpolation in tropopause code.
  • Modified interpolation functions to deal with missing values.

v1.8

30 Dec 13:08
Compare
Choose a tag to compare
  • Added new tool to sample tropopause data.
  • Added tropopause water vapor to meteo tools.
  • Added stride for particle output.
  • Added water vapor to tropo tool.
  • Revised and added test for decay module.
  • Added GPU code.
  • Revised example.
  • Added fix for polar latitudes to PV code.
  • Added OpenMP parallelization to tropopause code.
  • Added tool to create tropopause climatology.
  • Modified calculation of lapse rate.
  • Faster calculation of geopotential heights and tropopause.
  • Use virtual temperature to calculate geopotential heights.
  • Revised smoothing filter in met_geopot.
  • Added initial check of particle position.
  • Added vertical interpolation to met_prof and met_zm.
  • Added split based on kernel function to atm_split.
  • Removed tools smago and wind.
  • Added more flexible scheme for meteo filenames.
  • Changed parameters of some tools.
  • Added spatial interpolation to met_map.
  • Added number of particles to grid output.
  • Removed calculation of tracer conservation errors from atm_dist tool.
  • Added filters to atm_stat tool.
  • Removed ensemble filter from atm_dist tool.
  • Update air parcel statistics tool.
  • Renamed some of the tools for consistency.
  • Added check that meteo grids are consistent.
  • Added periodic boundary conditions in met_sample.
  • Update PV code.
  • Update GSL and netCDF libraries.
  • New control parameter MET_DT_OUT.
  • New tool "invert" to estimate volcanic emissions.
  • Added day2doy and doy2day utilities.
  • Added code to calculate dynamical tropopause.
  • Revised time step control.
  • Modifications of grid and profile output.
  • Revised downsampling code.
  • Enabled separate calculation of horizontal and vertical diffusion.