PySDM-examples 2.78__py3-none-any.whl → 2.80__py3-none-any.whl
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/Abade_and_Albuquerque_2024/__init__.py +3 -0
- PySDM_examples/Abdul_Razzak_Ghan_2000/__init__.py +6 -0
- PySDM_examples/Alpert_and_Knopf_2016/__init__.py +15 -0
- PySDM_examples/Arabas_and_Shima_2017/__init__.py +3 -0
- PySDM_examples/Arabas_et_al_2015/__init__.py +6 -0
- PySDM_examples/Arabas_et_al_2015/spin_up.py +1 -3
- PySDM_examples/Arabas_et_al_2023/__init__.py +21 -0
- PySDM_examples/Arabas_et_al_2023/commons.py +1 -1
- PySDM_examples/Arabas_et_al_2023/make_particulator.py +1 -1
- PySDM_examples/Arabas_et_al_2023/plots.py +2 -2
- PySDM_examples/Bartman_et_al_2021/__init__.py +9 -0
- PySDM_examples/Berry_1967/__init__.py +3 -0
- PySDM_examples/Bieli_et_al_2022/__init__.py +3 -0
- PySDM_examples/Bolot_et_al_2013/__init__.py +3 -0
- PySDM_examples/Bulenok_2023_MasterThesis/__init__.py +3 -0
- PySDM_examples/Gedzelman_and_Arnold_1994/__init__.py +3 -0
- PySDM_examples/Grabowski_and_Pawlowska_2023/__init__.py +15 -0
- PySDM_examples/Graf_et_al_2019/__init__.py +6 -0
- PySDM_examples/Jaruga_and_Pawlowska_2018/__init__.py +6 -0
- PySDM_examples/Jensen_and_Nugent_2017/__init__.py +20 -0
- PySDM_examples/Kreidenweis_et_al_2003/__init__.py +3 -0
- PySDM_examples/Lamb_et_al_2017/__init__.py +3 -0
- PySDM_examples/Lowe_et_al_2019/__init__.py +12 -0
- PySDM_examples/Merlivat_and_Nief_1967/__init__.py +3 -0
- PySDM_examples/Miyake_et_al_1968/__init__.py +3 -0
- PySDM_examples/Morrison_and_Grabowski_2007/__init__.py +6 -0
- PySDM_examples/Niedermeier_et_al_2014/__init__.py +6 -1
- PySDM_examples/Pierchala_et_al_2022/__init__.py +6 -0
- PySDM_examples/Pyrcel/__init__.py +3 -0
- PySDM_examples/Rozanski_and_Sonntag_1982/__init__.py +3 -0
- PySDM_examples/Shima_et_al_2009/__init__.py +3 -0
- PySDM_examples/Shipway_and_Hill_2012/__init__.py +3 -0
- PySDM_examples/Singer_Ward/__init__.py +8 -0
- PySDM_examples/Srivastava_1982/__init__.py +3 -0
- PySDM_examples/Szumowski_et_al_1998/simulation.py +8 -3
- PySDM_examples/Van_Hook_1968/__init__.py +3 -0
- PySDM_examples/Yang_et_al_2018/__init__.py +3 -0
- PySDM_examples/__init__.py +1 -2
- PySDM_examples/deJong_Azimi/__init__.py +6 -0
- PySDM_examples/deJong_Mackay_et_al_2023/__init__.py +12 -0
- PySDM_examples/seeding/__init__.py +8 -0
- PySDM_examples-2.80.dist-info/METADATA +154 -0
- {PySDM_examples-2.78.dist-info → PySDM_examples-2.80.dist-info}/RECORD +45 -45
- {PySDM_examples-2.78.dist-info → PySDM_examples-2.80.dist-info}/WHEEL +1 -1
- PySDM_examples-2.78.dist-info/METADATA +0 -298
- {PySDM_examples-2.78.dist-info → PySDM_examples-2.80.dist-info}/top_level.txt +0 -0
|
@@ -2,4 +2,10 @@
|
|
|
2
2
|
"""
|
|
3
3
|
condensation example using parcel environment based on
|
|
4
4
|
[Abdul-Razzak & Ghan 2000 (JGR)](https://doi.org/10.1029/1999JD901161)
|
|
5
|
+
|
|
6
|
+
figs1-5.ipynb:
|
|
7
|
+
.. include:: ./figs1-5.ipynb.badges.md
|
|
8
|
+
|
|
9
|
+
fig_4_kinetic_limitations.ipynb:
|
|
10
|
+
.. include:: ./fig_4_kinetic_limitations.ipynb.badges.md
|
|
5
11
|
"""
|
|
@@ -1,6 +1,21 @@
|
|
|
1
1
|
"""
|
|
2
2
|
box-environment example based on
|
|
3
3
|
[Alpert & Knopf 2016 (Atmos. Chem. Phys. 16)](https://doi.org/10.5194/acp-16-2083-2016)
|
|
4
|
+
|
|
5
|
+
fig_1.ipynb:
|
|
6
|
+
.. include:: ./fig_1.ipynb.badges.md
|
|
7
|
+
|
|
8
|
+
fig_2.ipynb:
|
|
9
|
+
.. include:: ./fig_2.ipynb.badges.md
|
|
10
|
+
|
|
11
|
+
fig_3.ipynb:
|
|
12
|
+
.. include:: ./fig_3.ipynb.badges.md
|
|
13
|
+
|
|
14
|
+
fig_4.ipynb:
|
|
15
|
+
.. include:: ./fig_4.ipynb.badges.md
|
|
16
|
+
|
|
17
|
+
fig_5.ipynb:
|
|
18
|
+
.. include:: ./fig_5.ipynb.badges.md
|
|
4
19
|
"""
|
|
5
20
|
|
|
6
21
|
# pylint: disable=invalid-name
|
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
"""
|
|
3
3
|
2D prescribed-flow case extended with Paraview visualisation with spin-up logic from
|
|
4
4
|
[Arabas et al. 2015](http://doi.org/10.5194/gmd-8-1677-2015)
|
|
5
|
+
|
|
6
|
+
gui.ipynb:
|
|
7
|
+
.. include:: ./gui.ipynb.badges.md
|
|
8
|
+
|
|
9
|
+
paraview_hello_world.ipynb:
|
|
10
|
+
.. include:: ./paraview_hello_world.ipynb.badges.md
|
|
5
11
|
"""
|
|
6
12
|
from .settings import Settings
|
|
7
13
|
from .spin_up import SpinUp
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from PySDM.dynamics import Collision, Displacement
|
|
1
|
+
from PySDM.dynamics import Collision, Displacement
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
class SpinUp:
|
|
@@ -8,13 +8,11 @@ class SpinUp:
|
|
|
8
8
|
self.particulator = particulator
|
|
9
9
|
self.set(Collision, "enable", False)
|
|
10
10
|
self.set(Displacement, "enable_sedimentation", False)
|
|
11
|
-
self.set(Freezing, "enable", False)
|
|
12
11
|
|
|
13
12
|
def notify(self):
|
|
14
13
|
if self.particulator.n_steps == self.spin_up_steps:
|
|
15
14
|
self.set(Collision, "enable", True)
|
|
16
15
|
self.set(Displacement, "enable_sedimentation", True)
|
|
17
|
-
self.set(Freezing, "enable", True)
|
|
18
16
|
|
|
19
17
|
def set(self, dynamic, attr, value):
|
|
20
18
|
key = dynamic.__name__
|
|
@@ -1,6 +1,27 @@
|
|
|
1
1
|
"""
|
|
2
2
|
box-model and 2D prescribed-flow immersion-freezing examples based on
|
|
3
3
|
[Arabas et al. 2023](https://arxiv.org/abs/2308.05015)
|
|
4
|
+
|
|
5
|
+
aida.ipynb:
|
|
6
|
+
.. include:: ./aida.ipynb.badges.md
|
|
7
|
+
|
|
8
|
+
copula_hello.ipynb:
|
|
9
|
+
.. include:: ./copula_hello.ipynb.badges.md
|
|
10
|
+
|
|
11
|
+
fig_2.ipynb:
|
|
12
|
+
.. include:: ./fig_2.ipynb.badges.md
|
|
13
|
+
|
|
14
|
+
fig_11.ipynb:
|
|
15
|
+
.. include:: ./figs_10_and_11_and_animations.ipynb
|
|
16
|
+
|
|
17
|
+
fig_A2.ipynb:
|
|
18
|
+
.. include:: ./fig_A2.ipynb.badges.md
|
|
19
|
+
|
|
20
|
+
figs_3_and_7_and_8.ipynb:
|
|
21
|
+
.. include:: ./figs_3_and_7_and_8.ipynb.badges.md
|
|
22
|
+
|
|
23
|
+
figs_5_and_6.ipynb:
|
|
24
|
+
.. include:: ./figs_5_and_6.ipynb.badges.md
|
|
4
25
|
"""
|
|
5
26
|
|
|
6
27
|
from .make_particulator import make_particulator
|
|
@@ -13,7 +13,7 @@ FREEZING_CONSTANTS = {
|
|
|
13
13
|
"illite": {"ABIFM_M": 54.48, "ABIFM_C": -10.67},
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
COOLING_RATES = (3.75 * si.K / si.min, 0.75 * si.K / si.min, 0.15 * si.K / si.min)
|
|
16
|
+
COOLING_RATES = (-3.75 * si.K / si.min, -0.75 * si.K / si.min, -0.15 * si.K / si.min)
|
|
17
17
|
|
|
18
18
|
BEST_FIT_LN_S_GEOM = 0.25
|
|
19
19
|
|
|
@@ -37,7 +37,7 @@ def make_particulator(
|
|
|
37
37
|
"particle_shape_and_density": "MixedPhaseSpheres",
|
|
38
38
|
}
|
|
39
39
|
formulae = Formulae(**formulae_ctor_args)
|
|
40
|
-
backend = CPU(formulae)
|
|
40
|
+
backend = CPU(formulae, override_jit_flags={"parallel": False})
|
|
41
41
|
|
|
42
42
|
sampling = SpectroGlacialSampling(
|
|
43
43
|
freezing_temperature_spectrum=formulae.freezing_temperature_spectrum,
|
|
@@ -103,14 +103,14 @@ def make_freezing_spec_plot(
|
|
|
103
103
|
_ = CurvedText(
|
|
104
104
|
x=T.squeeze(),
|
|
105
105
|
y=qi.squeeze(),
|
|
106
|
-
text=f" {multiplier}x median
|
|
106
|
+
text=f" {multiplier}x median S",
|
|
107
107
|
va="bottom",
|
|
108
108
|
color="black",
|
|
109
109
|
axes=prim,
|
|
110
110
|
)
|
|
111
111
|
title = f"$σ_g$=exp({np.log(surf_spec.s_geom):.3g})"
|
|
112
112
|
if cooling_rate_K_min is not None:
|
|
113
|
-
title += f",
|
|
113
|
+
title += f", c={cooling_rate_K_min} K/min"
|
|
114
114
|
prim.set_title(title)
|
|
115
115
|
# prim.set_ylabel('ice water content [$g/m^3$]')
|
|
116
116
|
prim.set_yticks([])
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
# pylint: disable=invalid-name
|
|
2
2
|
"""
|
|
3
3
|
condensation and coalescence adaptivity examples
|
|
4
|
+
|
|
5
|
+
demo.ipynb:
|
|
6
|
+
.. include:: ./demo.ipynb.badges.md
|
|
7
|
+
|
|
8
|
+
demo_fig2.ipynb:
|
|
9
|
+
.. include:: ./demo_fig2.ipynb.badges.md
|
|
10
|
+
|
|
11
|
+
demo_fig3.ipynb:
|
|
12
|
+
.. include:: ./demo_fig3.ipynb.badges.md
|
|
4
13
|
"""
|
|
@@ -3,4 +3,7 @@
|
|
|
3
3
|
Formulae-only example depicting changes in drop and ambient vapour isotopic composition
|
|
4
4
|
upon evaporation of rain in subsaturated environment based on
|
|
5
5
|
[Gedzelman and Arnold 1994](https://doi.org/10.1029/93JD03518)
|
|
6
|
+
|
|
7
|
+
fig_2.ipynb:
|
|
8
|
+
.. include:: ./fig_2.ipynb.badges.md
|
|
6
9
|
"""
|
|
@@ -2,6 +2,21 @@
|
|
|
2
2
|
"""
|
|
3
3
|
ripening-focused parcel-model example based on
|
|
4
4
|
[Grabowski & Pawlowska 2023 (GRL)](https://doi.org/10.1029/2022GL101917)
|
|
5
|
+
|
|
6
|
+
figure_1.ipynb:
|
|
7
|
+
.. include:: ./figure_1.ipynb.badges.md
|
|
8
|
+
|
|
9
|
+
figure_2.ipynb:
|
|
10
|
+
.. include:: ./figure_2.ipynb.badges.md
|
|
11
|
+
|
|
12
|
+
figure_3.ipynb:
|
|
13
|
+
.. include:: ./figure_3.ipynb.badges.md
|
|
14
|
+
|
|
15
|
+
figure_4.ipynb:
|
|
16
|
+
.. include:: ./figure_4.ipynb.badges.md
|
|
17
|
+
|
|
18
|
+
figure_ripening_rate.ipynb:
|
|
19
|
+
.. include:: ./figure_ripening_rate.ipynb.badges.md
|
|
5
20
|
"""
|
|
6
21
|
from .settings import Settings
|
|
7
22
|
from .simulation import Simulation
|
|
@@ -1,2 +1,22 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Fig_1.ipynb:
|
|
3
|
+
.. include:: ./Fig_1.ipynb.badges.md
|
|
4
|
+
|
|
5
|
+
Fig_3_and_Tab_4_upper_rows.ipynb:
|
|
6
|
+
.. include:: ./Fig_3_and_Tab_4_upper_rows.ipynb.badges.md
|
|
7
|
+
|
|
8
|
+
Fig_4_and_7_and_Tab_4_bottom_rows.ipynb:
|
|
9
|
+
.. include:: ./Fig_4_and_7_and_Tab_4_bottom_rows.ipynb.badges.md
|
|
10
|
+
|
|
11
|
+
Fig_5.ipynb:
|
|
12
|
+
.. include:: ./Fig_5.ipynb.badges.md
|
|
13
|
+
|
|
14
|
+
Fig_6.ipynb:
|
|
15
|
+
.. include:: ./Fig_6.ipynb.badges.md
|
|
16
|
+
|
|
17
|
+
Fig_8.ipynb:
|
|
18
|
+
.. include:: ./Fig_8.ipynb.badges.md
|
|
19
|
+
"""
|
|
20
|
+
|
|
1
21
|
from .settings import Settings
|
|
2
22
|
from .simulation import Simulation
|
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
"""
|
|
3
3
|
parcel-model example focused on surfactants based on
|
|
4
4
|
[Lowe et al. 2019 (Nature Comm.)](https://doi.org/10.1038/s41467-019-12982-0)
|
|
5
|
+
|
|
6
|
+
fig_1.ipynb:
|
|
7
|
+
.. include:: ./fig_1.ipynb.badges.md
|
|
8
|
+
|
|
9
|
+
fig_2.ipynb:
|
|
10
|
+
.. include:: ./fig_2.ipynb.badges.md
|
|
11
|
+
|
|
12
|
+
fig_3.ipynb:
|
|
13
|
+
.. include:: ./fig_3.ipynb.badges.md
|
|
14
|
+
|
|
15
|
+
fig_s2.ipynb:
|
|
16
|
+
.. include:: ./fig_s2.ipynb.badges.md
|
|
5
17
|
"""
|
|
6
18
|
from .settings import Settings
|
|
7
19
|
from .simulation import Simulation
|
|
@@ -2,5 +2,11 @@
|
|
|
2
2
|
"""
|
|
3
3
|
prescribed-flow simulation settings data from
|
|
4
4
|
[Morrison & Grabowski 2007 (JAS)](https://doi.org/10.1175/JAS3980)
|
|
5
|
+
|
|
6
|
+
fig_2.ipynb:
|
|
7
|
+
.. include:: ./fig_2.ipynb.badges.md
|
|
8
|
+
|
|
9
|
+
fig_3.ipynb:
|
|
10
|
+
.. include:: ./fig_3.ipynb.badges.md
|
|
5
11
|
"""
|
|
6
12
|
from .cumulus import Cumulus
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
"""
|
|
1
|
+
"""
|
|
2
|
+
based on [Niedermeier et al. 2014](https://doi.org/10.1002/2013GL058684)
|
|
3
|
+
|
|
4
|
+
fig_2.ipynb:
|
|
5
|
+
.. include:: ./fig_2.ipynb.badges.md
|
|
6
|
+
"""
|
|
2
7
|
|
|
3
8
|
from .settings import Settings
|
|
4
9
|
from .simulation import Simulation
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
"""
|
|
2
2
|
based on Pierchala et al. 2022 (Geochim. Cosmochim. Acta)
|
|
3
3
|
https://doi.org/10.1016/j.gca.2022.01.020
|
|
4
|
+
|
|
5
|
+
fig_3.ipynb:
|
|
6
|
+
.. include:: ./fig_3.ipynb.badges.md
|
|
7
|
+
|
|
8
|
+
fig_4.ipynb:
|
|
9
|
+
.. include:: ./fig_4.ipynb.badges.md
|
|
4
10
|
"""
|
|
5
11
|
|
|
6
12
|
# pylint: disable=invalid-name
|
|
@@ -2,6 +2,9 @@
|
|
|
2
2
|
"""
|
|
3
3
|
parcel-model example based on the test case from
|
|
4
4
|
[Pyrcel package docs](https://pyrcel.readthedocs.io/)
|
|
5
|
+
|
|
6
|
+
example_basic_run.ipynb:
|
|
7
|
+
.. include:: ./example_basic_run.ipynb.badges.md
|
|
5
8
|
"""
|
|
6
9
|
from .settings import Settings
|
|
7
10
|
from .simulation import Simulation
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
"""
|
|
2
2
|
box-model examples feat. analytic solution for breakup from
|
|
3
3
|
[Srivastava 1982 (JAS)](https://doi.org/10.1175/1520-0469(1982)039%3C1317:ASMOPC%3E2.0.CO;2)
|
|
4
|
+
|
|
5
|
+
figures.ipynb:
|
|
6
|
+
.. include:: ./figures.ipynb.badges.md
|
|
4
7
|
"""
|
|
5
8
|
|
|
6
9
|
from .equations import Equations, EquationsHelpers
|
|
@@ -197,9 +197,14 @@ class Simulation:
|
|
|
197
197
|
attributes[name][copy] = array * (
|
|
198
198
|
1 - self.settings.freezing_inp_frac
|
|
199
199
|
)
|
|
200
|
-
elif len(array.shape) > 1:
|
|
201
|
-
|
|
202
|
-
|
|
200
|
+
elif len(array.shape) > 1: # particle positions
|
|
201
|
+
# TODO #599: seed
|
|
202
|
+
for dim, _ in enumerate(array.shape):
|
|
203
|
+
# only to make particles not shadow each other in visualisations
|
|
204
|
+
attributes[name][dim, orig] = array[dim, :]
|
|
205
|
+
attributes[name][dim, copy] = np.random.permutation(
|
|
206
|
+
array[dim, :]
|
|
207
|
+
)
|
|
203
208
|
else:
|
|
204
209
|
attributes[name][orig] = array
|
|
205
210
|
attributes[name][copy] = array
|
PySDM_examples/__init__.py
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
|
|
3
|
-
and in example notebooks (but the package wheels do not include the notebooks)
|
|
2
|
+
.. include:: ../docs/pysdm_examples_landing.md
|
|
4
3
|
"""
|
|
5
4
|
|
|
6
5
|
from importlib.metadata import PackageNotFoundError, version
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
"""
|
|
2
2
|
box- and single-column coalescence-focused examples used to test new
|
|
3
3
|
moment-based microphysics in (Cloudy.jl)[https://github.com/CliMA/Cloudy.jl]
|
|
4
|
+
|
|
5
|
+
box.ipynb:
|
|
6
|
+
.. include:: ./box.ipynb.badges.md
|
|
7
|
+
|
|
8
|
+
rainshaft.ipynb:
|
|
9
|
+
.. include:: ./rainshaft.ipynb.badges.md
|
|
4
10
|
"""
|
|
5
11
|
|
|
6
12
|
# pylint: disable=invalid-name
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
"""
|
|
2
2
|
box- and single-column breakup-focused examples from
|
|
3
3
|
[de Jong et al. 2023](https://doi.org/10.5194/gmd-16-4193-2023)
|
|
4
|
+
|
|
5
|
+
fig_9.ipynb:
|
|
6
|
+
.. include:: ./fig_9.ipynb.badges.md
|
|
7
|
+
|
|
8
|
+
figs_3_4_5.ipynb:
|
|
9
|
+
.. include:: ./figs_3_4_5.ipynb.badges.md
|
|
10
|
+
|
|
11
|
+
figs_6_7_8.ipynb:
|
|
12
|
+
.. include:: ./figs_6_7_8.ipynb.badges.md
|
|
13
|
+
|
|
14
|
+
figs_10_11_12_13.ipynb:
|
|
15
|
+
.. include:: ./figs_10_11_12_13.ipynb.badges.md
|
|
4
16
|
"""
|
|
5
17
|
|
|
6
18
|
# pylint: disable=invalid-name
|