Python Library: Stochastic Geomorphological Transport for Terrain Erosion Simulation
Project description
geotransport
Stochastic Geomorphological Transport for Terrain Erosion Simulation
Official Source Code Repository
A simulated terrain generated with this method.
Nicholas McDonald Guillaume Cordonnier
Reading the Source Code
This repository contains a minimal reference implementation of our core algorithm - the generalized stochastic integration procedure - and includes example code for reproducing our error convergence plot and computing stochastic linear transport across a digital elevation model.
Note that this repository doesn't contain the full source code to perform the erosion simulation, but a version can be found in soillib. The reason for this separation is that this repository can remain archived with this reference implementation, while soillib can change continuously to adapt to needs.
This also helps keep the reference implementation simple and with minimal assumptions.
Using this Repository
The primary algorithm is implemented as a CUDA kernel operating on a silt::tensor (dependency: silt), exposed to python through nanobind. The easiest way to run the example scripts is to install the wheel file provided in the releases section of this repository using pip.
Repository Structure
/example: Example scripts and data/ext: Submodule dependencies/python: Python bindings generated w. nanobind/source: C++/CUDA primary implementation
Building from Source
Note: Tested and working on Windows
After cloning, update the submodules:
git submodule update --init --recursive
Build from source and install from this repository using pip:
pip install .
Re-building for development:
pip install --no-build-isolation -ve .
Build directly using CMake:
cmake -S . -B build
cmake --build build
Build Wheel Distributable:
pip wheel .
Details
If you are building from source, please follow the instructions in silt to make sure you have all required dependencies.
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 Distributions
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 geotransport-1.0.0-cp312-abi3-win_amd64.whl.
File metadata
- Download URL: geotransport-1.0.0-cp312-abi3-win_amd64.whl
- Upload date:
- Size: 9.8 MB
- Tags: CPython 3.12+, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f1705eda44a7274e1dcda5c167844ded24cc99986cdf1469d1e7a12479b74f6
|
|
| MD5 |
00c27a41865ce755fb312ea826c6a985
|
|
| BLAKE2b-256 |
970557218c53cf26d738dc37889ce070ac2c59cd0ec5b3555d19ea72cdd0ae3a
|