Tools for simulating rock slope erosion and the emergent geometry of Richter slopes
Project description
The emergent geometry of rock slopes
Summary: Simulation tools in support of a geomorphic, non-convex Hamiltonian theory of rock ramp-cliff retreat and the emergent geometry of Richter-type slopes.
Abstract
An iconic image of the American West is the desert mesa: a steep cliff, rising above a ramp-like rock slope, capped by a flat bench. This famous landform has long been assumed to develop where strong rock overlies weak, and where rockfall debris suppresses ramp erosion. Such an explanation cannot be true in general, however, because the archetypal geometry can arise even in uniform bedrock with no talus armouring. Here we argue instead that the ramp-cliff shape is an emergent property. Theoretical evidence comes from a simple model of scarp retreat whose combined rates of weathering and surface-normal erosion are written as a slowly varying function of gradient. Model analysis and simulation, using geometric mechanics and level sets, reveal the sharp break in slope to form automatically as a transient shock solution of a non-convex Hamilton-Jacobi equation. Strong erodibility contrasts are not needed to explain this behaviour, but when present they lock the landform into its classic shape and allow it to persist long-term. Comparison of differential cliff recession in geologically homogeneous versus heterogeneous bedrock confirms our hypothesis.
Level-set solution
The purpose of the Python code presented here is to derive, analyze, and numerically solve a geomorphic Hamiltonian[^1] model of rock slope erosion and retreat[^2]. The code is provided as a Python library package and associated Jupyter notebooks (e.g., here and here).
Numerical solution of the model Hamilton-Jacobi equation is achieved with a level-set scheme[^3] that employs Lax-Friedrichs finite differencing to obtain stable viscosity solutions for a non-convex Hamiltonian. The level-set code is custom implemented in Python.
Model analysis is performed using some tools from geometric mechanics[^4]: having converted the rock-slope erosion model into geomorphic Hamiltonian $\mathcal{H}(\mathbf{r}, \mathbf{p})$ form, this Hamiltonian is then used to derive Hamilton's ray tracing equations $(\partial_{\mathbf{p}}\mathcal{H}, -\partial_{\mathbf{r}}\mathcal{H})$ and the co-metric of rock slope erosion tensor $g^{ij} = \partial_{ij}\mathcal{H}$; these properties are then probed to understand model stability, notably to place bounds on the non-convexity of $\mathcal{H}$ and to identify critical angles.
References
[^3]: Osher, S., & Fedkiw, R., 2003. Level Set Methods and Dynamic Implicit Surfaces. Springer-Verlag New York, Inc. See page 50.
[^4]: Holm, D.D., 2011. Geometric Mechanics. Part I: Dynamics and Symmetry (2nd Edition)
Project details
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 erosionfront-0.1.18.tar.gz.
File metadata
- Download URL: erosionfront-0.1.18.tar.gz
- Upload date:
- Size: 58.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5ebf8a650c29504d2251affe0867d5c1dd3e378b782a61df6217afa955fe1416
|
|
| MD5 |
49982f8d5863eba6229763bcda1b96d1
|
|
| BLAKE2b-256 |
b76813f30e072e5179d7c5c45d81d9e96c73a41dfa10dd97df24579481bc1c67
|
Provenance
The following attestation bundles were made for erosionfront-0.1.18.tar.gz:
Publisher:
pypi-publish.yml on cstarkjp/ErosionFront
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erosionfront-0.1.18.tar.gz -
Subject digest:
5ebf8a650c29504d2251affe0867d5c1dd3e378b782a61df6217afa955fe1416 - Sigstore transparency entry: 1721938856
- Sigstore integration time:
-
Permalink:
cstarkjp/ErosionFront@71c577b5e2b356072866bceecf18edcec55a66a9 -
Branch / Tag:
refs/heads/PyPI - Owner: https://github.com/cstarkjp
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@71c577b5e2b356072866bceecf18edcec55a66a9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file erosionfront-0.1.18-py3-none-any.whl.
File metadata
- Download URL: erosionfront-0.1.18-py3-none-any.whl
- Upload date:
- Size: 70.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e47b079d0b05addd7e6c3e76f222e5c2bdefdc7ced49f7a4585480562911921c
|
|
| MD5 |
4bbef995fce8ed49c2a883dd1d8afe84
|
|
| BLAKE2b-256 |
aafeb4dddfe917d91937123d8e37b1aed9e471d2fd50536c1ed4e7165e61687a
|
Provenance
The following attestation bundles were made for erosionfront-0.1.18-py3-none-any.whl:
Publisher:
pypi-publish.yml on cstarkjp/ErosionFront
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
erosionfront-0.1.18-py3-none-any.whl -
Subject digest:
e47b079d0b05addd7e6c3e76f222e5c2bdefdc7ced49f7a4585480562911921c - Sigstore transparency entry: 1721939034
- Sigstore integration time:
-
Permalink:
cstarkjp/ErosionFront@71c577b5e2b356072866bceecf18edcec55a66a9 -
Branch / Tag:
refs/heads/PyPI - Owner: https://github.com/cstarkjp
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@71c577b5e2b356072866bceecf18edcec55a66a9 -
Trigger Event:
push
-
Statement type: