A simple diffusive landscape evolution model
- Free software: MIT license
- Documentation: https://flem.readthedocs.io.
- flem requires Python 3.7
- flem requires fenics, gdal, and a bit more. Fenics is best installed using conda. Therefore before installing first get yourself Anaconda (the 3.7 version) or if you prefer it light, miniconda.
- create a directory of your choice and create an
environment.yml
file containing the following:
name: flem channels: - conda-forge - defaults dependencies: # flem requires # need to be specific for mshr and fenics - fenics=2019.1.0=py37_1 - mshr=2019.1.0=py37h7596e34_1000 - gdal - peakutils - matplotlib - scipy - pip - pip: # flem requires - flem - elevation prefix: /srv/conda
- from the terminal run:
conda env create -f environment.yml
- check out this notebook for how to run flem.
- click the icon below for an executable article!
- or see run_models.py for a more clunky example.
This is a set of functions written in python to solve for sediment transport. At the base it solves the concentrative-diffusive equations described by Smith & Bretherton (1972) [1]. These are solved using a simple finite element scheme using the fenics library. Surface run-off is routed either from model node-to-node or cell-to-cell (see Armitage, 2019) [2].
The model can be started either with a initial condition of a uniform elevation with some noise added, or a SRTM 30m DEM defined by west, south, east, north coordinates.
[1] - https://doi.org/10.1029/WR008i006p01506
[2] - https://doi.org/10.5194/esurf-7-67-2019
List of things to do:
- Add the choice to change precipitation rates
- Add the choice for boundary conditions