PySDM 2.85__py3-none-any.whl → 2.87__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/physics/constants_defaults.py +9 -0
- PySDM/physics/dimensional_analysis.py +5 -3
- PySDM/physics/isotope_relaxation_timescale/__init__.py +1 -0
- PySDM/physics/isotope_relaxation_timescale/bolin_1958.py +17 -0
- {PySDM-2.85.dist-info → PySDM-2.87.dist-info}/METADATA +5 -4
- {PySDM-2.85.dist-info → PySDM-2.87.dist-info}/RECORD +9 -8
- {PySDM-2.85.dist-info → PySDM-2.87.dist-info}/LICENSE +0 -0
- {PySDM-2.85.dist-info → PySDM-2.87.dist-info}/WHEEL +0 -0
- {PySDM-2.85.dist-info → PySDM-2.87.dist-info}/top_level.txt +0 -0
|
@@ -428,3 +428,12 @@ one_kelvin = 1 * si.K
|
|
|
428
428
|
bulk_phase_partitioning_T_cold = 235 * si.K
|
|
429
429
|
bulk_phase_partitioning_T_warm = 273 * si.K
|
|
430
430
|
bulk_phase_partitioning_exponent = np.nan
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
BOLIN_ISOTOPE_TIMESCALE_COEFF_C1 = np.nan * si.dimensionless
|
|
434
|
+
"""
|
|
435
|
+
Coeffitient c1 used in [Bolin 1958](https://https://digitallibrary.un.org/record/3892725)
|
|
436
|
+
for the falling drop evaporation timescale of equilibration with ambient air void of a given
|
|
437
|
+
isotopologue; in the paper timescale is calculated for tritium with assumption of no tritium
|
|
438
|
+
in the environment around the drop (Table 1).
|
|
439
|
+
"""
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"""
|
|
2
|
-
A context manager (for use with the `with` statement)
|
|
3
|
-
|
|
2
|
+
A context manager (for use with the `with` statement) which
|
|
3
|
+
enables Pint physical-units checks and disables Numba in `PySDM.formulae.Formulae`
|
|
4
4
|
"""
|
|
5
5
|
|
|
6
6
|
from importlib import reload
|
|
7
7
|
|
|
8
8
|
from PySDM import formulae
|
|
9
|
-
|
|
9
|
+
from PySDM import physics
|
|
10
10
|
from . import constants, constants_defaults
|
|
11
11
|
from .impl import flag
|
|
12
12
|
|
|
@@ -17,9 +17,11 @@ class DimensionalAnalysis:
|
|
|
17
17
|
reload(constants)
|
|
18
18
|
reload(constants_defaults)
|
|
19
19
|
reload(formulae)
|
|
20
|
+
reload(physics)
|
|
20
21
|
|
|
21
22
|
def __exit__(*_): # pylint: disable=no-method-argument,no-self-argument
|
|
22
23
|
flag.DIMENSIONAL_ANALYSIS = False
|
|
23
24
|
reload(constants)
|
|
24
25
|
reload(constants_defaults)
|
|
25
26
|
reload(formulae)
|
|
27
|
+
reload(physics)
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
""" Timescale derived for tritium with assumption of zero ambient concentration - see text above
|
|
2
|
+
Table 1 [Bolin 1958](https://digitallibrary.un.org/record/3892725) """
|
|
3
|
+
|
|
4
|
+
import numpy as np
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class Bolin1958: # pylint: disable=too-few-public-methods
|
|
8
|
+
"""Implementation of timescale used by Bolin 1958"""
|
|
9
|
+
|
|
10
|
+
def __init__(self, const):
|
|
11
|
+
assert np.isfinite(const.BOLIN_ISOTOPE_TIMESCALE_COEFF_C1)
|
|
12
|
+
|
|
13
|
+
@staticmethod
|
|
14
|
+
# pylint: disable=too-many-arguments
|
|
15
|
+
def tau(const, radius, r_dr_dt):
|
|
16
|
+
"""timescale for evaporation of a falling drop with tritium"""
|
|
17
|
+
return (-3 / radius**2 * r_dr_dt * const.BOLIN_ISOTOPE_TIMESCALE_COEFF_C1) ** -1
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: PySDM
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.87
|
|
4
4
|
Summary: Pythonic particle-based (super-droplet) warm-rain/aqueous-chemistry cloud microphysics package with box, parcel & 1D/2D prescribed-flow examples in Python, Julia and Matlab
|
|
5
5
|
Home-page: https://github.com/open-atmos/PySDM
|
|
6
6
|
Author: https://github.com/open-atmos/PySDM/graphs/contributors
|
|
@@ -75,7 +75,7 @@ The package features a Pythonic high-performance implementation of the
|
|
|
75
75
|
Super-Droplet Method (SDM) Monte-Carlo algorithm for representing collisional growth
|
|
76
76
|
([Shima et al. 2009](https://rmets.onlinelibrary.wiley.com/doi/abs/10.1002/qj.441)), hence the name.
|
|
77
77
|
|
|
78
|
-
There is a growing set of example Jupyter notebooks exemplifying how to perform
|
|
78
|
+
There is a growing set of [example Jupyter notebooks](https://open-atmos.github.io/PySDM/PySDM_examples.html) exemplifying how to perform
|
|
79
79
|
various types of calculations and simulations using PySDM.
|
|
80
80
|
Most of the example notebooks reproduce results and plot from literature, see below for
|
|
81
81
|
a list of examples and links to the notebooks (which can be either executed or viewed
|
|
@@ -134,7 +134,7 @@ Conda users may use ``pip`` as well, see the [Installing non-conda packages](htt
|
|
|
134
134
|
For development purposes, we suggest cloning the repository and installing it using ``pip -e``.
|
|
135
135
|
Test-time dependencies can be installed with ``pip -e .[tests]``.
|
|
136
136
|
|
|
137
|
-
PySDM examples constitute the [``PySDM-examples``](https://github.com/open-atmos/PySDM
|
|
137
|
+
PySDM examples constitute the [``PySDM-examples``](https://github.com/open-atmos/PySDM/blob/main/examples) package.
|
|
138
138
|
The examples have additional dependencies listed in [``PySDM_examples`` package ``setup.py``](https://github.com/open-atmos/PySDM/blob/main/examples/setup.py) file.
|
|
139
139
|
Running the example Jupyter notebooks requires the ``PySDM_examples`` package to be installed.
|
|
140
140
|
The suggested install and launch steps are:
|
|
@@ -189,7 +189,8 @@ To run all pre-commit hooks, run `pre-commit run --all-files`.
|
|
|
189
189
|
The `.pre-commit-config.yaml` file can be modified in case new hooks are to be added or
|
|
190
190
|
existing ones need to be altered.
|
|
191
191
|
|
|
192
|
-
Further hints addressed at PySDM developers are maintained in the [open-atmos/python-dev-hints Wiki](https://github.com/open-atmos/python-dev-hints/wiki)
|
|
192
|
+
Further hints addressed at PySDM developers are maintained in the [open-atmos/python-dev-hints Wiki](https://github.com/open-atmos/python-dev-hints/wiki)
|
|
193
|
+
and in [PySDM HOWTOs](https://github.com/open-atmos/PySDM/tree/main/examples/PySDM_examples/_HOWTOS).
|
|
193
194
|
|
|
194
195
|
Issues regarding any incorrect, unintuitive or undocumented bahaviour of
|
|
195
196
|
PySDM are best to be reported on the [GitHub issue tracker](https://github.com/open-atmos/PySDM/issues/new).
|
|
@@ -200,8 +200,8 @@ PySDM/initialisation/spectra/sum.py,sha256=SaxepweOdCozWlUkxCfr6Udo-KjGKWXgrdS0a
|
|
|
200
200
|
PySDM/initialisation/spectra/top_hat.py,sha256=xmBr_IrctsnguPNgX-jR7JnQnQl1qzIaEyz75fvAJho,563
|
|
201
201
|
PySDM/physics/__init__.py,sha256=cHgdLJl631R3bkiqq-t_FNZXAq6jdLor34uLr5LESAY,1890
|
|
202
202
|
PySDM/physics/constants.py,sha256=ETbcdk-nhrVtjHidTREjHiUkAemNBNrSBWED3XjCXb8,1333
|
|
203
|
-
PySDM/physics/constants_defaults.py,sha256=
|
|
204
|
-
PySDM/physics/dimensional_analysis.py,sha256=
|
|
203
|
+
PySDM/physics/constants_defaults.py,sha256=VoZpbxBNyOfIwT6keyokmRJjsgND2UoaSEeAxNSFgrw,14633
|
|
204
|
+
PySDM/physics/dimensional_analysis.py,sha256=Zk6ZHq9eTuOxoETgxyvg-0s0Tv4FDYbyFKCRFqVlCU0,790
|
|
205
205
|
PySDM/physics/trivia.py,sha256=gAF0fUKTGFZbt95D2G_MwnDfAgVymGDWMawncKAMOG0,4048
|
|
206
206
|
PySDM/physics/air_dynamic_viscosity/__init__.py,sha256=cLemG7DDSvwWv0mDwotzIUMHdiVhlLP_OrFENOnD8RM,90
|
|
207
207
|
PySDM/physics/air_dynamic_viscosity/zografos_et_al_1987.py,sha256=51X3jHzkhx8w9KtYwbG_TEUbYJ9QpiLfXEiBqlrXFqw,620
|
|
@@ -271,7 +271,8 @@ PySDM/physics/isotope_ratio_evolution/__init__.py,sha256=w_8J7rh-c6RGDLMyYoNADrE
|
|
|
271
271
|
PySDM/physics/isotope_ratio_evolution/gedzelman_and_arnold_1994.py,sha256=x0MlfJ219ApaUhLImIiI71A4uv0MyeOVdFRguv4CC-4,534
|
|
272
272
|
PySDM/physics/isotope_ratio_evolution/merlivat_and_jouzel_1979.py,sha256=OQnkJ7UB_9H2KHuRwXNhmTJINrw7m_erNJmWPQpdDTk,531
|
|
273
273
|
PySDM/physics/isotope_ratio_evolution/rayleigh_distillation.py,sha256=lQ-2AeYuyQRnuDHre3ZlplPbMHD9aObipXcf7Kfqqhw,344
|
|
274
|
-
PySDM/physics/isotope_relaxation_timescale/__init__.py,sha256=
|
|
274
|
+
PySDM/physics/isotope_relaxation_timescale/__init__.py,sha256=gYZSTFs9ZfTDEEjTCRVd9E0LQMwKMokzG6_8ePF6x_8,174
|
|
275
|
+
PySDM/physics/isotope_relaxation_timescale/bolin_1958.py,sha256=fO7iRGb-X6RnKk_hKG54gD5p5U7LrWe6zdZ1uwZLsnM,666
|
|
275
276
|
PySDM/physics/isotope_relaxation_timescale/miyake_et_al_1968.py,sha256=SgUfJulJhlan3knUUhGsgc3mDxmfXtzZHCnYrwZpees,456
|
|
276
277
|
PySDM/physics/latent_heat/__init__.py,sha256=3edHhiH1wOwL84k_JubNQIDLZI8042plRafGreFSBck,185
|
|
277
278
|
PySDM/physics/latent_heat/constant.py,sha256=pw39hru5vvSd-95-gVnYwr8vac1XhU8mLnPiNN4sKb8,263
|
|
@@ -383,8 +384,8 @@ PySDM/products/size_spectral/size_standard_deviation.py,sha256=A7fSj_keQi_bHW41P
|
|
|
383
384
|
PySDM/products/size_spectral/total_particle_concentration.py,sha256=K7sO2jgUpYOwWvBK3jXp9KUxLRXk_Ve6ooOdY5q5jd0,470
|
|
384
385
|
PySDM/products/size_spectral/total_particle_specific_concentration.py,sha256=isLZt5j2vJGr-FrzYFcUNPHZqMKhOtl51za1Hogh6hQ,476
|
|
385
386
|
PySDM/products/size_spectral/water_mixing_ratio.py,sha256=PP54hfMy4SPDQDJgV4RNzVP03lmL1THZPa2KXrdgoQ4,1324
|
|
386
|
-
PySDM-2.
|
|
387
|
-
PySDM-2.
|
|
388
|
-
PySDM-2.
|
|
389
|
-
PySDM-2.
|
|
390
|
-
PySDM-2.
|
|
387
|
+
PySDM-2.87.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
388
|
+
PySDM-2.87.dist-info/METADATA,sha256=shahfELgf9gVfE3PnZ7P4iUSikIVwkR-ccN7yfNv1xY,17326
|
|
389
|
+
PySDM-2.87.dist-info/WHEEL,sha256=P9jw-gEje8ByB7_hXoICnHtVCrEwMQh-630tKvQWehc,91
|
|
390
|
+
PySDM-2.87.dist-info/top_level.txt,sha256=6NYaDAhUnaYMD7ebD_dQ7HlhiJS7NMuKEXb0ck7Wcsg,6
|
|
391
|
+
PySDM-2.87.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|