Synthetic gravity waves
This python package facilitates the creation of 2D synthetic atmospheric gravity-wave wave-packets mimicking the vertical velocity structure seen in numerical weather prediction models at fixed height or pressure levels.
Installation and usage
Install the package with pip from pypi.org
python -m pip install synthetic_gravity_waves
And the import synthetic_gravity_waves and use it to create a uniformly gridded vertical velocity field with synthetic gravity wave wave-packets:
import synthetic_gravity_waves as sgw
phi = sgw.make_synthetic_gravity_wave_composite(N=512, r_sigma=10.0, r0=80.0, lw0=10.0)
w0 = 5.0 # max characteristc vertical velocity [m/s]
w = phi * w0
# w now contains synthetic gravity wave packets with amplitude between -w0 and w0
Method
The method uses a point-sampling method based on the
Poisson-disc sampling algorithm by Robert
Bridson,
but modified to in place of using a 2D density field to define the local
density of points the spatial separation between points is sampled from a
Gaussian distribution with mean r0 and standard deviation r_sigma. The
sampling is done on a grid of shape (N, N). At the sampled points 2D Gaussians envelopes modulating plane-parallel carrier waves with a controllable characterisc wavelength.
See notebooks/usage.ipynb for details.
References
-
Fast Poisson disk sampling in arbitrary dimensions , Bridson, R. (2007). Fast Poisson disk sampling in arbitrary dimensions. SIGGRAPH sketches, 10(1), 1. PDF
-
poissonDiskSampling by Adrian Bittner.
Metadata
Release files for synthetic-gravity-waves 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| synthetic_gravity_waves-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Release files / synthetic_gravity_waves-0.1.2-py3-none-any.whl
| Download URL | synthetic_gravity_waves-0.1.2-py3-none-any.whl |
|---|---|
| Size | 7.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2a8ceb7dabb98d8adf612e235c37130cd1243c508c88119f58ea1b9e2c14070d
|
|
BLAKE2b-256 checksum How to use checksums |
608cfe81f7154f9de113f4e637f3fde68fa21f799c93f831b451e8c238f47c91
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.1
|