Powered by OpenAIRE graph
Found an issue? Give us feedback
ZENODOarrow_drop_down
ZENODO
Software . 2024
License: CC BY
Data sources: Datacite
ZENODO
Software . 2024
License: CC BY
Data sources: Datacite
versions View all 2 versions
addClaim

A unified formulation of quasi-geostrophic and shallow water equations via projection

Authors: Thiry, Louis; Li, Long;

A unified formulation of quasi-geostrophic and shallow water equations via projection

Abstract

# QGSW Pytorch PyTorch implementation of multi-layer quasi-geostrophic (QG) and shallow-water (SW) models. ## Requirements ```torchnumpymatplotlib```For the realistic configurations, the following libraries are also required ```scipynetCDF4scikit-image``` Tested with Intel CPUs and NVIDIA GPUs (RTX A3000 Laptop, RTX 2080Ti, V100, A100). ## Structure The source code which is in the `src/` directory has is composed of the following Python scripts - `finite_diff.py`: implements finite difference calculations. - `reconstruction.py`: implements reconstruction, i.e. interpolation for finite volume quantities. - `flux.py`: implements flow calculations for finite volume methods. - `helmholtz.py`: implements a classical Helmholtz equation solver ($\Delta f - \lambda f = r$) using pseudo-spectral methods. - `helmholtz_multigrid.py`: implements a generalized Helmholtz equation solver ($\nabla \cdot \left( c \nabla f \right) - \lambda f = r$) by multigrid method. - `masks.py`: implements mask logic for domains with non-rectangular geometries. - `sw.py`: implements Shallow-water solver - `qg.py`: implements Quasi-geostrophic solver ## Examples Examples are included in `examples/` directory. - `vortexshear.py` : a vortex shear instability to compare QG and SW solutions starting from the same initial condition `python vortexshear.py` - `doublegyre.py` : idealized double-gyre configuration to run with QG or SW `python doublegyre.py` - `natl.py` : simplified north atlantic configurations with realistic costal geometies (but without inflows/outflows across northern and southern boundaries, with flat bottom) `python natl.py`

  • BIP!
    Impact byBIP!
    selected citations
    These citations are derived from selected sources.
    This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    1
    popularity
    This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
    Average
    influence
    This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    Average
    impulse
    This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
    Average
Powered by OpenAIRE graph
Found an issue? Give us feedback
selected citations
These citations are derived from selected sources.
This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Citations provided by BIP!
popularity
This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
BIP!Popularity provided by BIP!
influence
This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Influence provided by BIP!
impulse
This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
BIP!Impulse provided by BIP!
1
Average
Average
Average
Related to Research communities