PySDM-examples 2.91__tar.gz → 2.92__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.91 → pysdm_examples-2.92}/PKG-INFO +1 -1
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bulenok_2023_MasterThesis/__init__.py +0 -3
- pysdm_examples-2.92/PySDM_examples/Bulenok_2023_MasterThesis/performance_comparison_Srivastava_Setup.py +225 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bulenok_2023_MasterThesis/utils.py +10 -21
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples.egg-info/PKG-INFO +1 -1
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples.egg-info/SOURCES.txt +1 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/MANIFEST.in +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abade_and_Albuquerque_2024/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abade_and_Albuquerque_2024/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abade_and_Albuquerque_2024/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abdul_Razzak_Ghan_2000/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abdul_Razzak_Ghan_2000/aerosol.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abdul_Razzak_Ghan_2000/data_from_ARG2000_paper.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abdul_Razzak_Ghan_2000/data_from_CloudMicrophysics_ARG.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abdul_Razzak_Ghan_2000/run_ARG_parcel.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Alpert_and_Knopf_2016/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Alpert_and_Knopf_2016/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Alpert_and_Knopf_2016/table.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Alpert_and_Knopf_2016/table_1.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Alpert_and_Knopf_2016/table_2.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_and_Shima_2017/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_and_Shima_2017/example.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_and_Shima_2017/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_and_Shima_2017/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2015/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2015/example.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2015/example_benchmark.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2015/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2015/spin_up.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/commons.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/curved_text.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/frozen_fraction.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/make_particulator.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/plots.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/run_simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bartman_2020_MasterThesis/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bartman_2020_MasterThesis/fig_4_adaptive_sdm.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bartman_2020_MasterThesis/fig_5_SCIPY_VS_ADAPTIVE.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bartman_et_al_2021/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bartman_et_al_2021/label.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Berry_1967/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Berry_1967/example.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Berry_1967/example_fig_6.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Berry_1967/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Berry_1967/spectrum_plotter.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bieli_et_al_2022/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bieli_et_al_2022/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bieli_et_al_2022/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bolin_1958/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bolot_et_al_2013/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bulenok_2023_MasterThesis/setups.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Ervens_and_Feingold_2012/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Ervens_and_Feingold_2012/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Gedzelman_and_Arnold_1994/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Grabowski_and_Pawlowska_2023/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Grabowski_and_Pawlowska_2023/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Grabowski_and_Pawlowska_2023/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Graf_et_al_2019/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jaruga_and_Pawlowska_2018/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/plotting.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/table_3.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Kreidenweis_et_al_2003/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Kreidenweis_et_al_2003/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Kreidenweis_et_al_2003/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Lamb_et_al_2017/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Lowe_et_al_2019/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Lowe_et_al_2019/aerosol.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Lowe_et_al_2019/aerosol_code.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Lowe_et_al_2019/constants_def.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Lowe_et_al_2019/plot_helper.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Lowe_et_al_2019/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Lowe_et_al_2019/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Merlivat_and_Nief_1967/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Miyake_et_al_1968/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Morrison_and_Grabowski_2007/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Morrison_and_Grabowski_2007/common.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Morrison_and_Grabowski_2007/cumulus.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Morrison_and_Grabowski_2007/strato_cumulus.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Niedermeier_et_al_2014/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Niedermeier_et_al_2014/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Niedermeier_et_al_2014/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Pierchala_et_al_2022/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Pierchala_et_al_2022/commons.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Pyrcel/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Pyrcel/profile_plotter.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Pyrcel/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Pyrcel/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Pyrcel/tutorial_settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Pyrcel/tutorial_simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Rozanski_and_Sonntag_1982/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/error_measure.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/example.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/example_timing.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/spectrum_plotter.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/tutorial_example.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/tutorial_plotter.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/tutorial_settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shipway_and_Hill_2012/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shipway_and_Hill_2012/mpdata_1d.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shipway_and_Hill_2012/plot.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shipway_and_Hill_2012/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shipway_and_Hill_2012/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Singer_Ward/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Singer_Ward/aerosol.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Srivastava_1982/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Srivastava_1982/equations.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Srivastava_1982/example.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Srivastava_1982/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Srivastava_1982/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/fields.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/gui.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/gui_controller.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/gui_settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/gui_viewer.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/make_default_product_collection.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/mpdata_2d.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/plots.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/sounding.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/storage.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Van_Hook_1968/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Yang_et_al_2018/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Yang_et_al_2018/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Yang_et_al_2018/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Azimi/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Azimi/cloudy_data.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Azimi/cloudy_data_0d.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Azimi/settings1D.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Azimi/simulation_0D.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/plot_rates.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/settings1D.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/settings_0D.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/simulation1D.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/simulation_0D.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/simulation_ss.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/seeding/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/seeding/settings.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/seeding/simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/utils/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/utils/basic_simulation.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/utils/dummy_controller.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/utils/notebook_vars.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/utils/progbar_controller.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/utils/read_vtk_1d.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/utils/widgets/__init__.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/utils/widgets/freezer.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/utils/widgets/progbar_updater.py +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples.egg-info/dependency_links.txt +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples.egg-info/requires.txt +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples.egg-info/top_level.txt +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/README.md +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/docs/pysdm_examples_landing.md +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/pyproject.toml +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/setup.cfg +0 -0
- {pysdm_examples-2.91 → pysdm_examples-2.92}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PySDM-examples
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.92
|
|
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
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
import subprocess
|
|
2
|
+
import os
|
|
3
|
+
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
import numba # pylint: disable=unused-import
|
|
6
|
+
|
|
7
|
+
from PySDM_examples.Bulenok_2023_MasterThesis.utils import (
|
|
8
|
+
go_benchmark,
|
|
9
|
+
process_results,
|
|
10
|
+
plot_processed_results,
|
|
11
|
+
write_to_file,
|
|
12
|
+
)
|
|
13
|
+
from PySDM_examples.Bulenok_2023_MasterThesis.setups import (
|
|
14
|
+
setup_coalescence_only_sim,
|
|
15
|
+
setup_breakup_only_sim,
|
|
16
|
+
setup_coalescence_breakup_sim,
|
|
17
|
+
)
|
|
18
|
+
|
|
19
|
+
from PySDM.backends import GPU, CPU
|
|
20
|
+
from PySDM.physics import si
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def main(plot: bool = True, save: str = None):
|
|
24
|
+
|
|
25
|
+
TIMESTAMP = str(datetime.now().strftime("%Y-%d-%m_%Hh-%Mm-%Ss"))
|
|
26
|
+
|
|
27
|
+
SIM_RUN_FNAME = "env_name_" + TIMESTAMP
|
|
28
|
+
|
|
29
|
+
assert not os.path.isfile(SIM_RUN_FNAME)
|
|
30
|
+
|
|
31
|
+
cmd = [
|
|
32
|
+
"bash",
|
|
33
|
+
"-c",
|
|
34
|
+
# pylint: disable=no-member
|
|
35
|
+
f"echo NUMBA_DEFAULT_NUM_THREADS: {numba.config.NUMBA_DEFAULT_NUM_THREADS}"
|
|
36
|
+
+ f">> {SIM_RUN_FNAME}",
|
|
37
|
+
]
|
|
38
|
+
subprocess.run(cmd, check=False)
|
|
39
|
+
subprocess.run(
|
|
40
|
+
[ # pylint: disable=no-member
|
|
41
|
+
"bash",
|
|
42
|
+
"-c",
|
|
43
|
+
f"echo NUMBA_NUM_THREADS: {numba.config.NUMBA_NUM_THREADS} >> {SIM_RUN_FNAME}",
|
|
44
|
+
],
|
|
45
|
+
check=False,
|
|
46
|
+
)
|
|
47
|
+
subprocess.run(["bash", "-c", f"lscpu >> {SIM_RUN_FNAME}"], check=False)
|
|
48
|
+
subprocess.run(["bash", "-c", f"nvidia-smi >> {SIM_RUN_FNAME}"], check=False)
|
|
49
|
+
subprocess.run(["bash", "-c", f"nvidia-smi -L >> {SIM_RUN_FNAME}"], check=False)
|
|
50
|
+
subprocess.run(["bash", "-c", f"cat /proc/cpuinfo >> {SIM_RUN_FNAME}"], check=False)
|
|
51
|
+
|
|
52
|
+
CI = "CI" in os.environ
|
|
53
|
+
|
|
54
|
+
exponents = [3, 5, 8, 10, 12, 14, 16, 18, 20, 22, 24] if not CI else [3, 5]
|
|
55
|
+
n_sds = [2**i for i in exponents]
|
|
56
|
+
|
|
57
|
+
numba_n_threads = [1, 2, 4, 5, 6, 8, 10] if not CI else [1, 2]
|
|
58
|
+
|
|
59
|
+
n_realisations = 3 if not CI else 2
|
|
60
|
+
seeds = list(range(n_realisations))
|
|
61
|
+
|
|
62
|
+
n_steps_short = 100 if not CI else 3
|
|
63
|
+
n_steps_full = 2048 if not CI else 3
|
|
64
|
+
|
|
65
|
+
# # Benchmark regular setup (without scaling)
|
|
66
|
+
|
|
67
|
+
# ### Coalescence-only
|
|
68
|
+
|
|
69
|
+
res_coalescence_only = go_benchmark(
|
|
70
|
+
setup_coalescence_only_sim,
|
|
71
|
+
n_sds,
|
|
72
|
+
n_steps_short,
|
|
73
|
+
seeds,
|
|
74
|
+
numba_n_threads=numba_n_threads,
|
|
75
|
+
double_precision=True,
|
|
76
|
+
sim_run_filename=SIM_RUN_FNAME + "-coalescence",
|
|
77
|
+
backends=[CPU, GPU],
|
|
78
|
+
)
|
|
79
|
+
coalescence_only_processed = process_results(res_coalescence_only)
|
|
80
|
+
filename = f"{SIM_RUN_FNAME}-results-coalescence-double-n_steps{n_steps_short}"
|
|
81
|
+
if plot:
|
|
82
|
+
plot_processed_results(
|
|
83
|
+
coalescence_only_processed,
|
|
84
|
+
plot_title=f"coalescence-only (n_steps: {n_steps_short})",
|
|
85
|
+
plot_filename=filename + ".svg",
|
|
86
|
+
)
|
|
87
|
+
if save is not None:
|
|
88
|
+
write_to_file(filename=filename + ".txt", d=coalescence_only_processed)
|
|
89
|
+
|
|
90
|
+
# ### Breakup-only
|
|
91
|
+
|
|
92
|
+
res_breakup_only = go_benchmark(
|
|
93
|
+
setup_breakup_only_sim,
|
|
94
|
+
n_sds,
|
|
95
|
+
n_steps_short,
|
|
96
|
+
seeds,
|
|
97
|
+
numba_n_threads=numba_n_threads,
|
|
98
|
+
double_precision=True,
|
|
99
|
+
sim_run_filename=SIM_RUN_FNAME + "-breakup",
|
|
100
|
+
backends=[CPU, GPU],
|
|
101
|
+
)
|
|
102
|
+
breakup_only_processed = process_results(res_breakup_only)
|
|
103
|
+
filename = f"{SIM_RUN_FNAME}-results-breakup-double-n_steps{n_steps_short}"
|
|
104
|
+
if plot:
|
|
105
|
+
plot_processed_results(
|
|
106
|
+
breakup_only_processed,
|
|
107
|
+
plot_title=f"breakup-only (n_steps: {n_steps_short})",
|
|
108
|
+
plot_filename=filename + ".svg",
|
|
109
|
+
)
|
|
110
|
+
if save is not None:
|
|
111
|
+
write_to_file(filename=filename + ".txt", d=breakup_only_processed)
|
|
112
|
+
|
|
113
|
+
# ### Coalescence and Breakup
|
|
114
|
+
|
|
115
|
+
res_coal_breakup = go_benchmark(
|
|
116
|
+
setup_coalescence_breakup_sim,
|
|
117
|
+
n_sds,
|
|
118
|
+
n_steps_full,
|
|
119
|
+
seeds,
|
|
120
|
+
numba_n_threads=numba_n_threads,
|
|
121
|
+
double_precision=True,
|
|
122
|
+
sim_run_filename=SIM_RUN_FNAME + "-coal-break",
|
|
123
|
+
backends=[CPU, GPU],
|
|
124
|
+
)
|
|
125
|
+
coal_breakup_processed = process_results(res_coal_breakup)
|
|
126
|
+
filename = f"{SIM_RUN_FNAME}-results-coal_with_breakup-double-n_steps{n_steps_full}"
|
|
127
|
+
if plot:
|
|
128
|
+
plot_processed_results(
|
|
129
|
+
coal_breakup_processed,
|
|
130
|
+
plot_title=f"coalescence+breakup (n_steps: {n_steps_full})",
|
|
131
|
+
plot_filename=filename + ".svg",
|
|
132
|
+
)
|
|
133
|
+
if save is not None:
|
|
134
|
+
write_to_file(filename=filename + ".txt", d=coal_breakup_processed)
|
|
135
|
+
|
|
136
|
+
# # Benchmark setup with scaling
|
|
137
|
+
|
|
138
|
+
def total_number_from_n_sd(n_sd):
|
|
139
|
+
return n_sd * 1e8
|
|
140
|
+
|
|
141
|
+
def dv_from_n_sd(n_sd):
|
|
142
|
+
return n_sd * (0.125 * si.m**3)
|
|
143
|
+
|
|
144
|
+
# ### Coalescence-only
|
|
145
|
+
|
|
146
|
+
res_coalescence_only_scaled = go_benchmark(
|
|
147
|
+
setup_coalescence_only_sim,
|
|
148
|
+
n_sds,
|
|
149
|
+
n_steps_short,
|
|
150
|
+
seeds,
|
|
151
|
+
numba_n_threads=numba_n_threads,
|
|
152
|
+
double_precision=True,
|
|
153
|
+
sim_run_filename=SIM_RUN_FNAME + "-coalescence-scaled",
|
|
154
|
+
total_number=total_number_from_n_sd,
|
|
155
|
+
dv=dv_from_n_sd,
|
|
156
|
+
backends=[CPU, GPU],
|
|
157
|
+
)
|
|
158
|
+
coalescence_only_processed_scaled = process_results(res_coalescence_only_scaled)
|
|
159
|
+
filename = (
|
|
160
|
+
f"{SIM_RUN_FNAME}-results-scaled-coalescence-double-n_steps{n_steps_short}"
|
|
161
|
+
)
|
|
162
|
+
if plot:
|
|
163
|
+
plot_processed_results(
|
|
164
|
+
coalescence_only_processed_scaled,
|
|
165
|
+
plot_title=f"coalescence-only with scaling (n_steps: {n_steps_short})",
|
|
166
|
+
plot_filename=filename + ".svg",
|
|
167
|
+
)
|
|
168
|
+
if save is not None:
|
|
169
|
+
write_to_file(filename=filename + ".txt", d=coalescence_only_processed_scaled)
|
|
170
|
+
|
|
171
|
+
# ### Breakup-only
|
|
172
|
+
|
|
173
|
+
res_breakup_only_scaled = go_benchmark(
|
|
174
|
+
setup_breakup_only_sim,
|
|
175
|
+
n_sds,
|
|
176
|
+
n_steps_short,
|
|
177
|
+
seeds,
|
|
178
|
+
numba_n_threads=numba_n_threads,
|
|
179
|
+
double_precision=True,
|
|
180
|
+
sim_run_filename=SIM_RUN_FNAME + "-breakup-scaled",
|
|
181
|
+
total_number=total_number_from_n_sd,
|
|
182
|
+
dv=dv_from_n_sd,
|
|
183
|
+
backends=[CPU, GPU],
|
|
184
|
+
)
|
|
185
|
+
breakup_only_processed_scaled = process_results(res_breakup_only_scaled)
|
|
186
|
+
filename = f"{SIM_RUN_FNAME}-results-scaled-breakup-double-n_steps{n_steps_short}"
|
|
187
|
+
if plot:
|
|
188
|
+
plot_processed_results(
|
|
189
|
+
breakup_only_processed_scaled,
|
|
190
|
+
plot_title=f"breakup-only with scaling (n_steps: {n_steps_short})",
|
|
191
|
+
plot_filename=filename + ".svg",
|
|
192
|
+
)
|
|
193
|
+
if save is not None:
|
|
194
|
+
write_to_file(filename=filename + ".txt", d=breakup_only_processed_scaled)
|
|
195
|
+
|
|
196
|
+
# ### Coalescence and Breakup
|
|
197
|
+
|
|
198
|
+
res_coal_breakup_scaled = go_benchmark(
|
|
199
|
+
setup_coalescence_breakup_sim,
|
|
200
|
+
n_sds,
|
|
201
|
+
n_steps_full,
|
|
202
|
+
seeds,
|
|
203
|
+
numba_n_threads=numba_n_threads,
|
|
204
|
+
double_precision=True,
|
|
205
|
+
sim_run_filename=SIM_RUN_FNAME + "-coal-break-scaled",
|
|
206
|
+
total_number=total_number_from_n_sd,
|
|
207
|
+
dv=dv_from_n_sd,
|
|
208
|
+
backends=[CPU, GPU],
|
|
209
|
+
)
|
|
210
|
+
coal_breakup_processed_scaled = process_results(res_coal_breakup_scaled)
|
|
211
|
+
filename = (
|
|
212
|
+
f"{SIM_RUN_FNAME}-results-scaled-coal_with_breakup-double-n_steps{n_steps_full}"
|
|
213
|
+
)
|
|
214
|
+
if plot:
|
|
215
|
+
plot_processed_results(
|
|
216
|
+
coal_breakup_processed_scaled,
|
|
217
|
+
plot_title=f"coalescence+breakup with scaling (n_steps: {n_steps_full})",
|
|
218
|
+
plot_filename=filename + ".svg",
|
|
219
|
+
)
|
|
220
|
+
if save is not None:
|
|
221
|
+
write_to_file(filename=filename + ".txt", d=coal_breakup_processed_scaled)
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
if __name__ == "__main__":
|
|
225
|
+
main(plot="CI" not in os.environ, save=".")
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Bulenok_2023_MasterThesis/utils.py
RENAMED
|
@@ -6,7 +6,6 @@ import time
|
|
|
6
6
|
import numba
|
|
7
7
|
import numpy as np
|
|
8
8
|
from matplotlib import pyplot
|
|
9
|
-
from open_atmos_jupyter_utils import show_plot
|
|
10
9
|
|
|
11
10
|
from PySDM.backends import CPU, GPU
|
|
12
11
|
|
|
@@ -208,11 +207,11 @@ class PlottingHelpers:
|
|
|
208
207
|
|
|
209
208
|
def plot_processed_results(
|
|
210
209
|
processed_d,
|
|
211
|
-
|
|
210
|
+
*,
|
|
212
211
|
plot_label="",
|
|
213
212
|
plot_title=None,
|
|
214
213
|
metric="min",
|
|
215
|
-
plot_filename
|
|
214
|
+
plot_filename,
|
|
216
215
|
markers=None,
|
|
217
216
|
colors=None,
|
|
218
217
|
):
|
|
@@ -257,33 +256,27 @@ def plot_processed_results(
|
|
|
257
256
|
if plot_title:
|
|
258
257
|
pyplot.title(plot_title)
|
|
259
258
|
|
|
260
|
-
|
|
261
|
-
if plot_filename:
|
|
262
|
-
show_plot(filename=plot_filename)
|
|
263
|
-
else:
|
|
264
|
-
pyplot.show()
|
|
259
|
+
pyplot.savefig(plot_filename)
|
|
265
260
|
|
|
266
261
|
|
|
267
262
|
def plot_processed_on_same_plot(coal_d, break_d, coal_break_d):
|
|
268
|
-
|
|
269
|
-
plot_processed_results(
|
|
270
|
-
plot_processed_results(
|
|
271
|
-
|
|
272
|
-
show_plot()
|
|
263
|
+
filename = "same_plot.svg"
|
|
264
|
+
plot_processed_results(coal_d, plot_label="-c", plot_filename=filename)
|
|
265
|
+
plot_processed_results(break_d, plot_label="-b", plot_filename=filename)
|
|
266
|
+
plot_processed_results(coal_break_d, plot_label="-cb", plot_filename=filename)
|
|
273
267
|
|
|
274
268
|
|
|
275
269
|
def plot_time_per_step(
|
|
276
270
|
processed_d,
|
|
277
271
|
n_sd,
|
|
278
|
-
|
|
272
|
+
*,
|
|
279
273
|
plot_label="",
|
|
280
274
|
plot_title=None,
|
|
281
275
|
metric="mean",
|
|
282
|
-
plot_filename
|
|
276
|
+
plot_filename,
|
|
283
277
|
step_from_to=None,
|
|
284
278
|
):
|
|
285
279
|
backends = PlottingHelpers.get_sorted_backend_list(processed_d)
|
|
286
|
-
|
|
287
280
|
markers = PlottingHelpers.get_backend_markers(backends)
|
|
288
281
|
|
|
289
282
|
for backend in backends:
|
|
@@ -305,8 +298,4 @@ def plot_time_per_step(
|
|
|
305
298
|
if plot_title:
|
|
306
299
|
pyplot.title(plot_title + f"(n_sd: {n_sd})")
|
|
307
300
|
|
|
308
|
-
|
|
309
|
-
if plot_filename:
|
|
310
|
-
show_plot(filename=plot_filename)
|
|
311
|
-
else:
|
|
312
|
-
pyplot.show()
|
|
301
|
+
pyplot.savefig(plot_filename)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PySDM-examples
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.92
|
|
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
|
|
@@ -53,6 +53,7 @@ PySDM_examples/Bieli_et_al_2022/simulation.py
|
|
|
53
53
|
PySDM_examples/Bolin_1958/__init__.py
|
|
54
54
|
PySDM_examples/Bolot_et_al_2013/__init__.py
|
|
55
55
|
PySDM_examples/Bulenok_2023_MasterThesis/__init__.py
|
|
56
|
+
PySDM_examples/Bulenok_2023_MasterThesis/performance_comparison_Srivastava_Setup.py
|
|
56
57
|
PySDM_examples/Bulenok_2023_MasterThesis/setups.py
|
|
57
58
|
PySDM_examples/Bulenok_2023_MasterThesis/utils.py
|
|
58
59
|
PySDM_examples/Ervens_and_Feingold_2012/__init__.py
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abade_and_Albuquerque_2024/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abade_and_Albuquerque_2024/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abade_and_Albuquerque_2024/simulation.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abdul_Razzak_Ghan_2000/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abdul_Razzak_Ghan_2000/aerosol.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Abdul_Razzak_Ghan_2000/run_ARG_parcel.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Alpert_and_Knopf_2016/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Alpert_and_Knopf_2016/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_and_Shima_2017/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_and_Shima_2017/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_and_Shima_2017/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/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
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/frozen_fraction.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/make_particulator.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Arabas_et_al_2023/run_simulation.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/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.91 → pysdm_examples-2.92}/PySDM_examples/Bulenok_2023_MasterThesis/setups.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Ervens_and_Feingold_2012/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Ervens_and_Feingold_2012/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Gedzelman_and_Arnold_1994/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Grabowski_and_Pawlowska_2023/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Grabowski_and_Pawlowska_2023/settings.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jaruga_and_Pawlowska_2018/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/plotting.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/simulation.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Jensen_and_Nugent_2017/table_3.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Kreidenweis_et_al_2003/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Kreidenweis_et_al_2003/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Kreidenweis_et_al_2003/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
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Merlivat_and_Nief_1967/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Morrison_and_Grabowski_2007/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Morrison_and_Grabowski_2007/common.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Morrison_and_Grabowski_2007/cumulus.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Niedermeier_et_al_2014/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Niedermeier_et_al_2014/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Niedermeier_et_al_2014/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
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Rozanski_and_Sonntag_1982/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/error_measure.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/example_timing.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/spectrum_plotter.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/tutorial_example.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/tutorial_plotter.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shima_et_al_2009/tutorial_settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shipway_and_Hill_2012/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shipway_and_Hill_2012/mpdata_1d.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shipway_and_Hill_2012/settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Shipway_and_Hill_2012/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
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/gui_controller.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/gui_settings.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/gui_viewer.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/mpdata_2d.py
RENAMED
|
File without changes
|
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/Szumowski_et_al_1998/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
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/__init__.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/plot_rates.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/settings1D.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/settings_0D.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/simulation1D.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/simulation_0D.py
RENAMED
|
File without changes
|
{pysdm_examples-2.91 → pysdm_examples-2.92}/PySDM_examples/deJong_Mackay_et_al_2023/simulation_ss.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
|
|
File without changes
|
|
File without changes
|