Skip to main content

A simple diffusive landscape evolution model

Project description

flem

https://img.shields.io/pypi/v/flem.svg https://img.shields.io/travis/johnjarmitage/flem.svg Documentation Status https://mybinder.org/badge_logo.svg https://github.com/johnjarmitage/io-page/blob/master/static/images/flem.gif

A simple diffusive landscape evolution model

Installation

  • 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.
  • or see run_models.py for a more clunky example.

What is flem?

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:

  1. Add the choice to change precipitation rates
  2. Add the choice for boundary conditions

History

0.1.0 (2019-05-21)

  • First release on PyPI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for flem, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size flem-0.1.1-py2.py3-none-any.whl (11.3 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size flem-0.1.1.tar.gz (12.5 MB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page