PySDM-examples 2.70__tar.gz → 2.71__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.70 → PySDM-examples-2.71}/PKG-INFO +1 -1
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shipway_and_Hill_2012/mpdata_1d.py +34 -17
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shipway_and_Hill_2012/simulation.py +5 -4
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/gui_settings.py +7 -2
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/mpdata_2d.py +41 -34
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/simulation.py +7 -9
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples.egg-info/PKG-INFO +1 -1
- {PySDM-examples-2.70 → PySDM-examples-2.71}/setup.py +2 -1
- {PySDM-examples-2.70 → PySDM-examples-2.71}/MANIFEST.in +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abade_and_Albuquerque_2024/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abade_and_Albuquerque_2024/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abade_and_Albuquerque_2024/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abdul_Razzak_Ghan_2000/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abdul_Razzak_Ghan_2000/aerosol.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abdul_Razzak_Ghan_2000/data_from_ARG2000_paper.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abdul_Razzak_Ghan_2000/data_from_CloudMicrophysics_ARG.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abdul_Razzak_Ghan_2000/run_ARG_parcel.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Alpert_and_Knopf_2016/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Alpert_and_Knopf_2016/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Alpert_and_Knopf_2016/table.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Alpert_and_Knopf_2016/table_1.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Alpert_and_Knopf_2016/table_2.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_and_Shima_2017/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_and_Shima_2017/example.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_and_Shima_2017/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_and_Shima_2017/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2015/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2015/example.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2015/example_benchmark.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2015/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2015/spin_up.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/commons.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/curved_text.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/frozen_fraction.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/make_particulator.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/plots.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/run_simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bartman_2020_MasterThesis/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bartman_2020_MasterThesis/fig_4_adaptive_sdm.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bartman_2020_MasterThesis/fig_5_SCIPY_VS_ADAPTIVE.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bartman_et_al_2021/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bartman_et_al_2021/label.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Berry_1967/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Berry_1967/example.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Berry_1967/example_fig_6.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Berry_1967/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Berry_1967/spectrum_plotter.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bieli_et_al_2022/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bieli_et_al_2022/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bieli_et_al_2022/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bolot_et_al_2013/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bulenok_2023_MasterThesis/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bulenok_2023_MasterThesis/setups.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bulenok_2023_MasterThesis/utils.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Ervens_and_Feingold_2012/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Ervens_and_Feingold_2012/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Gedzelman_and_Arnold_1994/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Grabowski_and_Pawlowska_2023/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Grabowski_and_Pawlowska_2023/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Grabowski_and_Pawlowska_2023/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Graf_et_al_2019/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jaruga_and_Pawlowska_2018/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/plotting.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/table_3.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Kreidenweis_et_al_2003/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Kreidenweis_et_al_2003/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Kreidenweis_et_al_2003/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Lamb_et_al_2017/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Lowe_et_al_2019/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Lowe_et_al_2019/aerosol.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Lowe_et_al_2019/aerosol_code.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Lowe_et_al_2019/constants_def.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Lowe_et_al_2019/plot_helper.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Lowe_et_al_2019/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Lowe_et_al_2019/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Merlivat_and_Nief_1967/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Miyake_et_al_1968/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Morrison_and_Grabowski_2007/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Morrison_and_Grabowski_2007/common.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Morrison_and_Grabowski_2007/cumulus.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Morrison_and_Grabowski_2007/strato_cumulus.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Niedermeier_et_al_2014/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Niedermeier_et_al_2014/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Niedermeier_et_al_2014/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Pierchala_et_al_2022/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Pierchala_et_al_2022/commons.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Pyrcel/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Pyrcel/profile_plotter.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Pyrcel/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Pyrcel/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Pyrcel/tutorial_settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Pyrcel/tutorial_simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Rozanski_and_Sonntag_1982/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/error_measure.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/example.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/example_timing.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/spectrum_plotter.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/tutorial_example.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/tutorial_plotter.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/tutorial_settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shipway_and_Hill_2012/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shipway_and_Hill_2012/plot.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shipway_and_Hill_2012/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Singer_Ward/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Singer_Ward/aerosol.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Srivastava_1982/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Srivastava_1982/equations.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Srivastava_1982/example.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Srivastava_1982/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Srivastava_1982/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/fields.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/gui.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/gui_controller.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/gui_viewer.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/make_default_product_collection.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/plots.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/sounding.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/storage.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Van_Hook_1968/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Yang_et_al_2018/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Yang_et_al_2018/settings.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Yang_et_al_2018/simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Azimi/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Azimi/cloudy_data.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Azimi/cloudy_data_0d.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Azimi/settings1D.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Azimi/simulation_0D.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/plot_rates.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/settings1D.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/settings_0D.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/simulation1D.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/simulation_0D.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/simulation_ss.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/utils/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/utils/basic_simulation.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/utils/dummy_controller.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/utils/notebook_vars.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/utils/progbar_controller.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/utils/read_vtk_1d.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/utils/widgets/__init__.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/utils/widgets/freezer.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/utils/widgets/progbar_updater.py +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples.egg-info/SOURCES.txt +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples.egg-info/dependency_links.txt +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples.egg-info/requires.txt +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples.egg-info/top_level.txt +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/README.md +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/pyproject.toml +0 -0
- {PySDM-examples-2.70 → PySDM-examples-2.71}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PySDM-examples
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.71
|
|
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
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shipway_and_Hill_2012/mpdata_1d.py
RENAMED
|
@@ -1,4 +1,7 @@
|
|
|
1
|
+
from functools import cached_property
|
|
2
|
+
|
|
1
3
|
import numpy as np
|
|
4
|
+
|
|
2
5
|
from PyMPDATA import Options, ScalarField, Solver, Stepper, VectorField
|
|
3
6
|
from PyMPDATA.boundary_conditions import Extrapolated
|
|
4
7
|
|
|
@@ -19,41 +22,55 @@ class MPDATA_1D:
|
|
|
19
22
|
self.dt = dt
|
|
20
23
|
self.advector_of_t = advector_of_t
|
|
21
24
|
|
|
22
|
-
|
|
23
|
-
|
|
25
|
+
self._grid = (nz,)
|
|
26
|
+
self._options = Options(
|
|
24
27
|
n_iters=mpdata_settings["n_iters"],
|
|
25
28
|
infinite_gauge=mpdata_settings["iga"],
|
|
26
29
|
nonoscillatory=mpdata_settings["fct"],
|
|
27
30
|
third_order_terms=mpdata_settings["tot"],
|
|
28
31
|
)
|
|
29
|
-
stepper = Stepper(options=options, grid=grid, non_unit_g_factor=True)
|
|
30
32
|
bcs = (Extrapolated(),)
|
|
31
|
-
zZ_scalar = arakawa_c.z_scalar_coord(
|
|
32
|
-
|
|
33
|
+
zZ_scalar = arakawa_c.z_scalar_coord(self._grid) / nz
|
|
34
|
+
self._g_factor = ScalarField(
|
|
33
35
|
data=g_factor_of_zZ(zZ_scalar),
|
|
34
|
-
halo=
|
|
36
|
+
halo=self._options.n_halo,
|
|
35
37
|
boundary_conditions=bcs,
|
|
36
38
|
)
|
|
37
|
-
|
|
39
|
+
self._advector = VectorField(
|
|
38
40
|
data=(np.full(nz + 1, advector_of_t(0)),),
|
|
39
|
-
halo=
|
|
41
|
+
halo=self._options.n_halo,
|
|
40
42
|
boundary_conditions=bcs,
|
|
41
43
|
)
|
|
42
|
-
self.
|
|
44
|
+
self._advectee = ScalarField(
|
|
43
45
|
data=advectee_of_zZ_at_t0(zZ_scalar),
|
|
44
|
-
halo=
|
|
46
|
+
halo=self._options.n_halo,
|
|
45
47
|
boundary_conditions=bcs,
|
|
46
48
|
)
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
49
|
+
|
|
50
|
+
@cached_property
|
|
51
|
+
def solver(self):
|
|
52
|
+
return Solver(
|
|
53
|
+
stepper=Stepper(
|
|
54
|
+
options=self._options, grid=self._grid, non_unit_g_factor=True
|
|
55
|
+
),
|
|
56
|
+
advectee=self._advectee,
|
|
57
|
+
advector=self._advector,
|
|
58
|
+
g_factor=self._g_factor,
|
|
52
59
|
)
|
|
53
60
|
|
|
61
|
+
@property
|
|
62
|
+
def solver_cached(self):
|
|
63
|
+
return "solver" in self.__dict__
|
|
64
|
+
|
|
65
|
+
@property
|
|
66
|
+
def advectee(self):
|
|
67
|
+
return (self.solver.advectee if self.solver_cached else self._advectee).get()
|
|
68
|
+
|
|
54
69
|
@property
|
|
55
70
|
def advector(self):
|
|
56
|
-
return
|
|
71
|
+
return (
|
|
72
|
+
self.solver.advector if self.solver_cached else self._advector
|
|
73
|
+
).get_component(0)
|
|
57
74
|
|
|
58
75
|
def update_advector_field(self):
|
|
59
76
|
self.__t += 0.5 * self.dt
|
|
@@ -61,5 +78,5 @@ class MPDATA_1D:
|
|
|
61
78
|
np.testing.assert_array_less(np.abs(self.advector), 1)
|
|
62
79
|
self.__t += 0.5 * self.dt
|
|
63
80
|
|
|
64
|
-
def __call__(self):
|
|
81
|
+
def __call__(self, _):
|
|
65
82
|
self.solver.advance(1)
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shipway_and_Hill_2012/simulation.py
RENAMED
|
@@ -46,7 +46,7 @@ class Simulation:
|
|
|
46
46
|
z_above_reservoir = zZ * (settings.nz * settings.dz) + self.z0
|
|
47
47
|
return z_above_reservoir
|
|
48
48
|
|
|
49
|
-
|
|
49
|
+
mpdata = MPDATA_1D(
|
|
50
50
|
nz=settings.nz,
|
|
51
51
|
dt=settings.dt,
|
|
52
52
|
mpdata_settings=settings.mpdata_settings,
|
|
@@ -79,7 +79,7 @@ class Simulation:
|
|
|
79
79
|
update_thd=settings.condensation_update_thd,
|
|
80
80
|
)
|
|
81
81
|
)
|
|
82
|
-
self.builder.add_dynamic(EulerianAdvection(
|
|
82
|
+
self.builder.add_dynamic(EulerianAdvection(mpdata))
|
|
83
83
|
|
|
84
84
|
self.products = []
|
|
85
85
|
if settings.precip:
|
|
@@ -257,10 +257,11 @@ class Simulation:
|
|
|
257
257
|
|
|
258
258
|
self.save(0)
|
|
259
259
|
for step in range(self.nt):
|
|
260
|
-
self.
|
|
260
|
+
mpdata = self.particulator.dynamics["EulerianAdvection"].solvers
|
|
261
|
+
mpdata.update_advector_field()
|
|
261
262
|
if "Displacement" in self.particulator.dynamics:
|
|
262
263
|
self.particulator.dynamics["Displacement"].upload_courant_field(
|
|
263
|
-
(
|
|
264
|
+
(mpdata.advector / self.g_factor_vec,)
|
|
264
265
|
)
|
|
265
266
|
self.particulator.run(steps=1)
|
|
266
267
|
self.save(step + 1)
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/gui_settings.py
RENAMED
|
@@ -348,10 +348,15 @@ class GUISettings:
|
|
|
348
348
|
return widget.value
|
|
349
349
|
raise NotImplementedError()
|
|
350
350
|
|
|
351
|
-
|
|
351
|
+
@property
|
|
352
|
+
def stream_function(self):
|
|
352
353
|
assert hasattr(self.__settings, "rhod_w_max")
|
|
353
354
|
self.__settings.rhod_w_max = self.ui_rhod_w_max.value
|
|
354
|
-
|
|
355
|
+
|
|
356
|
+
def fun(xX, zZ, _):
|
|
357
|
+
return self.__settings.stream_function(xX, zZ, _)
|
|
358
|
+
|
|
359
|
+
return fun
|
|
355
360
|
|
|
356
361
|
@property
|
|
357
362
|
def freezing_inp_spec(self):
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/mpdata_2d.py
RENAMED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import inspect
|
|
2
|
+
from functools import cached_property
|
|
2
3
|
from threading import Thread
|
|
3
4
|
|
|
4
5
|
import numpy as np
|
|
@@ -24,13 +25,12 @@ class MPDATA_2D:
|
|
|
24
25
|
dt,
|
|
25
26
|
grid,
|
|
26
27
|
size,
|
|
27
|
-
displacement,
|
|
28
28
|
n_iters=2,
|
|
29
29
|
infinite_gauge=True,
|
|
30
30
|
nonoscillatory=True,
|
|
31
31
|
third_order_terms=False
|
|
32
32
|
):
|
|
33
|
-
self.
|
|
33
|
+
self._grid = grid
|
|
34
34
|
self.size = size
|
|
35
35
|
self.dt = dt
|
|
36
36
|
self.stream_function = stream_function
|
|
@@ -39,96 +39,103 @@ class MPDATA_2D:
|
|
|
39
39
|
)
|
|
40
40
|
self.asynchronous = False
|
|
41
41
|
self.thread: (Thread, None) = None
|
|
42
|
-
self.displacement = displacement
|
|
43
42
|
self.t = 0
|
|
43
|
+
self.advectees = advectees
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
self._options = Options(
|
|
46
46
|
n_iters=n_iters,
|
|
47
47
|
infinite_gauge=infinite_gauge,
|
|
48
48
|
nonoscillatory=nonoscillatory,
|
|
49
49
|
third_order_terms=third_order_terms,
|
|
50
50
|
)
|
|
51
|
+
|
|
52
|
+
self.g_factor = make_rhod(grid, rhod_of_zZ)
|
|
53
|
+
self.g_factor_vec = (
|
|
54
|
+
rhod_of_zZ(zZ=x_vec_coord(grid)[-1]),
|
|
55
|
+
rhod_of_zZ(zZ=z_vec_coord(grid)[-1]),
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
@cached_property
|
|
59
|
+
def mpdatas(self):
|
|
51
60
|
disable_threads_if_needed = {}
|
|
52
61
|
if not conf.JIT_FLAGS["parallel"]:
|
|
53
62
|
disable_threads_if_needed["n_threads"] = 1
|
|
54
63
|
|
|
55
64
|
stepper = Stepper(
|
|
56
|
-
options=
|
|
57
|
-
grid=self.
|
|
65
|
+
options=self._options,
|
|
66
|
+
grid=self._grid,
|
|
58
67
|
non_unit_g_factor=True,
|
|
59
68
|
**disable_threads_if_needed
|
|
60
69
|
)
|
|
61
70
|
|
|
62
71
|
advector_impl = VectorField(
|
|
63
72
|
(
|
|
64
|
-
np.full((
|
|
65
|
-
np.full((
|
|
73
|
+
np.full((self._grid[0] + 1, self._grid[1]), np.nan),
|
|
74
|
+
np.full((self._grid[0], self._grid[1] + 1), np.nan),
|
|
66
75
|
),
|
|
67
|
-
halo=
|
|
76
|
+
halo=self._options.n_halo,
|
|
68
77
|
boundary_conditions=(Periodic(), Periodic()),
|
|
69
78
|
)
|
|
70
79
|
|
|
71
|
-
g_factor = make_rhod(self.grid, rhod_of_zZ)
|
|
72
80
|
g_factor_impl = ScalarField(
|
|
73
|
-
g_factor.astype(dtype=
|
|
74
|
-
halo=
|
|
81
|
+
self.g_factor.astype(dtype=self._options.dtype),
|
|
82
|
+
halo=self._options.n_halo,
|
|
75
83
|
boundary_conditions=(Periodic(), Periodic()),
|
|
76
84
|
)
|
|
77
85
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
rhod_of_zZ(zZ=z_vec_coord(self.grid)[-1]),
|
|
81
|
-
)
|
|
82
|
-
self.mpdatas = {}
|
|
83
|
-
for k, v in advectees.items():
|
|
86
|
+
mpdatas = {}
|
|
87
|
+
for k, v in self.advectees.items():
|
|
84
88
|
advectee_impl = ScalarField(
|
|
85
|
-
np.asarray(v, dtype=
|
|
86
|
-
halo=
|
|
89
|
+
np.asarray(v, dtype=self._options.dtype),
|
|
90
|
+
halo=self._options.n_halo,
|
|
87
91
|
boundary_conditions=(Periodic(), Periodic()),
|
|
88
92
|
)
|
|
89
|
-
|
|
93
|
+
mpdatas[k] = Solver(
|
|
90
94
|
stepper=stepper,
|
|
91
95
|
advectee=advectee_impl,
|
|
92
96
|
advector=advector_impl,
|
|
93
97
|
g_factor=g_factor_impl,
|
|
94
98
|
)
|
|
99
|
+
return mpdatas
|
|
95
100
|
|
|
96
|
-
def __getitem__(self,
|
|
97
|
-
|
|
101
|
+
def __getitem__(self, key: str):
|
|
102
|
+
if "mpdatas" in self.__dict__:
|
|
103
|
+
return self.mpdatas[key].advectee.get()
|
|
104
|
+
return self.advectees[key]
|
|
98
105
|
|
|
99
|
-
def __call__(self):
|
|
106
|
+
def __call__(self, displacement):
|
|
100
107
|
if self.asynchronous:
|
|
101
108
|
self.thread = Thread(target=self.step, args=())
|
|
102
109
|
self.thread.start()
|
|
103
110
|
else:
|
|
104
|
-
self.step()
|
|
111
|
+
self.step(displacement)
|
|
105
112
|
|
|
106
113
|
def wait(self):
|
|
107
114
|
if self.asynchronous:
|
|
108
115
|
if self.thread is not None:
|
|
109
116
|
self.thread.join()
|
|
110
117
|
|
|
111
|
-
def refresh_advector(self):
|
|
118
|
+
def refresh_advector(self, displacement):
|
|
112
119
|
for mpdata in self.mpdatas.values():
|
|
113
120
|
advector = nondivergent_vector_field_2d(
|
|
114
|
-
self.
|
|
121
|
+
self._grid, self.size, self.dt, self.stream_function, t=self.t
|
|
115
122
|
)
|
|
116
|
-
for d in range(len(self.
|
|
123
|
+
for d in range(len(self._grid)):
|
|
117
124
|
np.testing.assert_array_less(np.abs(advector[d]), 1)
|
|
118
125
|
mpdata.advector.get_component(d)[:] = advector[d]
|
|
119
|
-
if
|
|
120
|
-
for d in range(len(self.
|
|
126
|
+
if displacement is not None:
|
|
127
|
+
for d in range(len(self._grid)):
|
|
121
128
|
advector[d] /= self.g_factor_vec[d]
|
|
122
|
-
|
|
129
|
+
displacement.upload_courant_field(advector)
|
|
123
130
|
break # the advector field is shared
|
|
124
131
|
|
|
125
|
-
def step(self):
|
|
132
|
+
def step(self, displacement):
|
|
126
133
|
if not self.stream_function_time_dependent and self.t == 0:
|
|
127
|
-
self.refresh_advector()
|
|
134
|
+
self.refresh_advector(displacement)
|
|
128
135
|
|
|
129
136
|
self.t += 0.5 * self.dt
|
|
130
137
|
if self.stream_function_time_dependent:
|
|
131
|
-
self.refresh_advector()
|
|
138
|
+
self.refresh_advector(displacement)
|
|
132
139
|
for mpdata in self.mpdatas.values():
|
|
133
140
|
mpdata.advance(1)
|
|
134
141
|
self.t += 0.5 * self.dt
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/simulation.py
RENAMED
|
@@ -66,13 +66,6 @@ class Simulation:
|
|
|
66
66
|
**kwargs,
|
|
67
67
|
)
|
|
68
68
|
builder.add_dynamic(condensation)
|
|
69
|
-
displacement = None
|
|
70
|
-
if self.settings.processes["particle advection"]:
|
|
71
|
-
displacement = Displacement(
|
|
72
|
-
enable_sedimentation=self.settings.processes["sedimentation"],
|
|
73
|
-
adaptive=self.settings.displacement_adaptive,
|
|
74
|
-
rtol=self.settings.displacement_rtol,
|
|
75
|
-
)
|
|
76
69
|
if self.settings.processes["fluid advection"]:
|
|
77
70
|
initial_profiles = {
|
|
78
71
|
"th": self.settings.initial_dry_potential_temperature_profile,
|
|
@@ -92,7 +85,6 @@ class Simulation:
|
|
|
92
85
|
dt=self.settings.dt,
|
|
93
86
|
grid=self.settings.grid,
|
|
94
87
|
size=self.settings.size,
|
|
95
|
-
displacement=displacement,
|
|
96
88
|
n_iters=self.settings.mpdata_iters,
|
|
97
89
|
infinite_gauge=self.settings.mpdata_iga,
|
|
98
90
|
nonoscillatory=self.settings.mpdata_fct,
|
|
@@ -100,7 +92,13 @@ class Simulation:
|
|
|
100
92
|
)
|
|
101
93
|
builder.add_dynamic(EulerianAdvection(solver))
|
|
102
94
|
if self.settings.processes["particle advection"]:
|
|
103
|
-
builder.add_dynamic(
|
|
95
|
+
builder.add_dynamic(
|
|
96
|
+
Displacement(
|
|
97
|
+
enable_sedimentation=self.settings.processes["sedimentation"],
|
|
98
|
+
adaptive=self.settings.displacement_adaptive,
|
|
99
|
+
rtol=self.settings.displacement_rtol,
|
|
100
|
+
)
|
|
101
|
+
)
|
|
104
102
|
if (
|
|
105
103
|
self.settings.processes["coalescence"]
|
|
106
104
|
and self.settings.processes["breakup"]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PySDM-examples
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.71
|
|
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
|
|
@@ -26,7 +26,8 @@ setup(
|
|
|
26
26
|
"PyMPDATA" + (">=1.0.15" if CI else ""),
|
|
27
27
|
"open-atmos-jupyter-utils",
|
|
28
28
|
"pystrict",
|
|
29
|
-
|
|
29
|
+
# https://github.com/matplotlib/matplotlib/issues/28551
|
|
30
|
+
"matplotlib" + ("!=3.9.1" if CI else ""),
|
|
30
31
|
"joblib",
|
|
31
32
|
"ipywidgets",
|
|
32
33
|
"seaborn",
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abade_and_Albuquerque_2024/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abade_and_Albuquerque_2024/settings.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abade_and_Albuquerque_2024/simulation.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abdul_Razzak_Ghan_2000/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abdul_Razzak_Ghan_2000/aerosol.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Abdul_Razzak_Ghan_2000/run_ARG_parcel.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Alpert_and_Knopf_2016/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Alpert_and_Knopf_2016/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_and_Shima_2017/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_and_Shima_2017/settings.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_and_Shima_2017/simulation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/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.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/frozen_fraction.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/make_particulator.py
RENAMED
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Arabas_et_al_2023/run_simulation.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/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
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bulenok_2023_MasterThesis/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bulenok_2023_MasterThesis/setups.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Bulenok_2023_MasterThesis/utils.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Ervens_and_Feingold_2012/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Ervens_and_Feingold_2012/settings.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Gedzelman_and_Arnold_1994/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Grabowski_and_Pawlowska_2023/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Grabowski_and_Pawlowska_2023/settings.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jaruga_and_Pawlowska_2018/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/plotting.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/settings.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/simulation.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Jensen_and_Nugent_2017/table_3.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Kreidenweis_et_al_2003/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Kreidenweis_et_al_2003/settings.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/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.70 → PySDM-examples-2.71}/PySDM_examples/Merlivat_and_Nief_1967/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Morrison_and_Grabowski_2007/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Morrison_and_Grabowski_2007/common.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Morrison_and_Grabowski_2007/cumulus.py
RENAMED
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Niedermeier_et_al_2014/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Niedermeier_et_al_2014/settings.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/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.70 → PySDM-examples-2.71}/PySDM_examples/Rozanski_and_Sonntag_1982/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/error_measure.py
RENAMED
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/example_timing.py
RENAMED
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/spectrum_plotter.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/tutorial_example.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/tutorial_plotter.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shima_et_al_2009/tutorial_settings.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shipway_and_Hill_2012/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Shipway_and_Hill_2012/settings.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.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/gui_controller.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/Szumowski_et_al_1998/gui_viewer.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.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/__init__.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/plot_rates.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/settings1D.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/settings_0D.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/simulation1D.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/PySDM_examples/deJong_Mackay_et_al_2023/simulation_0D.py
RENAMED
|
File without changes
|
{PySDM-examples-2.70 → PySDM-examples-2.71}/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
|