<p align="center">
<img src="https://github.com/kjappelbaum/moffragmentor/raw/main/docs/source/_static/logo.png" height="100">
</p>
<p align="center">
<a href="https://github.com/kjappelbaum/moffragmentor/actions?query=workflow%3Apython_package">
<img alt="Tests" src="https://github.com/kjappelbaum/moffragmentor/actions/workflows/python_package.yml/badge.svg" />
</a>
<a href="https://pypi.org/project/moffragmentor">
<img alt="PyPI" src="https://img.shields.io/pypi/v/moffragmentor" />
</a>
<a href="https://pypi.org/project/moffragmentor">
<img alt="PyPI - Python Version" src="https://img.shields.io/pypi/pyversions/moffragmentor" />
</a>
<a href="https://github.com/kjappelbaum/moffragmentor/blob/main/LICENSE">
<img alt="PyPI - License" src="https://img.shields.io/pypi/l/moffragmentor" />
</a>
<a href='https://moffragmentor.readthedocs.io/en/latest/?badge=latest'>
<img src='https://readthedocs.org/projects/moffragmentor/badge/?version=latest' alt='Documentation Status' />
</a>
<a href='https://github.com/psf/black'>
<img src='https://img.shields.io/badge/code%20style-black-000000.svg' alt='Code style: black' />
</a>
</p>
## πͺ Getting Started
```python
mof = MOF.from_cif('tests/test_files/HKUST-1.cif')
```
Fragment the MOF
```python
fragments = mof.fragment()
```
If you are in a Jupyter notebook you can visualize the components.
```python
fragments.linkers[0].show_molecule()
```
```python
fragments.nodes[0].show_molecule()
```
You can also search PubChem for the building blocks
```python
fragments.linkers[0].search_pubchem()
```
To get the [RCSR code](http://rcsr.anu.edu.au/nets) run
```python
fragments.net_embedding.rcsr_code
```
## π Installation
To install the latest release run
```bash
pip install moffragmentor
```
To install the development version run
```bash
pip install git+https://github.com/kjappelbaum/moffragmentor.git
```
You need to have `openbabel` installed which you can install with `conda install -c conda-forge openbabel`.
As a utility, you can also run `bash create_conda.sh` to create a conda environment with all dependencies.
Note that you might want to change the name of the name of the environment (defaults to `moffragmentor`).
## moffragmentor in the MOF decomposition tool landscape
While moffragmentor has some unique features, it might not be the right tool for your task. Due to some design choices (having a pymatgen representation of all fragments and the net) it is relatively slow in the current implementation (though there are obvious ways for fixing this).
Therefore, we encourage you to also consider alternative tools:
- [mofid](https://github.com/snurr-group/mofid)
- [mBUD](https://github.com/gdev7/mBUD)
## π Contributing
Contributions, whether filing an issue, making a pull request, or forking, are appreciated. See
[CONTRIBUTING.rst](https://github.com/kjappelbaum/moffragmentor/blob/main/CONTRIBUTING.rst) for more information on getting involved.
### βοΈ License
The code in this package is licensed under the MIT License.
### π° Funding
The research was supported by the European Research Council (ERC) under the European Unionβs Horizon 2020 research and innovation programme ([grant agreement 666983, MaGic](https://cordis.europa.eu/project/id/666983)), by the [NCCR-MARVEL](https://www.nccr-marvel.ch/), funded by the Swiss National Science Foundation, and by the Swiss National Science Foundation (SNSF) under Grant 200021_172759.
Raw data
{
"_id": null,
"home_page": "https://github.com/kjappelbaum/moffragmentor",
"name": "moffragmentor",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "mail@kjablonka.com",
"keywords": "mof,chemistry,materials-science,reticular-chemistry,SBU,topology,net,fragmentation,building-blocks",
"author": "Kevin Maik Jablonka",
"author_email": "mail@kjablonka.com",
"download_url": "https://files.pythonhosted.org/packages/a4/9e/51425dafdd0de12bcc4be7bd7f62bedbaa509363566dab6eb67fe8d08fc6/moffragmentor-0.0.6.tar.gz",
"platform": null,
"description": "\n<p align=\"center\">\n <img src=\"https://github.com/kjappelbaum/moffragmentor/raw/main/docs/source/_static/logo.png\" height=\"100\">\n</p>\n<p align=\"center\">\n <a href=\"https://github.com/kjappelbaum/moffragmentor/actions?query=workflow%3Apython_package\">\n <img alt=\"Tests\" src=\"https://github.com/kjappelbaum/moffragmentor/actions/workflows/python_package.yml/badge.svg\" />\n </a>\n <a href=\"https://pypi.org/project/moffragmentor\">\n <img alt=\"PyPI\" src=\"https://img.shields.io/pypi/v/moffragmentor\" />\n </a>\n <a href=\"https://pypi.org/project/moffragmentor\">\n <img alt=\"PyPI - Python Version\" src=\"https://img.shields.io/pypi/pyversions/moffragmentor\" />\n </a>\n <a href=\"https://github.com/kjappelbaum/moffragmentor/blob/main/LICENSE\">\n <img alt=\"PyPI - License\" src=\"https://img.shields.io/pypi/l/moffragmentor\" />\n </a>\n <a href='https://moffragmentor.readthedocs.io/en/latest/?badge=latest'>\n <img src='https://readthedocs.org/projects/moffragmentor/badge/?version=latest' alt='Documentation Status' />\n </a>\n <a href='https://github.com/psf/black'>\n <img src='https://img.shields.io/badge/code%20style-black-000000.svg' alt='Code style: black' />\n </a>\n</p>\n\n## \ud83d\udcaa Getting Started\n\n```python\nmof = MOF.from_cif('tests/test_files/HKUST-1.cif')\n```\n\nFragment the MOF\n\n```python\nfragments = mof.fragment()\n```\n\nIf you are in a Jupyter notebook you can visualize the components.\n\n```python\nfragments.linkers[0].show_molecule()\n```\n\n```python\nfragments.nodes[0].show_molecule()\n```\n\nYou can also search PubChem for the building blocks \n\n```python\nfragments.linkers[0].search_pubchem()\n```\n\nTo get the [RCSR code](http://rcsr.anu.edu.au/nets) run\n\n\n```python\nfragments.net_embedding.rcsr_code\n```\n\n## \ud83d\ude80 Installation\n\nTo install the latest release run \n\n```bash \npip install moffragmentor\n```\n\nTo install the development version run \n\n```bash\npip install git+https://github.com/kjappelbaum/moffragmentor.git\n```\n\nYou need to have `openbabel` installed which you can install with `conda install -c conda-forge openbabel`. \n\nAs a utility, you can also run `bash create_conda.sh` to create a conda environment with all dependencies.\nNote that you might want to change the name of the name of the environment (defaults to `moffragmentor`).\n\n\n## moffragmentor in the MOF decomposition tool landscape\n\nWhile moffragmentor has some unique features, it might not be the right tool for your task. Due to some design choices (having a pymatgen representation of all fragments and the net) it is relatively slow in the current implementation (though there are obvious ways for fixing this). \n\nTherefore, we encourage you to also consider alternative tools: \n\n- [mofid](https://github.com/snurr-group/mofid)\n- [mBUD](https://github.com/gdev7/mBUD)\n\n\n\n## \ud83d\udc50 Contributing\n\nContributions, whether filing an issue, making a pull request, or forking, are appreciated. See\n[CONTRIBUTING.rst](https://github.com/kjappelbaum/moffragmentor/blob/main/CONTRIBUTING.rst) for more information on getting involved.\n\n\n### \u2696\ufe0f License\n\nThe code in this package is licensed under the MIT License.\n\n\n### \ud83d\udcb0 Funding\n\nThe research was supported by the European Research Council (ERC) under the European Union\u2019s Horizon 2020 research and innovation programme ([grant agreement 666983, MaGic](https://cordis.europa.eu/project/id/666983)), by the [NCCR-MARVEL](https://www.nccr-marvel.ch/), funded by the Swiss National Science Foundation, and by the Swiss National Science Foundation (SNSF) under Grant 200021_172759.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Splits MOFs into metal nodes and linkers.",
"version": "0.0.6",
"split_keywords": [
"mof",
"chemistry",
"materials-science",
"reticular-chemistry",
"sbu",
"topology",
"net",
"fragmentation",
"building-blocks"
],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "9214994ac272a993dc8a6941f7e7fe46",
"sha256": "972635544199e3f8b67fdf39457e9d19b9c957608b079e2860bc71868753ed6f"
},
"downloads": -1,
"filename": "moffragmentor-0.0.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9214994ac272a993dc8a6941f7e7fe46",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 1619652,
"upload_time": "2022-12-24T08:40:31",
"upload_time_iso_8601": "2022-12-24T08:40:31.216729Z",
"url": "https://files.pythonhosted.org/packages/93/9f/21722e5efe1007f317ba3d950b64fb7dca614ae3549963492beb35c038e0/moffragmentor-0.0.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "0f7bee7a8a76d9516808188a4b77f213",
"sha256": "f41649b5010ba875d3c7eefda907f070adae4161114b785187f63ece4ca67aa3"
},
"downloads": -1,
"filename": "moffragmentor-0.0.6.tar.gz",
"has_sig": false,
"md5_digest": "0f7bee7a8a76d9516808188a4b77f213",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 1609233,
"upload_time": "2022-12-24T08:40:35",
"upload_time_iso_8601": "2022-12-24T08:40:35.516484Z",
"url": "https://files.pythonhosted.org/packages/a4/9e/51425dafdd0de12bcc4be7bd7f62bedbaa509363566dab6eb67fe8d08fc6/moffragmentor-0.0.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-24 08:40:35",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "kjappelbaum",
"github_project": "moffragmentor",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "moffragmentor"
}