Skip to content

Commit

Permalink
Merge branch 'master' into release
Browse files Browse the repository at this point in the history
  • Loading branch information
kbarnhart committed Oct 14, 2019
2 parents 5d6531f + 286fe99 commit f8ea92d
Show file tree
Hide file tree
Showing 13 changed files with 783 additions and 49 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Expand Up @@ -61,6 +61,6 @@ install:
- pip install -e .
script:
- pip install pytest pytest-cov coveralls
- pip install jupyter pandas plotnine holoviews terrainbento tqdm
- pip install jupyter pandas plotnine holoviews terrainbento tqdm rasterio
- pytest umami tests/ --doctest-modules --cov=umami --cov-report=xml:$(pwd)/coverage.xml -vvv
after_success: coveralls
23 changes: 16 additions & 7 deletions README.md
Expand Up @@ -4,6 +4,7 @@
[![Coverage Status](https://coveralls.io/repos/github/TerrainBento/umami/badge.svg?branch=master)](https://coveralls.io/github/TerrainBento/umami?branch=master)
[![Anaconda-Server Badge](https://anaconda.org/conda-forge/umami/badges/installer/conda.svg)](https://conda.anaconda.org/conda-forge)
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/TerrainBento/umami/master?filepath=notebooks%2FWelcome.ipynb)
[![status](https://joss.theoj.org/papers/1dea51d02def0ff3ef5108eb2a7af3a4/status.svg)](https://joss.theoj.org/papers/1dea51d02def0ff3ef5108eb2a7af3a4)

# What is it?

Expand Down Expand Up @@ -91,18 +92,26 @@ Documentation is housed on [ReadTheDocs](https://umami.readthedocs.io).

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](https://github.com/TerrainBento/umami/issues).
any reason, please make [an Issue](https://github.com/TerrainBento/umami/issues).

# Contribute to umami

All contributions are welcome.
All contributions are welcome and appreciated. Feel free to:

- Make [an issue](https://github.com/TerrainBento/umami/issues) to ask a
question. Your question will help others in the future.
- Make [an issue](https://github.com/TerrainBento/umami/issues) 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](https://help.github.com/en/articles/fork-a-repo), make
changes to the source code on a
[development branch](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow),
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](https://github.com/TerrainBento/umami/blob/master/CODE_OF_CONDUCT.md).

# Cite umami
[![status](https://joss.theoj.org/papers/1dea51d02def0ff3ef5108eb2a7af3a4/status.svg)](https://joss.theoj.org/papers/1dea51d02def0ff3ef5108eb2a7af3a4)

If you use umami in your research, please cite it.

A Journal of Open Source Software submission is planned. When it is finalized,
a link and citation will be found here.
Umami is described by a Journal of Open Source Software paper. If you use umami in your research, please cite it.
2 changes: 2 additions & 0 deletions appveyor.yml
Expand Up @@ -29,6 +29,8 @@ install:
- cmd: conda config --set always_yes yes
- cmd: pip install pytest
- cmd: pip install jupyter pandas plotnine holoviews terrainbento tqdm
- cmd: conda install rasterio -c conda-forge
- cmd: conda install landlab -c conda-forge
- cmd: conda info
- cmd: conda list

Expand Down
1 change: 1 addition & 0 deletions binder/postBuild
Expand Up @@ -9,5 +9,6 @@ conda install pandas
conda install plotnine>=0.6.0
conda install terrainbento>=1.10.1
conda install tqdm
conda install rasterio

python setup.py install
2 changes: 2 additions & 0 deletions environment-dev.yml
Expand Up @@ -20,3 +20,5 @@ dependencies:
- tqdm
- plotnine>=0.6.0
- terrainbento>=1.1
- gdal
- rasterio
40 changes: 16 additions & 24 deletions joss/paper.bib
@@ -1,44 +1,41 @@
@Article{hobley2017creative,
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.},
TITLE = {Creative computing with Landlab: an open-source toolkit for building, coupling, and exploring two-dimensional numerical models of Earth-surface dynamics},
TITLE = {{Creative computing with Landlab: an open-source toolkit for building, coupling, and exploring two-dimensional numerical models of Earth-surface dynamics}},
JOURNAL = {Earth Surface Dynamics},
VOLUME = {5},
YEAR = {2017},
NUMBER = {1},
PAGES = {21--46},
URL = {https://www.earth-surf-dynam.net/5/21/2017/},
DOI = {10.5194/esurf-5-21-2017}
}

@Article{barnhart2019terrain,
AUTHOR = {Barnhart, K. R. and Glade, R. C. and Shobe, C. M. and Tucker, G. E.},
TITLE = {Terrainbento 1.0: a Python package for multi-model analysis in long-term drainage basin evolution},
TITLE = {{Terrainbento 1.0: a Python package for multi-model analysis in long-term drainage basin evolution}},
JOURNAL = {Geoscientific Model Development},
VOLUME = {12},
YEAR = {2019},
NUMBER = {4},
PAGES = {1267--1297},
URL = {https://www.geosci-model-dev.net/12/1267/2019/},
DOI = {10.5194/gmd-12-1267-2019}
}

@article{adams2019dakota,
author = {Adams, Brian M and Eldred, Michael S and Geraci, Gianluca and Hooper, Russell W and Jakeman, John D and Maupin, Kathryn A and Monschk, Jason A and Rushdi, Ahmad A and Stephens, J Adam and Swiler, Laura P and Wildey, Timothy M and Bohnhoff, William J and Dalbey, Keith R and Ebeida, Mohamed S and Eddy, John P and Hough, Patricia D and Khalil, Mohammad and Hu, Kenneth T and Ridgway, Elliott M and Vigil, Dena M and Winokur, Justin G},
author = {Adams, B. M. and Eldred, S. and Geraci, G. and Hooper, R. W. and Jakeman, J. D. and Maupin, K. A. and Monschk, J. A. and Rushdi, A. A. and Stephens, J. A. and Swiler, L. P. and Wildey, T. M. and Bohnhoff, W. J. and Dalbey, K. R. and Ebeida, M. S. and Eddy, J. P. and Hough, P. D. and Khalil, M. and Hu, K. T. and Ridgway, E. M. and Vigil, D. M. and Winokur, J. G.},
title = {{Dakota, A Multilevel Parallel Object-Oriented Framework for Design Optimization, Parameter Estimation, Uncertainty Quantification, and Sensitivity Analysis: Version 6.10 User{\textquoteright}s Manual}},
journal = {Sandia National Laboratories, Tech. Rep. SAND2014-4633},
journal = {{Sandia National Laboratories, Tech. Rep. SAND2014-4633}},
year = {2019}
}


@Article{forte2019tak,
AUTHOR = {Forte, A. M. and Whipple, K. X.},
TITLE = {Short communication: The Topographic Analysis Kit (TAK) for TopoToolbox},
TITLE = {{Short communication: The Topographic Analysis Kit (TAK) for TopoToolbox}},
JOURNAL = {Earth Surface Dynamics},
VOLUME = {7},
YEAR = {2019},
NUMBER = {1},
PAGES = {87--95},
URL = {https://www.earth-surf-dynam.net/7/87/2019/},
DOI = {10.5194/esurf-7-87-2019}
}

Expand All @@ -50,7 +47,6 @@ @Article{club2017geomorphometric
YEAR = {2017},
NUMBER = {3},
PAGES = {369--385},
URL = {https://www.earth-surf-dynam.net/5/369/2017/},
DOI = {10.5194/esurf-5-369-2017}
}

Expand All @@ -61,42 +57,38 @@ @article{mudd2014statistical
volume = {119},
number = {2},
pages = {138-152},
keywords = {bedrock channels, topographic analysis, landscape evolution},
doi = {10.1002/2013JF002981},
url = {https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1002/2013JF002981},
year = {2014}
}


@Article{schwanghart2014topo,
AUTHOR = {Schwanghart, W. and Scherler, D.},
TITLE = {Short Communication: TopoToolbox 2 - a MATLAB-based software for topographic analysis and modeling in Earth surface sciences},
TITLE = {{Short Communication: TopoToolbox 2 - a MATLAB-based software for topographic analysis and modeling in Earth surface sciences}},
JOURNAL = {Earth Surface Dynamics},
VOLUME = {2},
YEAR = {2014},
NUMBER = {1},
PAGES = {1--7},
URL = {https://www.earth-surf-dynam.net/2/1/2014/},
DOI = {10.5194/esurf-2-1-2014}
}


@article{schwanghart2010topo,
author = "Schwanghart, W. and Kuhn, N. J.",
title = "TopoToolbox: A set of Matlab functions for topographic analysis",
journal = "Environmental Modelling & Software",
volume = "25",
number = "6",
pages = "770 - 781",
year = "2010",
issn = "1364-8152",
doi = "https://doi.org/10.1016/j.envsoft.2009.12.002",
url = "http://www.sciencedirect.com/science/article/pii/S1364815209003053"
author = {Schwanghart, W. and Kuhn, N. J.},
title = {{TopoToolbox: A set of Matlab functions for topographic analysis}},
journal = {{Environmental Modelling \& Software}},
volume = {25},
number = {6},
pages = {770 - 781},
year = {2010},
issn = {1364-8152},
doi = {https://doi.org/10.1016/j.envsoft.2009.12.002}
}

@Article{ perron2013integral,
author = {Perron, J Taylor and Royden, Leigh},
journal = {Earth Surface Processes and Landforms},
journal = {{Earth Surface Processes and Landforms}},
number = {6},
pages = {570--576},
publisher = {Wiley Online Library},
Expand Down
8 changes: 4 additions & 4 deletions notebooks/DiscretizedMisfit.ipynb
Expand Up @@ -4,14 +4,14 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# Part 4: Application using the Discretized Misfit calculation\n",
"# Part 5: Application using the Discretized Misfit calculation\n",
"\n",
"\n",
"By now, you should have looked through [Part 1](IntroductionToMetric.ipynb) and [Part 2](IntroductionToResidual.ipynb) of the introductory notebook series. These introduced the umami `Metric` and `Residual` classes. You should have also worked through [Part 3](ExampleApplication.ipynb), which provides an example application of umami. \n",
"By now, you should have looked through [Part 1](IntroductionToMetric.ipynb), [Part 2](IntroductionToResidual.ipynb) of the introductory notebook series, and [Part 3](OtherIO_options.ipynb) of the introductory notebook series. These introduced the umami `Metric` and `Residual` classes. You should have also worked through [Part 4](ExampleApplication.ipynb), which provides an example application of umami. \n",
"\n",
"## Scope\n",
"\n",
"Similar to [Part 3](ExampleApplication.ipynb), this application will use umami alongside the [terrainbento](https://terrainbento.readthedocs.io/en/latest/) package. As in the prior example, we will define a \"synthetic truth\" model evaluation with a specific set of input parameters, and then do a grid search letting some of those parameters vary. In this way we will explore which statistics for model-data comparison do best at identifying the \"true\" parameters. \n",
"Similar to [Part 4](ExampleApplication.ipynb), this application will use umami alongside the [terrainbento](https://terrainbento.readthedocs.io/en/latest/) package. As in the prior example, we will define a \"synthetic truth\" model evaluation with a specific set of input parameters, and then do a grid search letting some of those parameters vary. In this way we will explore which statistics for model-data comparison do best at identifying the \"true\" parameters. \n",
"\n",
"This application focuses on the least intuitive of the umami calculations: the [`discretized_misfit`](https://umami.readthedocs.io/en/latest/umami.calculations.residual.discretized_misfit.html). \n",
"\n",
Expand Down Expand Up @@ -477,7 +477,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
"version": "3.7.4"
}
},
"nbformat": 4,
Expand Down
8 changes: 4 additions & 4 deletions notebooks/ExampleApplication.ipynb
Expand Up @@ -4,9 +4,9 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"# Part 3: Example application\n",
"# Part 4: Example application\n",
"\n",
"By now, you should have looked through [Part 1](IntroductionToMetric.ipynb) and [Part 2](IntroductionToResidual.ipynb) of the introductory notebook series. These introduced the umami `Metric` and `Residual` classes. \n",
"By now, you should have looked through [Part 1](IntroductionToMetric.ipynb), [Part 2](IntroductionToResidual.ipynb) of the introductory notebook series, and [Part 3](OtherIO_options.ipynb). These introduced the umami `Metric` and `Residual` classes. \n",
"\n",
"## Scope\n",
"\n",
Expand Down Expand Up @@ -402,7 +402,7 @@
"source": [
"# Next steps\n",
"\n",
"The next step is the final notebook in the four part introductory series: [Part 4: Application using the Discretized Misfit calculation](DiscretizedMisfit.ipynb)."
"The next step is the final notebook in the four part introductory series: [Part 5: Application using the Discretized Misfit calculation](DiscretizedMisfit.ipynb)."
]
},
{
Expand All @@ -429,7 +429,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
"version": "3.7.4"
}
},
"nbformat": 4,
Expand Down
4 changes: 2 additions & 2 deletions notebooks/IntroductionToMetric.ipynb
Expand Up @@ -6,7 +6,7 @@
"source": [
"# Part 1: Introduction to Umami and the `Metric` Class\n",
"\n",
"Umami is a package for calculating metrics for use with for Earth surface dynamics models. This notebook is the first half of a two-part introduction to using umami.\n",
"Umami is a package for calculating metrics for use with for Earth surface dynamics models. This notebook is the first part of a three-part introduction to using umami.\n",
"\n",
"Umami was designed to work well with the [terrainbento](https://terrainbento.readthedocs.io/en/latest/) model package, as well as other models built using the [Landlab Toolkit](https://github.com/landlab/landlab). \n",
"\n",
Expand Down Expand Up @@ -361,7 +361,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
"version": "3.7.4"
}
},
"nbformat": 4,
Expand Down
13 changes: 10 additions & 3 deletions notebooks/IntroductionToResidual.ipynb
Expand Up @@ -6,7 +6,7 @@
"source": [
"# Part 2: Introduction to Umami and the `Residual` Class\n",
"\n",
"Umami is a package for calculating metrics for use with for Earth surface dynamics models. This notebook is the second half of a two-part introduction to using umami.\n",
"Umami is a package for calculating metrics for use with for Earth surface dynamics models. This notebook is the second notebook in a three-part introduction to using umami.\n",
"\n",
"## Scope of this tutorial\n",
"\n",
Expand Down Expand Up @@ -278,8 +278,15 @@
"source": [
"# Next steps\n",
"\n",
"Now that you have a sense for how the `Metric` and `Residual` classes are used, try the next notebook: [Part 3: Example application](ExampleApplication.ipynb)."
"Now that you have a sense for how the `Metric` and `Residual` classes are used, try the next notebook: [Part 3: Other IO options (using umami without Landlab or terrainbento)](OtherIO_options.ipynb)."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
Expand All @@ -298,7 +305,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.3"
"version": "3.7.4"
}
},
"nbformat": 4,
Expand Down

0 comments on commit f8ea92d

Please sign in to comment.