Metadata-Version: 2.1
Name: masci-tools
Version: 0.10.1
Summary: masci-tools is a collection of tools for materials science.
Keywords: material science,plots,fitting,visualization,aiida,dft,all-electron
Author-email: The JuDFT team <j.broeder@fz-juelich.de>
Requires-Python: >=3.7
Description-Content-Type: text/markdown
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Dist: numpy
Requires-Dist: scipy
Requires-Dist: matplotlib
Requires-Dist: h5py
Requires-Dist: pandas
Requires-Dist: lxml~=4.8
Requires-Dist: more_itertools
Requires-Dist: seaborn
Requires-Dist: deepdiff
Requires-Dist: humanfriendly
Requires-Dist: mendeleev
Requires-Dist: click
Requires-Dist: click-completion
Requires-Dist: PyYAML
Requires-Dist: typing-extensions
Requires-Dist: tabulate
Requires-Dist: ase
Requires-Dist: bokeh ; extra == "bokeh-plots"
Requires-Dist: python-gitlab ; extra == "cmdline-extras"
Requires-Dist: bumpver ; extra == "dev"
Requires-Dist: sphinx~=4.1 ; extra == "docs"
Requires-Dist: sphinx_rtd_theme ; extra == "docs"
Requires-Dist: sphinx-click ; extra == "docs"
Requires-Dist: sphinx-toolbox<=2.15.2 ; extra == "docs"
Requires-Dist: sphinx-autodoc-typehints ; extra == "docs"
Requires-Dist: myst-parser~=0.15.2 ; extra == "docs"
Requires-Dist: mypy==0.940 ; extra == "pre-commit"
Requires-Dist: pre-commit>=2.6.0 ; extra == "pre-commit"
Requires-Dist: yapf>=0.30.0 ; extra == "pre-commit"
Requires-Dist: pylint~=2.11.1 ; extra == "pre-commit"
Requires-Dist: pytest~=6.0 ; extra == "pre-commit"
Requires-Dist: lxml-stubs~=0.4.0 ; extra == "pre-commit"
Requires-Dist: types-pytz ; extra == "pre-commit"
Requires-Dist: types-tabulate ; extra == "pre-commit"
Requires-Dist: types-click ; extra == "pre-commit"
Requires-Dist: pytest~=6.0 ; extra == "testing"
Requires-Dist: pytest-cov~=3.0 ; extra == "testing"
Requires-Dist: pytest-mpl>=0.12 ; extra == "testing"
Requires-Dist: pytest-regressions>=1.0 ; extra == "testing"
Project-URL: Documentation, https://masci-tools.readthedocs.io
Project-URL: Home, https://masci-tools.readthedocs.io
Project-URL: Source, https://github.com/JuDFTteam/masci-tools
Provides-Extra: bokeh-plots
Provides-Extra: cmdline-extras
Provides-Extra: dev
Provides-Extra: docs
Provides-Extra: pre-commit
Provides-Extra: testing

[![MIT license](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE.txt)
[![GitHub version](https://img.shields.io/github/v/tag/JuDFTTeam/masci-tools?include_prereleases&label=GitHub%20version&logo=GitHub)](https://github.com/JuDFTteam/masci-tools/releases)
[![PyPI version](https://img.shields.io/pypi/v/masci-tools)](https://pypi.org/project/masci-tools/)
[![PyPI pyversion](https://img.shields.io/pypi/pyversions/masci-tools)](https://pypi.org/project/masci-tools/)
[![Conda Version](https://img.shields.io/conda/vn/conda-forge/masci-tools.svg)](https://anaconda.org/conda-forge/masci-tools)
[![Build status](https://github.com/JuDFTteam/masci-tools/workflows/masci-tools/badge.svg?branch=develop&event=push)](https://github.com/JuDFTteam/masci-tools/actions)
[![Coverage Status](https://codecov.io/gh/JuDFTteam/masci-tools/branch/develop/graph/badge.svg)](https://codecov.io/gh/JuDFTteam/masci-tools)
[![Documentation Status](https://readthedocs.org/projects/masci-tools/badge/?version=latest)](https://masci-tools.readthedocs.io/en/latest/?badge=latest)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.5223353.svg)](https://doi.org/10.5281/zenodo.5223353)





# masci-tools

**This is a collection of tools, common things used by packages of material science.**

Feel free to contribute.

The code is hosted on GitHub at
<https://github.com/JuDFTteam/masci-tools>

The documentation is hosted on https://masci-tools.readthedocs.io.

Most functionality was developed for the use with the DFT codes developed at the Forschungszentrum Jülich (see <http://judft.de>, <https://flapw.de> and <https://jukkr.fz-juelich.de> for further information on the codes) and in the context of the AiiDA plugins for the [Fleur code](https://github.com/JuDFTteam/aiida-fleur) and the [KKR code](https://github.com/JuDFTteam/aiida-kkr).

## Installation

```
pip install masci-tools
```

## Dependencies

These python packages are needed:
* `lxml`
* `h5py`
* `deepdiff`
* `humanfriendly`  
* `matplotlib`
* `seaborn`
* `ase`
* `pymatgen`
* `mendeleev`
* `click`
* `click-completion`
* `PyYAML`
* `tabulate`

It should not depend on `aiida-core`!

## Layout of `masci-tools`

* `io`
    * Contains methods to write certain files
    * `io.parsers`: Contains parsers of certain code output or input files
* `testing`
    * Contains utilities/fixtures for testing that can be useful outside the package
* `util`
    * Contains rather low-level utility
* `tools`
    * Contains rather high-level utility which is rather complete
* `vis`
    * Contains a collection of matplotlib/bokeh methods used for plotting common results from material science simulations, e.g. bandstructures, DOS, ... 
* `cmdline`
    * Contains a small click command line interface exposing some parts of the library

## License


*masci-tools* is distributed under the terms and conditions of the MIT license which is specified in the `LICENSE.txt` file.

