Framework Cussen — geospatial indices for marine, volcanic, fire, agricultural, forestry, geology and space mining domains
Project description
cussen-geo
Framework Cussen — Geospatial indices for marine, volcanic, fire, agricultural, forestry, geology and space mining domains.
A reproducible, citable Python implementation of the Framework Cussen (FC), a collection of remote-sensing-based indices designed to quantify environmental processes across seven domains:
| Code | Domain | Indices |
|---|---|---|
| MAR | Marine / Coastal | CO₂ solubility (K₀), Kelp Habitat Affinity (KHAI), … |
| VOL | Volcanology | thermal anomalies, ash plumes, … |
| FIR | Fire | burn severity, smoke detection, … |
| AGR | Agriculture | crop water stress, yield estimation, … |
| FOR | Forestry | canopy structure, biomass, blue carbon, … |
| GEO | Geology / Geomorphology | hazard mapping, kriging, … |
| SP | Space Mining | CLPI, CMPI, CAPI, CASI |
Status
🚧 Alpha — under active development. v0.2 ships two domain modules:
MAR — Marine / Coastal:
MAR.01k0_weiss— CO₂ solubility (Weiss 1974)MAR.02khai— Kelp Habitat Affinity Index (proposed)
SP — Space Mining / Planetary Prospection:
- CLPI (M3 / Moon):
mri,hpi,opi - CMPI (CRISM / Mars):
hmi,cbi,ahi - CAPI (Sentinel-2 / ASTER analog sites):
mas,evi,haz - CASI (NEO VNIR spectroscopy):
vmi,mmi,mvi
Installation
pip install cussen-geo
For raster / vector / lidar workflows:
pip install "cussen-geo[all]"
Quick start
Marine (MAR)
import numpy as np
from cussen_geo.mar import k0_weiss, khai
# CO2 solubility at 12 °C, salinity 33 psu
k0 = k0_weiss(12.0, 33.0)
print(f"K0 = {k0:.2f} mmol/(L·atm)")
# K0 = 42.63 mmol/(L·atm)
# Kelp Habitat Affinity Index (triangular, T_opt = 12 °C, ΔT = 4 °C)
sst_grid = np.array([10.0, 12.0, 14.0, 17.0])
habitat = khai(sst_grid)
print(habitat)
# [0.5, 1.0, 0.5, 0.0]
Space mining (SP)
import numpy as np
from cussen_geo.sp import vmi, mvi
# Asteroid VNIR features
hydration = np.array([0.08, 0.01]) # C-type vs S-type
slope = np.array([-0.1, 0.5])
bd1_depth = np.array([0.0, 0.30])
vmi_scores = vmi(hydration, slope, bd1_depth)
print(vmi_scores.round(2))
# [0.95 0.20]
# Mission viability with delta-v penalty
mvi_scores = mvi(vmi_scores, np.zeros(2), delta_v=np.array([4.5, 4.5]))
print(mvi_scores.round(2))
# [0.95 0.2 ]
Citation
If you use cussen-geo in academic work, please cite:
@software{cussen_geo,
author = {Cussen Eltit, Pablo},
title = {cussen-geo: Framework Cussen geospatial indices},
year = {2026},
url = {https://github.com/pablocussen/cussen-geo},
note = {ORCID: 0009-0008-4853-4200}
}
License
MIT © 2026 Pablo Cussen Eltit
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cussen_geo-0.2.0.tar.gz.
File metadata
- Download URL: cussen_geo-0.2.0.tar.gz
- Upload date:
- Size: 17.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f37e3f64c3f1ae9f7cb50b69b74d03bcdbbf86f4f48d50a3d99a20d31c236cff
|
|
| MD5 |
e67e9275ad269db61ec8776bb679eba0
|
|
| BLAKE2b-256 |
45fcf19020f016f7195090c611040504ddaaaf3c7047592dbb95e514d71e8101
|
File details
Details for the file cussen_geo-0.2.0-py3-none-any.whl.
File metadata
- Download URL: cussen_geo-0.2.0-py3-none-any.whl
- Upload date:
- Size: 19.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7377e019fe094883a369e4db7f621212dff296e76a9aaea9072da5e60e0fd681
|
|
| MD5 |
084d51de73eca2519b5568ea7c49c1c5
|
|
| BLAKE2b-256 |
b6a3189bbf3d565894cb179710487195fc92638f63b18dcda499944e5bdc3f53
|