Landlab: A modular Earth Surface Dynamics modeling library

Landlab is an open-source Python-language package for numerical modeling of Earth surface dynamics. It contains:

  • A gridding engine which represents the model domain. Regular and irregular grids are supported.

  • A library of process components, each of which represents a physical process (e.g., generation of rain, erosion by flowing water). These components have a common interface and can be combined based on a user’s needs.

  • Utilities that support general numerical methods, file input/output, and visualization.

In addition Landlab contains a set of Jupyter notebook tutorials providing an introduction to core concepts and examples of use.

Landlab was desiged for disciplines that quantify Earth surface dynamics such as geomorphology, hydrology, glaciology, and stratigraphy. It can also be used in related fields. Scientists who use this type of model often build their own unique model from the ground up, re-coding the basic building blocks of their landscape model rather than taking advantage of codes that have already been written. Landlab saves practitioners from the need for this kind of re-invention by providing standardized components that they can re-use.

Watch the webinar Landlab Toolkit Overview at CSDMS to learn more.

The most current source code is always available from our git repository.

If you are interested in the state of current development, we compile ongoing development. If you are interested in contributing but don’t know how to get started (THANK YOU!), we compile desired contributions and have a page all about development.

Many Jupyter notebooks exist describing use of Landlab. Find an overview here. A subset of these notebooks are designed specifically for the classroom. Information about them and how to set them up for classroom use is described on this page.

Landlab 2.0

In late December 2019 Landlab switched to version 2.0-beta. Landlab will be in 2.0-beta until the Landlab 2.0 publication is finalized. Landlab dropped support of Python 2.7 with this transition.

Supported Python Versions

Landlab supports Python versions >= 3.6. Landlab distributes pre-packaged binaries through conda-forge and PyPI for versions 3.6 and 3.7 (3.8 coming soon). Note that on PyPI, the --pre flag is necessary while Landlab v2.0 is in beta release.


Landlab is funded by the US National Science Foundation. It has been supported by the following grants:

  • A Collaborative NSF SI2-SSE proposal to University of Colorado (Greg Tucker, 1147454), and the University of Washington (Erkan Istanbulluoglu, 1148305)

  • A Collaborative NSF SI2-SSI proposal to University of Colorado (Greg Tucker and Dan Hobley, 1450409), Tulane University (Nicole Gasparini, 1450338), and the University of Washington (Erkan Istanbulluoglu, 1450412).

  • A NSF EAR Postdoctoral Fellowship to Katy Barnhart (1725774).

Citing Landlab

If you use any portion of Landlab, you must cite the following paper:

Hobley, D. E. J., Adams, J. M., Nudurupati, S. S., Hutton, E. W. H., Gasparini, N. M., Istanbulluoglu, E. and Tucker, G. E., 2017, Creative computing with Landlab: an open-source toolkit for building, coupling, and exploring two-dimensional numerical models of Earth-surface dynamics, Earth Surface Dynamics, 5, p 21-46, 10.5194/esurf-5-21-2017.

BibTeX format:

         Author = {Hobley, D. E. J. and Adams, J. M. and
                   Nudurupati, S. S. and Hutton, E. W. H.
                   and Gasparini, N. M. and Istanbulluoglu,
                   E. and Tucker, G. E.},
         Journal = {Earth Surface Dynamics},
         Year = {2017},
         Title = {Creative computing with Landlab: an open-source
                  toolkit for building, coupling, and exploring
                  two-dimensional numerical models of
                  Earth-surface dynamics},
         Number = {5},
         Pages = {21-46},
         Doi = {10.5194/esurf-5-21-2017}}

If you are working with Landlab components and utilities, many of them have their own publication. Please cite it to acknowledge the component authors.

Citation information for each component can be found as follows:

  • Where relevant, software citation and general references, are listed in the Component API documentation under the References section.

  • Software citations are included in component metadata. We have created a tool called the “Citation Registry” which creates a .bib file for software citations used in an application. See example usage here.


Questions? Feedbacks?

Need an improvement/addition to Landlab?

Want to contribute?

The recommended way to contact the Landlab development team is with a GitHub Issue

To keep in touch with the latest Landlab news:

During workshops and clinics, we often use the Landlab Slack channel

The Landlab Team:
  • Greg Tucker (CU)

  • Nicole Gasparini (Tulane)

  • Erkan Istanbulluoglu (UW)

  • Daniel Hobley (Cardiff)

  • Sai S. Nudurupati (UW)

  • Jordan Adams (Tulane)

  • Eric Hutton (CU)

  • Jenny Knuth (CU)

  • Katy Barnhart (CU)

  • Margaux Mouchene (CU)

  • Christina Bandaragoda (UW)

  • Nathan Lyons (Tulane)