Python code for generation of crystal structures based on symmetry constraints.
Project description
Content
Introduction
PyXtal is an open source Python package which was initiated by Qiang Zhu and Scott Fredericks at department of Physics and Astronomy, University of Nevada Las Vegas. The goal of PyXtal is to develop a fundamental library to allow one to design the material structure with a certain symmetry constraint. So far, the package allows for generation/manipulation of crystals, with both general and special Wyckoff positions. These structures can exported to various structural formats for further study. See the documentation for information about installation and usage.
To contribute to this project, please check How to contribute?.
Quick Start
Check the following links to quickly understand how pyxtal works
Current Features
- Generation of atomic structures for a given symmetry and stoichiometry (0-3D)
- Generation of molecular crystals (1-3D) with the support of special Wyckoff positions.
- Internal support of
cif
file and many other formats viapymatgen
orASE
. - Easy access to symmetry information (e.g., Wyckoff, site symmetry and international symbols).
- X-ray diffraction analysis and its online application
- Structural manipulation via symmetry constraint (group-subgroup relation)
- Geometry optimization from built-in and external optimization methods.
Installation
To install the code, one just needs to do
pip install pyxtal
or
pip install --upgrade git+https://github.com/qzhu2017/PyXtal.git@master
Citation
Fredericks S, Sayre D, Zhu Q*(2019) PyXtal: a Python Library for Crystal Structure Generation and Symmetry Analysis
@article{pyxtal,
title={PyXtal: a Python Library for Crystal Structure Generation and Symmetry Analysis},
author={Scott Fredericks and Dean Sayre and Qiang Zhu},
year={2019},
eprint={1911.11123},
archivePrefix={arXiv},
primaryClass={cond-mat.mtrl-sci}
}
How to contribute?
This is an open-source project. Its growth depends on the community. To contribute to PyXtal, you don't necessarily have to write the code. Any contributions from the following list will be helpful.
If you just want to use the code
- Star the PyXtal project via GitHub and recommend it to your colleagues/friends
- Open an issue to report the bug or address your wishlist
- Suggestions to improve our documentation
If you want to join the code development
- Fork the repository
- Suggest and implement new functions
- Send us the pull request
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.