Skip to main content
PyXtal

Documentation Status Test Status Download Status Download Status Downloads DOI Gitter

Table of content

Introduction

PyXtal is an open source Python package which was initiated by Qiang Zhu and Scott Fredericks. The goal of PyXtal is to develop a fundamental library to allow one to design the material structure with a certain symmetry constraint. These structures can exported to various structural formats for further study. See the documentation for more information.

To contribute to this project, please check How to contribute?.

Quick Start

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.
  • Structure manipulation via subgroup/supergroup symmetry relation
  • Geometry optimization from built-in and external optimization methods.
  • Internal support of cif file and many other formats via pymatgen or ASE.
  • Easy access to symmetry information (e.g., Wyckoff, site symmetry and international symbols).
  • X-ray diffraction analysis and its online application

Installation

To install the code, one just needs to do

pip install pyxtal

or

pip install --upgrade git+https://github.com/MaterSim/PyXtal.git@master

If you want to add the Julia package install (required by the use of pyxtal.lego module), please use

export INSTALL_JULIA=1 && pip install pyxtal 

To check if the installation is successful, run the following script,

from juliacall import Main as jl
jl.seval("using CrystalNets")
print("Success")

Citation

General PyXtal

Fredericks S, Parrish K, Sayre D, Zhu Q*(2020) PyXtal: a Python Library for Crystal Structure Generation and Symmetry Analysis. [arXiv link]

@article{pyxtal,
title = "PyXtal: A Python library for crystal structure generation and symmetry analysis",
journal = "Computer Physics Communications",
volume = "261",
pages = "107810",
year = "2021",
issn = "0010-4655",
doi = "https://doi.org/10.1016/j.cpc.2020.107810",
url = "http://www.sciencedirect.com/science/article/pii/S0010465520304057",
author = "Scott Fredericks and Kevin Parrish and Dean Sayre and Qiang Zhu",
}

Site Symmetry Representation

Levy D, Panigrahi S-S, Kaba S-O, Zhu Q, Galkin M, Miret S, Ravanbakhsh S. (2024) SymmCD: Symmetry-Preserving Crystal Generation with Diffusion Models AI for Accelerated Materials Design NeurIPS 2024,

@inproceedings{
levy2024symmcd,
title={Symm{CD}: Symmetry-Preserving Crystal Generation with Diffusion Models},
author={Daniel Levy and Siba Smarak Panigrahi and S{\'e}kou-Oumar Kaba and Qiang Zhu and Mikhail Galkin and Santiago Miret and Siamak Ravanbakhsh},
booktitle={AI for Accelerated Materials Design - NeurIPS 2024},
year={2024},
url={https://openreview.net/forum?id=V7x2KZQn2v}
}

Symmetry relation

Zhu Q, Kang B, Parrish K (2022). Symmetry Relation Database and Its Application to Ferroelectric Materials Discovery

@article{zhu2022symmetry,
  title="Symmetry relation database and its application to ferroelectric materials discovery",
  author="Zhu, Qiang and Kang, Byungkyun and Parrish, Kevin",
  journal="MRS Communications",
  volume="12",
  number="5",
  pages="686--691",
  year="2022",
  doi="https://doi.org/10.1557/s43579-022-00268-4",

Organic crystal packing motif

Zhu Q, Tang W-L, Hattori S. (2022). Quantification of Crystal Packing Similarity from Spherical Harmonic Transform

@article{zhu2022quantification,
  title="Quantification of Crystal Packing Similarity from Spherical Harmonic Transform",
  author="Zhu, Qiang and Tang, Weilun and Hattori, Shinnosuke",
  journal="Crystal Growth \& Design",
  volume="22",
  number="12",
  pages="7308--7316",
  year="2022",
  doi="https://doi.org/10.1021/acs.cgd.2c00933",
}

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.

  • Star on GitHub the PyXtal project and recommend it to your colleagues/friends
  • Open an GitHub issues to report the bug or address your wishlist or improve our documentation
  • GitHub forks the repository and send us the pull request

Metadata

Release files for pyxtal 1.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyxtal 1.1.5
File Size Uploaded
pyxtal-1.1.5.tar.gz 4.1 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyxtal 1.1.5
File Interpreter ABI Platform
pyxtal-1.1.5-py3-none-any.whl Python 3 none any Details

Total release size: 8.3 MB

Release files / pyxtal-1.1.5.tar.gz

Download URL pyxtal-1.1.5.tar.gz
Size 4.1 MB
Tags Source
SHA-256 checksum
How to use checksums
c092697939bd82a2bfe13f2dab289c645b27f2283d1919898495485f18ede710
BLAKE2b-256 checksum
How to use checksums
aef29285515224de3eee5dfddaa7bb0a01f929875064c65cffccbda188d28779
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / pyxtal-1.1.5-py3-none-any.whl

Download URL pyxtal-1.1.5-py3-none-any.whl
Size 4.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
da846e8708659b1744c4140569ef76538113cda37d9415a1f211e7df8d1294cb
BLAKE2b-256 checksum
How to use checksums
ce6922de1eb4f0e2b5e765fbab2d15f08d9e91d38286d7a11c325ccd29b3d915
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release history Release notifications | RSS feed

This release

1.1.5 This release

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.6.7

2 release files

0.6.6

2 release files

0.6.5

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

1 release file

0.6.0

2 release files

0.5.9

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.6

3 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

3 release files

0.4.9

3 release files

0.4.8

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.5

3 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

3 release files

0.4.0

3 release files

0.3.9

3 release files

0.3.8

3 release files

0.3.7

3 release files

0.3.6

2 release files

0.3.5

3 release files

0.3.4

2 release files

0.3.2

3 release files

0.3.1

3 release files

0.3.0

1 release file

0.2.9

2 release files

0.2.8

1 release file

0.2.7

3 release files

0.2.6

3 release files

0.2.5

2 release files

0.2.4

3 release files

0.2.3

3 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

3 release files

0.1.9

3 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

3 release files

0.1.4

3 release files

0.1.3

3 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.3

2 release files

0.0.2

4 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page