Wyckoff
A Python package for working with Wyckoff positions in crystallography.
Installation
pip install wyckoff
OR
uv add wyckoff
Usage
Simple Example:
from wyckoff import WyckoffDatabase
wyckoff = WyckoffDatabase()
data = wyckoff.data
for items in data["2"].wyckoff_positions:
print(items)
print("Spacegroup 3:") # which is 3-b varient
print(data["3"].wyckoff_positions)
for more complex example checkout the example file
Info
IMPORTANT: If variations are available for a spacegroup, and functions/dictionary are called/indexed without specifying the variation then first available variation will be returned.
Following variation types are included in the database:
- Unique axis settings: Suffixes like "-b" and "-c" typically indicate which crystallographic axis is chosen as the unique axis, especially in monoclinic and orthorhombic systems. For example:
- "3-b" means space group 3 with b-axis as the unique axis
- "3-c" means space group 3 with c-axis as the unique axis
Example:
data["3-b"] # Space group 3 with b-axis as the unique axis
- Origin choice: Suffixes like "-1" and "-2" usually indicate different origin choices for the same space group:
- "48-1" is space group 48 with origin choice 1
- "48-2" is space group 48 with origin choice 2
Example:
data["48-1"] # Space group 48 with origin choice 1
- Cell choices: Some suffixes may represent different conventional cell choices (hexagonal vs. rhombohedral settings in trigonal groups, for example).
Example:
data["148-hexagonal"] # Space group 148 with hexagonal cell
Data Source
This implementation is inspierd by a utility fuction in doped project. That version used a non-standard datafile for parsing the Wyckoff positions from bilbao crystallographic server. This implementation uses a standard JSON file for parsing the Wyckoff positions, add additional checks and validations to ensure data integrity, remove a bug that produces duplicate Wyckoff positions and custom wyckoff dataclass, etc,.
License
MIT
Metadata
Release files for wyckoff 0.3.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| wyckoff-0.3.2.tar.gz | 38.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wyckoff-0.3.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 77.0 kB
Release files / wyckoff-0.3.2.tar.gz
| Download URL | wyckoff-0.3.2.tar.gz |
|---|---|
| Size | 38.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
52b869888c4b872eaa82aa982984702fdcc4d102861528f370b74e7110930155
|
|
BLAKE2b-256 checksum How to use checksums |
8de0709581dbc10c45dc13f5b60410085035a482bfe5316ac0de0360686d0d48
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.1
|
Release files / wyckoff-0.3.2-py3-none-any.whl
| Download URL | wyckoff-0.3.2-py3-none-any.whl |
|---|---|
| Size | 38.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
91eb1c78295960b61980d98ac9eafd29baba3808e2338f5762cc93f29ad57bff
|
|
BLAKE2b-256 checksum How to use checksums |
6dc62fad1358ee1315467d076f4c38cee4f7d41335cdeab684d45c4f7c407ee9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.1
|