Releases: open-atmos/PySDM
Releases · open-atmos/PySDM
PySDM v2.0
tada:
- Monte-Carlo super-particle-number-conserving collisional breakup representation
(original algorithm and implementation by @edejong-caltech and @jb-mackay)
misc:
- Lowe et al. 2019 (Pruppacher & Klett) diffusion kinetics/thermics & latent heat formula (thanks @claresinger)
- Lowe 1977 saturation vapour pressure formulae (thanks @claresinger)
- Murphy and Koop 2005 saturation vapour pressure formulae (thanks @isilber)
- new product: FlowVelocityComponent
- new spectra: Gamma & Gaussian (thanks @edejong-caltech)
- fixing race condition in coalescence counter increments (thanks @jb-mackay)
- fixing non-rectangular domain handling in VTK exporter
- switch from SciPy to PySDM backend root-solver in CompressedFilmRuehl surface tension (thanks @claresinger)
- swithing to use single buffer for all products (less memory allocated)
- better unit-test coverage for physics formulae incl. units (thanks @claresinger)
PySDM v1.27
- moving terminal velocity and coalescence kernels out of "physics"
(re-release to trigger DOI generation after enabling integration with Zenodo)
PySDM v1.26
- new Szyszkowski-Langmuir surface tension model (and updates in Ruehl model) - kudos @claresinger!
- JOSS paper branch merged into main one, added CI workflow to check the paper code
- new cooling rate attribute and product
- new max Courant number product
- VTK exporter fixes
- mass and heat accommodation coefficients alterable from within constants
- cleanups
PySDM v1.25
- major refactor around physical constants handling (Formulae ctor now accepts a dictionary of constant values to use instead of the defaults)
- handling exdown -> pytest-codeblocks package name change in GA workflow files
- first smoke test for immersion freezing using 2d kinematic setup (both singular and time-dependent)
- binned terminal velocity product and a corresponding 2d kinematic GUI panel
- mixed-phase support at Moist environment base class level
- handling of non-spatial dimensions (e.g. histogram bins) in netCDF exporter
- cleanups
PySDM v1.24
- module docstring coverage reached 100% (checked with pylint in CI)
- using
python -We -m pdoc
instead ofpdoc
to catch broken code links within docstring (and other issues) - catching OSError when importing ThrustRTC and issuing a warning (
pdoc
parsing works then even on machines without CUDA) - some minor code cleanups/refactors
PySDM v1.23
- fixes and refactors around unit handling in the common code of the products subsystem (incl. new RateProduct base class)
- numerous GPU code fixes (kudos to @Delcior for reporting it)
- FakeThrust API updates to match ThrustRTC 0.3.17
PySDM v1.22
- initialisation and spectra refactors
- formulae.py moved out of physics to avoid cyclic imports
PySDM v1.21
- product subsystem refactor (incl. enforced SI units as defaults, pint handling of user-supplied unit conversion, shorter code, clearer directory structure, more common code, improved test coverage)
- cleanups
PySDM v1.20
- code cleanups & refactors
- making pylint warnings fail GA workflow
- phasing out PrecisionResolver - precision is now an init parameter of the GPU backend class
PySDM v1.19
- VTK product export (kudos @abulenok)
- new surface tension model draft added, relabelling existing models (kudos @claresinger)
- cleanups (incl. graphics files linked from README - now showing files generated through GitHub Actions on a latest merge)