[![DOI](https://zenodo.org/badge/282114690.svg)](https://zenodo.org/badge/latestdoi/282114690)
# NLMpy <img src="images/logo.png" align="right" width="200" />
`NLMpy` is a Python package for the creation of neutral landscape models that
are widely used by landscape ecologists to model ecological patterns across
landscapes. `NLMpy` can create both continuous patterns to represent landscape
characteristics such as elevation or moisture gradients, or categorical patterns
to represent landscape characteristics such as vegetation patches or land parcel
boundaries.
`NLMpy` aims to:
- be open-source so it can be easily adapted or developed for specific modelling requirements.
- be cross-platform it can be used on any computer system.
- bring together a wide range of neutral landscape model algorithms.
- be easily integrated with geographic information system data.
- enable novel combinations and integrations of different neutral landscape model algorithms.
A full description of the package can be found in the accompanying
[software paper](https://besjournals.onlinelibrary.wiley.com/doi/full/10.1111/2041-210X.12308).
## Quick examples
All the `NLMpy` neutral landscape models are produced as two-dimensional NumPy arrays, so the
results can be easily incorporated into broader Python workflows.
Using `NLMpy` to create a midpoint displacement neutral landscape model can be achieved with
only two lines of code:
```python
from nlmpy import nlmpy
nlm = nlmpy.mpd(nRow=50, nCol=50, h=0.75)
```
But as described in the [software paper](https://besjournals.onlinelibrary.wiley.com/doi/full/10.1111/2041-210X.12308)
a wide variety of different patterns can be produced.
## Citation
If you use `NLMpy` in your research we would be very grateful if you could please cite the
software using the following freely available software paper:
[Etherington TR, Holland EP, O'Sullivan D (2015) NLMpy: a Python software package for
the creation of neutral landscape models within a general numerical framework. Methods in
Ecology and Evolution 6:164-168](https://besjournals.onlinelibrary.wiley.com/doi/full/10.1111/2041-210X.12308)
## Installation
`NLMpy` is available on the [Python Package Index](https://pypi.python.org/pypi/nlmpy), so it can be installed using:
```
pip install nlmpy
```
If that does not work you could also simply move the `NLMpy.py` file to the same location
on your computer as a Python script that wants to import `NLMpy`, then when those scripts are
executed they will import all the `NLMpy` functions. So while this approach does not
actually install `NLMpy` onto your computer, it does at least allow you to make use of the
functionality of `NLMpy` within a neighbouring Python script.
## Package dependencies
- numpy
- scipy
- numba
## Community guidelines
We very much welcome input from others\! If you find a bug, need some
help, or can think of some extra functionality that would be useful,
please raise an
[issue](https://github.com/tretherington/nlmpy/issues). Better
still, please feel free to fork the project and raise a pull request if
you think and can fix a bug, clarify the documentation, or improve the
functionality yourself.
Raw data
{
"_id": null,
"home_page": "",
"name": "nlmpy",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3",
"maintainer_email": "",
"keywords": "",
"author": "E. Penelope Holland, David O'Sullivan, Pierre Vigier",
"author_email": "\"Thomas R. Etherington\" <etheringtont@landcareresearch.co.nz>",
"download_url": "https://files.pythonhosted.org/packages/c1/e3/19d4483531c41a1742f1d43273b3c8d96c92f6095347fc15d45440cc296e/nlmpy-1.1.2.tar.gz",
"platform": null,
"description": "[![DOI](https://zenodo.org/badge/282114690.svg)](https://zenodo.org/badge/latestdoi/282114690)\n\n# NLMpy <img src=\"images/logo.png\" align=\"right\" width=\"200\" />\n\n`NLMpy` is a Python package for the creation of neutral landscape models that \nare widely used by landscape ecologists to model ecological patterns across \nlandscapes. `NLMpy` can create both continuous patterns to represent landscape \ncharacteristics such as elevation or moisture gradients, or categorical patterns \nto represent landscape characteristics such as vegetation patches or land parcel \nboundaries.\n\n`NLMpy` aims to:\n\n- be open-source so it can be easily adapted or developed for specific modelling requirements.\n- be cross-platform it can be used on any computer system.\n- bring together a wide range of neutral landscape model algorithms.\n- be easily integrated with geographic information system data.\n- enable novel combinations and integrations of different neutral landscape model algorithms.\n\nA full description of the package can be found in the accompanying \n[software paper](https://besjournals.onlinelibrary.wiley.com/doi/full/10.1111/2041-210X.12308).\n\n## Quick examples\n\nAll the `NLMpy` neutral landscape models are produced as two-dimensional NumPy arrays, so the \nresults can be easily incorporated into broader Python workflows.\n\nUsing `NLMpy` to create a midpoint displacement neutral landscape model can be achieved with \nonly two lines of code:\n\n```python\nfrom nlmpy import nlmpy\nnlm = nlmpy.mpd(nRow=50, nCol=50, h=0.75)\n```\n\nBut as described in the [software paper](https://besjournals.onlinelibrary.wiley.com/doi/full/10.1111/2041-210X.12308) \na wide variety of different patterns can be produced.\n\n## Citation\n\nIf you use `NLMpy` in your research we would be very grateful if you could please cite the \nsoftware using the following freely available software paper:\n\n[Etherington TR, Holland EP, O'Sullivan D (2015) NLMpy: a Python software package for \nthe creation of neutral landscape models within a general numerical framework. Methods in \nEcology and Evolution 6:164-168](https://besjournals.onlinelibrary.wiley.com/doi/full/10.1111/2041-210X.12308)\n\n## Installation\n\n`NLMpy` is available on the [Python Package Index](https://pypi.python.org/pypi/nlmpy), so it can be installed using:\n\n```\npip install nlmpy\n```\n\nIf that does not work you could also simply move the `NLMpy.py` file to the same location \non your computer as a Python script that wants to import `NLMpy`, then when those scripts are \nexecuted they will import all the `NLMpy` functions. So while this approach does not \nactually install `NLMpy` onto your computer, it does at least allow you to make use of the \nfunctionality of `NLMpy` within a neighbouring Python script.\n\n## Package dependencies\n\n- numpy\n- scipy\n- numba\n\n## Community guidelines\n\nWe very much welcome input from others\\! If you find a bug, need some\nhelp, or can think of some extra functionality that would be useful,\nplease raise an\n[issue](https://github.com/tretherington/nlmpy/issues). Better\nstill, please feel free to fork the project and raise a pull request if\nyou think and can fix a bug, clarify the documentation, or improve the\nfunctionality yourself.\n",
"bugtrack_url": null,
"license": "",
"summary": "A Python package to create neutral landscape models",
"version": "1.1.2",
"project_urls": {
"Homepage": "https://github.com/tretherington/nlmpy"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "676568607516b74f559aab994003c9548a6325fd49655166e6fb41bedfd71717",
"md5": "4d45fed38965b3cda20550f0ab579c70",
"sha256": "4387c868ee3945eeed85be9178d5cd4c3885c994d00eecca7a67ea3e82642388"
},
"downloads": -1,
"filename": "nlmpy-1.1.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4d45fed38965b3cda20550f0ab579c70",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3",
"size": 12828,
"upload_time": "2023-07-28T03:01:57",
"upload_time_iso_8601": "2023-07-28T03:01:57.270472Z",
"url": "https://files.pythonhosted.org/packages/67/65/68607516b74f559aab994003c9548a6325fd49655166e6fb41bedfd71717/nlmpy-1.1.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c1e319d4483531c41a1742f1d43273b3c8d96c92f6095347fc15d45440cc296e",
"md5": "183258c1b20f5bcaab2326b76ae7de47",
"sha256": "92f4e98558555ecf08eb701ea9d5abe6eff14a5dc821694a521c6fc7ef0a0011"
},
"downloads": -1,
"filename": "nlmpy-1.1.2.tar.gz",
"has_sig": false,
"md5_digest": "183258c1b20f5bcaab2326b76ae7de47",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3",
"size": 210523,
"upload_time": "2023-07-28T03:01:59",
"upload_time_iso_8601": "2023-07-28T03:01:59.535951Z",
"url": "https://files.pythonhosted.org/packages/c1/e3/19d4483531c41a1742f1d43273b3c8d96c92f6095347fc15d45440cc296e/nlmpy-1.1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-07-28 03:01:59",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "tretherington",
"github_project": "nlmpy",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "nlmpy"
}