https://github.com/open-atmos/PySDM

Pythonic particle-based (super-droplet) warm-rain/aqueous-chemistry cloud microphysics package with box, parcel & 1D/2D prescribed-flow examples in Python, Julia and Matlab

GPL-3.0 License

Downloads
10.7K
Stars
45
Committers
27

Bot releases are visible (Hide)

PySDM - PySDM v2.47 Latest Release

Published by slayoo 7 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.46...v2.47

PySDM - PySDM v2.46

Published by slayoo 8 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.45...v2.46

PySDM - PySDM v2.45

Published by slayoo 8 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.44...v2.45

PySDM - PySDM v2.44

Published by slayoo 8 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.43...v2.44

PySDM - PySDM v2.43

Published by slayoo 8 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.42...v2.43

PySDM - PySDM v2.42

Published by slayoo 8 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.41...v2.42

PySDM - PySDM v2.41

Published by slayoo 9 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.40...v2.41

PySDM - PySDM v2.40

Published by slayoo 9 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.39...v2.40

PySDM - PySDM v2.39

Published by slayoo 9 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.38...v2.39

PySDM - PySDM v2.38

Published by slayoo 9 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.37...v2.37.1

PySDM - PySDM v2.37

Published by slayoo 9 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.36...v2.37

PySDM - PySDM v2.36

Published by slayoo 10 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.35...v2.36

PySDM - PySDM v2.35

Published by bhiogade 10 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.34...v2.35

PySDM - PySDM v2.34

Published by slayoo 10 months ago

What's Changed

  • stable water isotopologues:

    • new base attributes: Moles1H, Moles16O, MolesLightWater + havy isotopes via make_mole_amount_factory (previously developed for Hoppel gap)
    • new derived attributes: isotopic deltas (via new make_delta_factory)
    • backend isotope methods: isotopic_delta via physics.trivia (both CPU and GPU)
    • sketch of IsotopicFractionation dynamic (attribite dependencies, trigerring delta calculation)
    • VSMOW constants
    • isotope-related physics formulae:
      • isotope_equilibrium_fractionation_factors: BarkanAndLuz2005 (Oxygen 17, liquid), HoritaAndWesolowski1994 (Oxygen 18 and Deuterium, liquid), Majoube1970 (Oxygen 18, ice), Majoube1971 (Oxygen 18, liquid), MerlivatAndNief1967 (Deuterium, liquid & ice), VanHook1968 (D, T, O18, O17; liquid & ice)
      • isotope_meteoric_water_line_excess: Dansgaard1964 (Oxygen 18 vs. Deuterium), BarkanAndLuz2007 (Oxygen 17 vs. Oxygen 18); Craig 1961 Fig 1 and Barkan & Luz 2007 Fig 4 unit tests
      • isotope_ratio_evolution: MerlivatAndJouzel1979 (differential), RayleighDistillation (integral) + test checking when these two match
    • trivia formulae: isotopic_delta_2_ratio, isotopic_ratio_2_delta, isotopic_enrichment_to_delta_SMOW, mixing_ratio_to_specific_content
    • new examples (all environment-free, depicting formulae):
      • Bolot_et_al_2013: Fig 1 (incl. unit tests)
      • Merlivat_and_Nief_1967: Fig 2 (incl. unit tests)
      • Pierchala_et_al_2022: Fig 3 & 4 (incl. smoke tests)
      • Van_Hook_1968: Fig 1
  • formulae machinery:

    • constants_defaults: all calculations logic moved to compute_derived_values function called from Formulae ctor
    • PPM, PER_CENT, PER_MEG, PER_MILLE
    • dry-air molar mass derived from NIST N2, O2, Ar and C composition ratios
    • water molar mass derived from VSMOW isotopic ratios
  • CI:

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.33...v2.34

PySDM - PySDM v2.33

Published by slayoo 11 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.32...v2.33

PySDM - PySDM v2.32

Published by slayoo 11 months ago

What's Changed

Full Changelog: https://github.com/open-atmos/PySDM/compare/v2.31...v2.32

PySDM - PySDM v2.31

Published by slayoo 12 months ago

  • added argument-range checks for GunnKinzer1949 interpolation of terminal velocities (thanks @bradybhalla for reporting and identifying the issue, thanks @abulenok for providing the fix)
  • failing Particulator instantiation if user supplies values for a derived attribute
  • simplifcations/cleanups in dry_volume & acidity attributes code
  • disabling multi-threading on arm64 until we have a fix for atomic operations (thanks @jtbuch and @pb475 for reporting the problem and help with debugging it!)
PySDM - PySDM v2.30

Published by slayoo about 1 year ago

  • mass instead of volume as base attribute (incl. introduction of physics.particle_shape_and_density) #1147
  • new cases for test_attribute_update_single_breakup (#1158)
  • compatibility fixes for newer versions of setuptools_scm
  • docstring cleanups

thanks @abulenok, @AgnieszkaMakulska & @Delcior

PySDM - PySDM v2.29

Published by abulenok about 1 year ago

  • added CPU vs. GPU performance comparison for the Srivastava_1978 setup
  • removed spurious index copying in attributes
PySDM - PySDM v2.28

Published by slayoo about 1 year ago

  • refactor in GPU backend using @cached_property instead of lengthy ctors in methods classes (results in a lazy evaluation bonus)
  • dropping support for Python 3.7 (due to @cached_property, and in line with 3.7 end of life)
  • C code syntax fixes & cleanups in GPU backend
  • atomicAdd workaround for double precision type on older CUDA (#1138)
Package Rankings
Top 9.81% on Pypi.org
Badges
Extracted from project README
Python 3 LLVM CUDA Linux OK macOS OK Windows OK Jupyter Maintenance OpenHub status DOI EU Funding PL Funding US Funding License: GPL v3 Github Actions Build Status Appveyor Build status Coverage Status PyPI version API docs Python 3 Numba LLVM CUDA NumPy pytest Colab Codecov PyPI GithubActions Jupyter PyCharm
Related Projects