Init project
This commit is contained in:
commit
2fe1284d17
5 changed files with 3632 additions and 0 deletions
13
.gitignore
vendored
Executable file
13
.gitignore
vendored
Executable file
|
|
@ -0,0 +1,13 @@
|
||||||
|
# Python-generated files
|
||||||
|
__pycache__/
|
||||||
|
*.py[oc]
|
||||||
|
build/
|
||||||
|
dist/
|
||||||
|
wheels/
|
||||||
|
*.egg-info
|
||||||
|
|
||||||
|
# Virtual environments
|
||||||
|
.venv
|
||||||
|
|
||||||
|
# Data
|
||||||
|
data
|
||||||
1
.python-version
Executable file
1
.python-version
Executable file
|
|
@ -0,0 +1 @@
|
||||||
|
3.12
|
||||||
45
README.md
Executable file
45
README.md
Executable file
|
|
@ -0,0 +1,45 @@
|
||||||
|
# eSPA for RTS
|
||||||
|
|
||||||
|
Goal of this project is to utilize the entropy-optimal Scalable Probabilistic Approximations algorithm (eSPA) to create a model which can estimate the density of Retrogressive-Thaw-Slumps (RTS) across the globe with different levels of detail.
|
||||||
|
Hoping, that a successful training could gain new knowledge about RTX-proxies.
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
```sh
|
||||||
|
uv sync
|
||||||
|
```
|
||||||
|
|
||||||
|
## Project Plan
|
||||||
|
|
||||||
|
1. Create global hexagon grids with h3
|
||||||
|
2. Enrich the grids with data from various sources and with labels from DARTS v2
|
||||||
|
3. Use eSPA for simple classification: hex has [many slumps / some slumps / few slumps / no slumps]
|
||||||
|
4. use SPARTAn for regression: one for slumps density (area) and one for total number of slumps
|
||||||
|
|
||||||
|
### Data Sources and Engineering
|
||||||
|
|
||||||
|
- Labels
|
||||||
|
- `"year"`: Year of observation
|
||||||
|
- `"area"`: Total land-area of the hexagon
|
||||||
|
- `"rts_density"`: Area of RTS divided by total land-area
|
||||||
|
- `"rts_count"`: Number of single RTS instances
|
||||||
|
- ERA5 (starting 40 years from `"year"`)
|
||||||
|
- `"temp_yearXXXX_qY"`: Y-th quantile temperature of year XXXX. Used to enter the temperature distribution into the model.
|
||||||
|
- `"thawing_days_yearXXXX"`: Number of thawing-days of year XXXX.
|
||||||
|
- `"precip_yearXXXX_qY"`: Y-th quantile precipitation of year XXXX. Similar to temperature.
|
||||||
|
- `"temp_5year_diff_XXXXtoXXXX_qY"`: Difference of the Y-th quantile temperature between year XXXX and XXXX. Always 5 years difference.
|
||||||
|
- `"temp_10year_diff_XXXXtoXXXX_qY"`: Difference of the Y-th quantile temperature between year XXXX and XXXX. Always 10 years difference.
|
||||||
|
- `"temp_diff_qY"`: Difference of the Y-th quantile temperature between year XXXX and XXXX. Always 10 years difference.
|
||||||
|
- ArcticDEM
|
||||||
|
- `"dissection_index"`: Dissection Index, (max - min) / max
|
||||||
|
- `"max_elevation"`: Maximum elevation
|
||||||
|
- `"elevationX_density"`: Area where the elevation is larger than X divided by the total land-area
|
||||||
|
- TCVIS
|
||||||
|
- ???
|
||||||
|
- Wildfire???
|
||||||
|
- Permafrost???
|
||||||
|
- GroundIceContent???
|
||||||
|
- Biome
|
||||||
|
|
||||||
|
**About temporals** Every label has its own year - all temporal dependent data features, e.g. `"temp_5year_diff_XXXXtoXXXX_qY"` are calculated respective to that year.
|
||||||
|
The number of years added from a dataset is always the same, e.g. for ERA5 for an observation in 2024 the ERA5 data would start in 1984 and for an observation from 2023 in 1983.
|
||||||
43
pyproject.toml
Executable file
43
pyproject.toml
Executable file
|
|
@ -0,0 +1,43 @@
|
||||||
|
[project]
|
||||||
|
name = "entropic-perma-risk"
|
||||||
|
version = "0.1.0"
|
||||||
|
description = "Add your description here"
|
||||||
|
readme = "README.md"
|
||||||
|
authors = [{ name = "Tobias Hölzer", email = "tobiashoelzer@hotmail.com" }]
|
||||||
|
requires-python = ">=3.12"
|
||||||
|
dependencies = [
|
||||||
|
"aiohttp>=3.12.11",
|
||||||
|
"bokeh>=3.7.3",
|
||||||
|
"cartopy>=0.24.1",
|
||||||
|
"cyclopts>=3.17.0",
|
||||||
|
"dask>=2025.5.1",
|
||||||
|
"distributed>=2025.5.1",
|
||||||
|
"entropyc",
|
||||||
|
"flox>=0.10.4",
|
||||||
|
"folium>=0.19.7",
|
||||||
|
"geopandas>=1.1.0",
|
||||||
|
"h3>=4.2.2",
|
||||||
|
"h5netcdf>=1.6.4",
|
||||||
|
"ipykernel>=6.29.5",
|
||||||
|
"ipywidgets>=8.1.7",
|
||||||
|
"mapclassify>=2.9.0",
|
||||||
|
"matplotlib>=3.10.3",
|
||||||
|
"numpy>=2.3.0",
|
||||||
|
"odc-geo[all]>=0.4.10",
|
||||||
|
"pyarrow>=20.0.0",
|
||||||
|
"requests>=2.32.3",
|
||||||
|
"rich>=14.0.0",
|
||||||
|
"rioxarray>=0.19.0",
|
||||||
|
"scipy>=1.15.3",
|
||||||
|
"smart-geocubes[arcticdem,dask,stac,viz]>=0.0.9",
|
||||||
|
"stopuhr>=0.0.10",
|
||||||
|
"xanimate",
|
||||||
|
"xarray>=2025.4.0",
|
||||||
|
"xdggs>=0.2.1",
|
||||||
|
"xvec>=0.5.1",
|
||||||
|
"zarr[remote]>=3.0.8",
|
||||||
|
]
|
||||||
|
|
||||||
|
[tool.uv.sources]
|
||||||
|
entropyc = { git = "ssh://git@github.com/AlbertEMC2Stein/entropyc", branch = "refactor/tobi" }
|
||||||
|
xanimate = { git = "https://github.com/davbyr/xAnimate" }
|
||||||
Loading…
Add table
Add a link
Reference in a new issue