Derivative structure enumerator for multilattice
Project description
dsenum
Derivative structure enumerator for multilattice
Installation
dsenum works with Python3.8+ and can be installed via PyPI:
pip install dsenum
Or in local:
git clone git@github.com:lan496/dsenum.git
cd dsenum
pip install -e .
Usage
import numpy as np
from pymatgen.core import Lattice, Structure
from pymatgen.core.periodic_table import DummySpecie
from dsenum import StructureEnumerator
latt = Lattice(np.array([[0, 1, 1], [1, 0, 1], [1, 1, 0]]))
coords = [[0, 0, 0]]
structure = Structure(latt, [DummySpecie('X')] * len(coords), coords)
num_type = 2
index = 4
dstructs = StructureEnumerator(structure, index, num_type).generate()
print(len(dstructs)) # -> 12
See docs/examples/constraints.ipynb for more complicated use cases.
How to cite dsenum
If you use dsenum.ZddStructureEnumerator
in your research, please cite the following articles.
@article{doi:10.1063/5.0021663,
author = {Shinohara,Kohei and Seko,Atsuto and Horiyama,Takashi and Ishihata,Masakazu and Honda,Junya and Tanaka,Isao },
title = {Enumeration of nonequivalent substitutional structures using advanced data structure of binary decision diagram},
journal = {J. Chem. Phys.},
volume = {153},
number = {10},
pages = {104109},
year = {2020},
doi = {10.1063/5.0021663},
URL = {https://doi.org/10.1063/5.0021663},
}
@inproceedings{Horiyama2018,
memo ={Isomorphism Elimination by Zero-Suppressed Binary Decision Diagrams},
author={Takashi Horiyama and Masahiro Miyasaka and Riku Sasaki},
booktitle={the Canadian Conference on Computational Geometry},
pages={360--366},
address={Winnipeg, Manitoba, Canada}
year={2018},
url={http://www.cs.umanitoba.ca/~cccg2018/papers/session7B-p2.pdf}
}
Acknowledgments
I acknowledge Dr. Takashi Horiyama for sharing his implementation of the frontier method for isomorphism-elimination decision diagram. I also appreciate his kindness to allow publishing the code.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file dsenum-0.4.2.tar.gz
.
File metadata
- Download URL: dsenum-0.4.2.tar.gz
- Upload date:
- Size: 202.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b0e6284dec726f44782c13cf6f207ee105fac5fc8729f1483a09eed2d2168b0a |
|
MD5 | 69cafd42d127fe7b26605775d69e325e |
|
BLAKE2b-256 | 71ed747d156f4005163354892a2cc312e978cd95bcea1d0c851cc262e28df0f9 |
File details
Details for the file dsenum-0.4.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: dsenum-0.4.2-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 134.6 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea1fc253e4d980d9331c5758e6e525af3db46b7ebf04d9bbfafa89de9bb5f08a |
|
MD5 | d429fecbe3bfafaec878676a072589f4 |
|
BLAKE2b-256 | 99373eb55941a42b683272a25f00f98de92771abf2dc41cad10efc90c68c6615 |
File details
Details for the file dsenum-0.4.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: dsenum-0.4.2-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 129.0 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a3565a31a2318d41efe77ddcf064a9b0a09d211c2d68e800ea9f7aca838d0537 |
|
MD5 | 52d59ab31c8a95657c4a1dcfdb58c045 |
|
BLAKE2b-256 | 02af4cd6fde918ffa60e44a12eae47fde0e01d8f04bedc7d123cf40e77c69d70 |
File details
Details for the file dsenum-0.4.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: dsenum-0.4.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 117.1 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2c1796ec98e7f67b7b3b32336cf1b51671bc359370982e7f2ce016409cb36ff4 |
|
MD5 | 642751538f62cd44f0a168ecaa92691a |
|
BLAKE2b-256 | adc1b2a6749a4db6396b6a485be38805f5f8e712bd9f1780f0fb6e4df1f1f95f |
File details
Details for the file dsenum-0.4.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: dsenum-0.4.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 116.9 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87422afde0e9c25b824f88103cd7dc767df05d35374a28d11904b4255db8f815 |
|
MD5 | 86e3acc1bde716bc12a9f5f2f5bf45a8 |
|
BLAKE2b-256 | 38f15607fb9d2fcd963adf9b8f759dce1a097793c96f02b6152c74324f50ee28 |
File details
Details for the file dsenum-0.4.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
.
File metadata
- Download URL: dsenum-0.4.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 117.8 kB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64, manylinux: glibc 2.5+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bedf464f34f02a1dce077d3b70cc5c2c1d0dc1512bd98dfa158a13d7ade20511 |
|
MD5 | dc61a5def3bf5b1ad7a62e77557b8e3e |
|
BLAKE2b-256 | 4d6b21322638f01ffb4a85bb3cc4156dc782cbc9be7ecd9f75e3bb44093e7049 |