Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Umami calculates landscape metrics

Project description

Documentation Status Build Status Build status Coverage Status Anaconda-Server Badge Binder status

What is it?

Umami is a package for calculating objective functions or objective function components for Earth surface dynamics modeling. It was designed to work well with terrainbento and other models built with the Landlab Toolkit. Examples can be found in the notebooks directory (or on Binder Binder ).

Umami offers two primary classes:

  • a Residual, which represents the difference between model and data, and
  • a Metric, which is a calculated value on either model or data.

The set of currently supported calculations are found in the umami.calculations submodule.

What does it do well?

Umami was designed to provide an input-file based interface for calculating single-value landscape metrics for use in model analysis. This supports reproducible analysis and systematic variation in metric construction. When used with terrainbento one input file can describe the model run, and one input file can describe the model assessment or model-data comparison. This streamlines model analysis applications. Umami also provides multiple output formats (YAML and Dakota), the latter of which is designed to interface with Sandia National Laboratory's Dakota package.

To get a sense of how it is meant to be used, check out the notebooks on Binder and the API documentation.

Where to get it

To install the release version of umami (this is probably what you want) we support conda and pip package management.

Using conda

Open a terminal and execute the following:

$ conda config --add channels conda-forge
$ conda install umami

Using pip

Open a terminal and execute the following:

$ pip install umami

From source code

The source code is housed on GitHub. To install the umami from source code we recommend creating a conda environment.

$ git clone https://github.com/TerrainBento/umami.git
$ cd umami
$ conda env create -f environment-dev.yml
$ conda activate umami-dev
$ python setup.py install

If you are interested in developing umami, please check out the development practices page.

Read the documentation

Documentation is housed on ReadTheDocs.

License

MIT

Report issues and get help

Umami uses Github Issue as a single point of contact for users and developers. To ask a question, report a bug, make a feature request, or to get in touch for any reason, please make an Issue.

Contribute to umami

All contributions are welcome and appreciated. Feel free to:

  • Make an issue to ask a question. Your question will help others in the future.
  • Make an issue to report a bug or a potential improvement. We will work to fix it. If you have an idea about how to fix it, please feel free to propose it, or make a Pull Request.
  • Fork the repository, make changes to the source code on a development branch, and submit a Pull Request to have your changes brought into the umami repository. No contribution to the code base or documentation is too small.

Contributors and maintainers to this project are are expected to abide the Contributor Code of Conduct.

Cite umami

status

Umami is described by a Journal of Open Source Software paper. If you use umami in your research, please cite it.

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 umami, version 1.0.1
Filename, size File type Python version Upload date Hashes
Filename, size umami-1.0.1-py3-none-any.whl (25.2 kB) File type Wheel Python version py3 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 SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page