Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ray-chew/pycsam
pyCSAM is a robust approach for approximating geodesic subgrid-scale orographic spectra with applications to weather forecasting and broader data analysis
https://github.com/ray-chew/pycsam
data-analysis gmted icon-model merit-dem orographic spectral-analysis topography weather-forecast
Last synced: 6 days ago
JSON representation
pyCSAM is a robust approach for approximating geodesic subgrid-scale orographic spectra with applications to weather forecasting and broader data analysis
- Host: GitHub
- URL: https://github.com/ray-chew/pycsam
- Owner: ray-chew
- License: gpl-3.0
- Created: 2024-03-18T11:16:39.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-05-14T20:48:22.000Z (6 months ago)
- Last Synced: 2024-05-15T17:07:12.832Z (6 months ago)
- Topics: data-analysis, gmted, icon-model, merit-dem, orographic, spectral-analysis, topography, weather-forecast
- Language: Python
- Homepage: https://ray-chew.github.io/pyCSAM/
- Size: 68.8 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.rst
- License: LICENSE
Awesome Lists containing this project
README
Constrained Spectral Approximation Method
The Constrained Spectral Approximation Method (CSAM) is a physically sound and robust method for approximating the spectrum of subgrid-scale orography. It operates under the following constraints:
* Utilises a limited number of spectral modes (no more than 100)
* Significantly reduces the complexity of physical terrain by over 500 times
* Maintains the integrity of physical information to a large extent
* Compatible with unstructured geodesic grids
* Inherently scale-awareThis method is primarily used to represent terrain for weather forecasting purposes, but it also shows promise for broader data analysis applications.
---
**[Read the documentation here](https://ray-chew.github.io/pyCSAM/index.html)**
---
## Requirements
See [`requirements.txt`](https://github.com/ray-chew/pyCSAM/blob/main/requirements.txt)
> **NOTE:** The Sphinx dependencies can be found in [`docs/conf.py`](https://github.com/ray-chew/pyCSAM/blob/main/docs/source/conf.py).
## Usage
### Installation
Fork this repository and clone your remote fork.
### Configuration
The user-defined input parameters are in the [`inputs`](https://github.com/ray-chew/pyCSAM/tree/main/inputs) subpackage. These parameters are imported into the run scripts in [`runs`](https://github.com/ray-chew/pyCSAM/tree/main/runs).
### Execution
A simple setup can be found in [`runs.idealised_isosceles`](https://github.com/ray-chew/pyCSAM/blob/main/runs/idealised_isosceles.py). To execute this run script:
```console
python3 ./runs/idealised_isosceles.py
```However, the codebase is structured such that the user can easily assemble a run script to define their own experiments. Refer to the documentation for the [available APIs](https://ray-chew.github.io/pyCSAM/api.html).
## License
GNU GPL v3 (tentative)
## Contributions
Refer to the open issues that require attention.
Any changes, improvements, or bug fixes can be submitted to upstream via a pull request.