PySDM-examples 2.130__tar.gz → 2.131__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PKG-INFO +2 -1
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lowe_et_al_2019/settings.py +22 -10
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lowe_et_al_2019/simulation.py +1 -4
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/example.py +12 -1
- pysdm_examples-2.131/PySDM_examples/Zaba_et_al/__init__.py +7 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/pysdm_examples.egg-info/PKG-INFO +2 -1
- {pysdm_examples-2.130 → pysdm_examples-2.131}/pysdm_examples.egg-info/SOURCES.txt +1 -1
- {pysdm_examples-2.130 → pysdm_examples-2.131}/pysdm_examples.egg-info/requires.txt +1 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/setup.py +4 -0
- pysdm_examples-2.130/PySDM_examples/Zaba_et_al_2025/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/MANIFEST.in +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abade_and_Albuquerque_2024/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abade_and_Albuquerque_2024/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abade_and_Albuquerque_2024/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abdul_Razzak_Ghan_2000/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abdul_Razzak_Ghan_2000/aerosol.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abdul_Razzak_Ghan_2000/data_from_ARG2000_paper.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abdul_Razzak_Ghan_2000/data_from_CloudMicrophysics_ARG.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abdul_Razzak_Ghan_2000/run_ARG_parcel.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Alpert_and_Knopf_2016/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Alpert_and_Knopf_2016/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Alpert_and_Knopf_2016/table.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Alpert_and_Knopf_2016/table_1.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Alpert_and_Knopf_2016/table_2.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_and_Shima_2017/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_and_Shima_2017/example.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_and_Shima_2017/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_and_Shima_2017/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2015/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2015/example.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2015/example_benchmark.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2015/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2015/spin_up.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/commons.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/curved_text.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/frozen_fraction.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/make_particulator.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/plots.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/run_simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bartman_2020_MasterThesis/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bartman_2020_MasterThesis/fig_4_adaptive_sdm.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bartman_2020_MasterThesis/fig_5_SCIPY_VS_ADAPTIVE.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bartman_et_al_2021/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bartman_et_al_2021/label.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Berry_1967/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Berry_1967/example.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Berry_1967/example_fig_6.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Berry_1967/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Berry_1967/spectrum_plotter.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bieli_et_al_2022/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bieli_et_al_2022/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bieli_et_al_2022/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bolin_1958/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bolot_et_al_2013/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bulenok_2023_MasterThesis/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bulenok_2023_MasterThesis/performance_comparison_Srivastava_Setup.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bulenok_2023_MasterThesis/setups.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bulenok_2023_MasterThesis/utils.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Ervens_and_Feingold_2012/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Ervens_and_Feingold_2012/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Fisher_1991/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Gedzelman_and_Arnold_1994/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Gonfiantini_1986/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Grabowski_and_Pawlowska_2023/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Grabowski_and_Pawlowska_2023/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Grabowski_and_Pawlowska_2023/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Graf_et_al_2019/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jaruga_and_Pawlowska_2018/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/plotting.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/table_3.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jouzel_and_Merlivat_1984/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jouzel_and_Merlivat_1984/thermodynamic_profiles.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kinzer_And_Gunn_1951/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kinzer_And_Gunn_1951/table_1_and_2.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kreidenweis_et_al_2003/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kreidenweis_et_al_2003/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kreidenweis_et_al_2003/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lamb_et_al_2017/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lowe_et_al_2019/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lowe_et_al_2019/aerosol.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lowe_et_al_2019/aerosol_code.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lowe_et_al_2019/constants_def.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lowe_et_al_2019/plot_helper.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Merlivat_and_Nief_1967/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Miyake_et_al_1968/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Morrison_and_Grabowski_2007/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Morrison_and_Grabowski_2007/common.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Morrison_and_Grabowski_2007/strato_cumulus.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Niedermeier_et_al_2014/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Niedermeier_et_al_2014/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Niedermeier_et_al_2014/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Pierchala_et_al_2022/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Pierchala_et_al_2022/commons.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Pruppacher_and_Rasmussen_1979/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Pyrcel/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Pyrcel/profile_plotter.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Pyrcel/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Pyrcel/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Rogers_1975/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Rozanski_and_Sonntag_1982/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Rozanski_and_Sonntag_1982/multibox.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/error_measure.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/example_timing.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/spectrum_plotter.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/tutorial_example.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/tutorial_plotter.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/tutorial_settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shipway_and_Hill_2012/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shipway_and_Hill_2012/mpdata_1d.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shipway_and_Hill_2012/plot.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shipway_and_Hill_2012/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shipway_and_Hill_2012/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Singer_Ward/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Singer_Ward/aerosol.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/data/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/data/reference_bulk.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/data/simulation_data.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Srivastava_1982/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Srivastava_1982/equations.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Srivastava_1982/example.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Srivastava_1982/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Srivastava_1982/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Stewart_1975/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Toon_et_al_1980/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Van_Hook_1968/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Yang_et_al_2018/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Yang_et_al_2018/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Yang_et_al_2018/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/_HOWTOs/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Azimi/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Azimi/cloudy_data.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Azimi/cloudy_data_0d.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Azimi/settings1D.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Azimi/simulation_0D.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/plot_rates.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/settings1D.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/settings_0D.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/simulation1D.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/simulation_0D.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/simulation_ss.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/seeding/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/seeding/settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/seeding/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/basic_simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/dummy_controller.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/fields.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/gui.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/gui_controller.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/gui_settings.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/gui_viewer.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/make_default_product_collection.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/mpdata_2d.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/plots.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/simulation.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/storage.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/progbar_controller.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/pvanim.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/read_vtk_1d.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/widgets/__init__.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/widgets/freezer.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/widgets/progbar_updater.py +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/README.md +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/docs/pysdm_examples_landing.md +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/pyproject.toml +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/pysdm_examples.egg-info/dependency_links.txt +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/pysdm_examples.egg-info/top_level.txt +0 -0
- {pysdm_examples-2.130 → pysdm_examples-2.131}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pysdm-examples
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.131
|
|
4
4
|
Summary: PySDM usage examples reproducing results from literature and depicting how to use PySDM from Python Jupyter notebooks
|
|
5
5
|
Home-page: https://github.com/open-atmos/PySDM
|
|
6
6
|
Author: https://github.com/open-atmos/PySDM/graphs/contributors
|
|
@@ -15,6 +15,7 @@ Requires-Dist: PyMPDATA
|
|
|
15
15
|
Requires-Dist: open-atmos-jupyter-utils
|
|
16
16
|
Requires-Dist: pystrict
|
|
17
17
|
Requires-Dist: matplotlib
|
|
18
|
+
Requires-Dist: Pillow
|
|
18
19
|
Requires-Dist: joblib
|
|
19
20
|
Requires-Dist: ipywidgets
|
|
20
21
|
Requires-Dist: seaborn
|
|
@@ -1,13 +1,33 @@
|
|
|
1
|
+
from functools import lru_cache
|
|
2
|
+
|
|
1
3
|
import numpy as np
|
|
2
4
|
from PySDM_examples.Lowe_et_al_2019.constants_def import LOWE_CONSTS
|
|
3
5
|
from pystrict import strict
|
|
4
6
|
|
|
5
7
|
from PySDM import Formulae
|
|
8
|
+
from PySDM.backends import CPU
|
|
6
9
|
from PySDM.initialisation.aerosol_composition import DryAerosolMixture
|
|
7
10
|
from PySDM.initialisation.sampling import spectral_sampling as spec_sampling
|
|
8
11
|
from PySDM.physics import si
|
|
9
12
|
|
|
10
13
|
|
|
14
|
+
@lru_cache
|
|
15
|
+
def backend(model):
|
|
16
|
+
return CPU(
|
|
17
|
+
formulae=Formulae(
|
|
18
|
+
surface_tension=model,
|
|
19
|
+
constants=LOWE_CONSTS,
|
|
20
|
+
diffusion_kinetics="LoweEtAl2019",
|
|
21
|
+
diffusion_thermics="LoweEtAl2019",
|
|
22
|
+
latent_heat_vapourisation="Lowe2019",
|
|
23
|
+
saturation_vapour_pressure="Lowe1977",
|
|
24
|
+
optical_albedo="Bohren1987",
|
|
25
|
+
optical_depth="Stephens1978",
|
|
26
|
+
),
|
|
27
|
+
override_jit_flags={"parallel": False},
|
|
28
|
+
)
|
|
29
|
+
|
|
30
|
+
|
|
11
31
|
@strict
|
|
12
32
|
class Settings:
|
|
13
33
|
def __init__(
|
|
@@ -22,16 +42,8 @@ class Settings:
|
|
|
22
42
|
assert model in ("Constant", "CompressedFilmOvadnevaite")
|
|
23
43
|
self.model = model
|
|
24
44
|
self.n_sd_per_mode = n_sd_per_mode
|
|
25
|
-
self.
|
|
26
|
-
|
|
27
|
-
constants=LOWE_CONSTS,
|
|
28
|
-
diffusion_kinetics="LoweEtAl2019",
|
|
29
|
-
diffusion_thermics="LoweEtAl2019",
|
|
30
|
-
latent_heat_vapourisation="Lowe2019",
|
|
31
|
-
saturation_vapour_pressure="Lowe1977",
|
|
32
|
-
optical_albedo="Bohren1987",
|
|
33
|
-
optical_depth="Stephens1978",
|
|
34
|
-
)
|
|
45
|
+
self.backend = backend(model)
|
|
46
|
+
self.formulae = self.backend.formulae
|
|
35
47
|
const = self.formulae.constants
|
|
36
48
|
self.aerosol = aerosol
|
|
37
49
|
self.spectral_sampling = spectral_sampling
|
|
@@ -3,7 +3,6 @@ from PySDM_examples.utils import BasicSimulation
|
|
|
3
3
|
|
|
4
4
|
import PySDM.products as PySDM_products
|
|
5
5
|
from PySDM import Builder
|
|
6
|
-
from PySDM.backends import CPU
|
|
7
6
|
from PySDM.dynamics import AmbientThermodynamics, Condensation
|
|
8
7
|
from PySDM.environments import Parcel
|
|
9
8
|
from PySDM.initialisation import equilibrate_wet_radii
|
|
@@ -15,9 +14,7 @@ class Simulation(BasicSimulation):
|
|
|
15
14
|
n_sd = settings.n_sd_per_mode * len(settings.aerosol.modes)
|
|
16
15
|
builder = Builder(
|
|
17
16
|
n_sd=n_sd,
|
|
18
|
-
backend=
|
|
19
|
-
formulae=settings.formulae, override_jit_flags={"parallel": False}
|
|
20
|
-
),
|
|
17
|
+
backend=settings.backend,
|
|
21
18
|
environment=Parcel(
|
|
22
19
|
dt=settings.dt,
|
|
23
20
|
mass_of_dry_air=settings.mass_of_dry_air,
|
|
@@ -12,11 +12,22 @@ from PySDM.environments import Box
|
|
|
12
12
|
from PySDM.initialisation.sampling.spectral_sampling import ConstantMultiplicity
|
|
13
13
|
from PySDM.products import ParticleVolumeVersusRadiusLogarithmSpectrum, WallTime
|
|
14
14
|
|
|
15
|
+
_BACKEND_CACHE = {}
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def backend_factory(backend_class, formulae):
|
|
19
|
+
key = backend_class.__name__ + ":" + str(formulae)
|
|
20
|
+
if key not in _BACKEND_CACHE:
|
|
21
|
+
_BACKEND_CACHE[key] = backend_class(formulae=formulae)
|
|
22
|
+
return _BACKEND_CACHE[key]
|
|
23
|
+
|
|
15
24
|
|
|
16
25
|
def run(settings, backend=CPU, observers=()):
|
|
17
26
|
env = Box(dv=settings.dv, dt=settings.dt)
|
|
18
27
|
builder = Builder(
|
|
19
|
-
n_sd=settings.n_sd,
|
|
28
|
+
n_sd=settings.n_sd,
|
|
29
|
+
backend=backend_factory(backend, formulae=settings.formulae),
|
|
30
|
+
environment=env,
|
|
20
31
|
)
|
|
21
32
|
attributes = {}
|
|
22
33
|
sampling = ConstantMultiplicity(settings.spectrum)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pysdm-examples
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.131
|
|
4
4
|
Summary: PySDM usage examples reproducing results from literature and depicting how to use PySDM from Python Jupyter notebooks
|
|
5
5
|
Home-page: https://github.com/open-atmos/PySDM
|
|
6
6
|
Author: https://github.com/open-atmos/PySDM/graphs/contributors
|
|
@@ -15,6 +15,7 @@ Requires-Dist: PyMPDATA
|
|
|
15
15
|
Requires-Dist: open-atmos-jupyter-utils
|
|
16
16
|
Requires-Dist: pystrict
|
|
17
17
|
Requires-Dist: matplotlib
|
|
18
|
+
Requires-Dist: Pillow
|
|
18
19
|
Requires-Dist: joblib
|
|
19
20
|
Requires-Dist: ipywidgets
|
|
20
21
|
Requires-Dist: seaborn
|
|
@@ -132,7 +132,7 @@ PySDM_examples/Van_Hook_1968/__init__.py
|
|
|
132
132
|
PySDM_examples/Yang_et_al_2018/__init__.py
|
|
133
133
|
PySDM_examples/Yang_et_al_2018/settings.py
|
|
134
134
|
PySDM_examples/Yang_et_al_2018/simulation.py
|
|
135
|
-
PySDM_examples/
|
|
135
|
+
PySDM_examples/Zaba_et_al/__init__.py
|
|
136
136
|
PySDM_examples/_HOWTOs/__init__.py
|
|
137
137
|
PySDM_examples/deJong_Azimi/__init__.py
|
|
138
138
|
PySDM_examples/deJong_Azimi/cloudy_data.py
|
|
@@ -30,6 +30,10 @@ setup(
|
|
|
30
30
|
"pystrict",
|
|
31
31
|
# https://github.com/matplotlib/matplotlib/issues/28551
|
|
32
32
|
"matplotlib" + ("!=3.9.1" if CI else ""),
|
|
33
|
+
"Pillow"
|
|
34
|
+
+ (
|
|
35
|
+
"<11.3.0" if CI else ""
|
|
36
|
+
), # matplotlib triggers deprecation warnings in 11.3.0
|
|
33
37
|
"joblib",
|
|
34
38
|
"ipywidgets",
|
|
35
39
|
"seaborn",
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abade_and_Albuquerque_2024/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abade_and_Albuquerque_2024/settings.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abdul_Razzak_Ghan_2000/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Abdul_Razzak_Ghan_2000/aerosol.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Alpert_and_Knopf_2016/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Alpert_and_Knopf_2016/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Alpert_and_Knopf_2016/table_1.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Alpert_and_Knopf_2016/table_2.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_and_Shima_2017/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_and_Shima_2017/example.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_and_Shima_2017/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_and_Shima_2017/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2015/example_benchmark.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/curved_text.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/frozen_fraction.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/make_particulator.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Arabas_et_al_2025/run_simulation.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bartman_2020_MasterThesis/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bulenok_2023_MasterThesis/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bulenok_2023_MasterThesis/setups.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Bulenok_2023_MasterThesis/utils.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Ervens_and_Feingold_2012/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Ervens_and_Feingold_2012/settings.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Gedzelman_and_Arnold_1994/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jaruga_and_Pawlowska_2018/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/plotting.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/simulation.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jensen_and_Nugent_2017/table_3.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Jouzel_and_Merlivat_1984/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kinzer_And_Gunn_1951/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kinzer_And_Gunn_1951/table_1_and_2.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kreidenweis_et_al_2003/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kreidenweis_et_al_2003/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Kreidenweis_et_al_2003/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lowe_et_al_2019/aerosol_code.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Lowe_et_al_2019/constants_def.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Merlivat_and_Nief_1967/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Morrison_and_Grabowski_2007/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Morrison_and_Grabowski_2007/common.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Niedermeier_et_al_2014/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Niedermeier_et_al_2014/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Niedermeier_et_al_2014/simulation.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Pierchala_et_al_2022/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Pierchala_et_al_2022/commons.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Rozanski_and_Sonntag_1982/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Rozanski_and_Sonntag_1982/multibox.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/error_measure.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/example_timing.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/spectrum_plotter.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/tutorial_example.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/tutorial_plotter.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shima_et_al_2009/tutorial_settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shipway_and_Hill_2012/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shipway_and_Hill_2012/mpdata_1d.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shipway_and_Hill_2012/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Shipway_and_Hill_2012/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/data/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/Spichtinger_et_al_2023/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/plot_rates.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/settings1D.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/deJong_Mackay_et_al_2023/settings_0D.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/gui_controller.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/gui_settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/gui_viewer.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/mpdata_2d.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/kinematic_2d/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.130 → pysdm_examples-2.131}/PySDM_examples/utils/widgets/progbar_updater.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|