Matscipy is a generic materials science toolbox built around the Atomic Simulation Environment (ASE). It provides useful routines for:
- Plasticity and dislocations
- Fracture mechanics
- Electro-chemistry
- Tribology
- Elastic properties
In addition to domain-specific routines, it also implements a set of general-purpose, low-level utilies:
- Efficient neighbour lists
- Atomic strain
- Ring analysis
- Correlation functions
- Second order potential derivatives
Matscipy can be installed on Windows, Linux and x86 macos with:
python3 -m pip install matscipy
To get the latest version directly (requires a working compiler):
python3 -m pip install git+https://github.com/libAtoms/matscipy.git
Compiled up-to-date wheels for Windows, Linux and x86 macos can be found here.
Sphinx-generated documentation for the project can be found here. Since Matscipy is built on top of ASE's Atoms and Calculator objects, ASE's documentation is a good complement to Matscipy's.
Issues can be used to ask questions about Matscipy.
Contributions, in the form of bug reports, improvement suggestions, documentation or pull requests, are welcome.
To run the tests locally, from Matscipy's root directory:
python3 -m pip install .[test] # installs matscipy + test dependencies cd tests/ python3 -m pytest .
The package requires:
- numpy - http://www.numpy.org/
- scipy - http://www.scipy.org/
- ASE - https://wiki.fysik.dtu.dk/ase/
Optional packages:
- quippy - http://www.github.com/libAtoms/QUIP
- atomistica - https://www.github.com/Atomistica/atomistica
- chemview - https://github.com/gabrielelanaro/chemview
matscipy was partially funded by the Deutsch Forschungsgemeinschaft (project 258153560) and by the Engineering and Physical Sciences Research Council (grants EP/P002188/1, EP/R012474/1 and EP/R043612/1).