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 as 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.0
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.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / synthetic_gravity_waves-0.1.0-py3-none-any.whl
| Download URL | synthetic_gravity_waves-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c516649eb6231460e64e4eeefef17f3715611c260b46805da2214b3672d385bb
|
|
BLAKE2b-256 checksum How to use checksums |
8a7ebb5533a23e07b6ff06ca616890bb3ee586b67cc5761d1d11f92bd98d64e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.1
|