Irreducible Brillouin zone symmetry and interpolation.
Project description
A C++ library for symmetry operations and linear interpolation within an irreducible part of the first Brillouin zone. Wrapped for use in python using pybind11.
irreducible polyhedron
When provided with the lattice parameters or basis vectors of a real space spacegroup and its Hall symbol or number as determined by, e.g., Spglib
,
brille
can
- construct the first Brillouin zone
- determine its high symmetry points
- find a irreducible polyhedron and verify that its conforms to the pointgroup symmetry of the spacegroup.
Constructing and irreducible Brillouin zone polyhedron for a face centered cubic lattice can be accomplished with, e.g.,
import brille
direct_lattice = brille.Direct((4.96, 4.96, 4.96), (90, 90, 90), 'Fd-3m')
brillouin_zone = brille.BrillouinZone(direct_lattice.star)
interpolation
Interpolating eigenvalues and eigenvectors across a degenerate point could lead to misidentified equivalent modes. Since the eigenvectors are distinguishable at all points away from the high-symmetry directions, a hybrid orthogonal/triangulated grid defined in an irreducible part of the Brillouin zone can be used to avoid mode misidentification.
brille
can construct
- an orthogonal grid guaranteed to contain the first Brillouin zone
- a triangulated set of points filling an irreducible polyhedron or the first Brillouin zone
- or a hybrid orthogonal/triangulated grid where only the surface cells are triangulated to improve point location time while preserving polyhedral conformity.
Of these options the third is most appropriate for the interpolation of models used in the analysis of inelastic neutron scattering data is the hybrid grid.
Dependencies
TetGen
A modified version of TetGen is used to create refined tetrahedral meshes in the irreducible portion of the first Brillouin zone.
The modified version is included as part of this repository.
Installation
From the root folder of this repository use Python 3 to build and install this library.
python setup.py install
Alternatively, the python module, C++ library, and catch2 based tests can be built directly using cmake
.
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.
Source Distribution
Built Distributions
File details
Details for the file brille-0.5.2.tar.gz
.
File metadata
- Download URL: brille-0.5.2.tar.gz
- Upload date:
- Size: 1.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fb8fd10bf9885ed37797564c505b52c2eed0c990a92672e13e3286238065b09 |
|
MD5 | 0760a04e70ed5901e6f361887518cdbb |
|
BLAKE2b-256 | 144f3a617ca12a346c305d65a5eee66a86e75cc7ea6f784eaf48cc4d5cbfa566 |
File details
Details for the file brille-0.5.2-cp38-cp38-win_amd64.whl
.
File metadata
- Download URL: brille-0.5.2-cp38-cp38-win_amd64.whl
- Upload date:
- Size: 889.4 kB
- Tags: CPython 3.8, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e11b1bd437cf780d6fae653f0d4fe97657adf9925e9c80736c4b714a888dc741 |
|
MD5 | d34fd45dbef3d5b0ed33d86c38c4b6a1 |
|
BLAKE2b-256 | 3b1408952725cc2c6445a9c0363c6261493fec582bb24f4cfa522553065a8ee4 |
File details
Details for the file brille-0.5.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
.
File metadata
- Download URL: brille-0.5.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b5d92963562d748c6456f40594de369df5bab3047f9f3653507230b25cdb2a2f |
|
MD5 | caa81e808138f90fcedac4f9dbc0507e |
|
BLAKE2b-256 | 020f542cd33a16dda057c779e0cb85fc94f8c6364e78b802ae8ecd3fc1628149 |
File details
Details for the file brille-0.5.2-cp38-cp38-macosx_10_15_x86_64.whl
.
File metadata
- Download URL: brille-0.5.2-cp38-cp38-macosx_10_15_x86_64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.8, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 188b860d0fca4c92e32b76ab37a886687e08999cbce4cff34fc0dc444b776bc6 |
|
MD5 | 478f57d7ecbc29f7bf81ea407775b7c4 |
|
BLAKE2b-256 | 90ebdc79df51f18896f159416cb2e84064b74692d4b9aedd335d6af0b37a0166 |
File details
Details for the file brille-0.5.2-cp37-cp37m-win_amd64.whl
.
File metadata
- Download URL: brille-0.5.2-cp37-cp37m-win_amd64.whl
- Upload date:
- Size: 884.2 kB
- Tags: CPython 3.7m, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.7.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf7c8a0654b6257ac240cf596fe87d22a3838955e1fea198b35ce8bb0d1bbf06 |
|
MD5 | 8ed5ca51a7138fc3364392f0c566a5f4 |
|
BLAKE2b-256 | 81137aadd491dbcf57d0c4ed68debee5630415293d71299dc55f0d6bd077fcb4 |
File details
Details for the file brille-0.5.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
.
File metadata
- Download URL: brille-0.5.2-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ac6216b6010b2daec5c4f9d3f9f65001854db1ce733b88f91fc15e29ccf5bf8e |
|
MD5 | 5f0194a38e093e9bc067b0dff8bebb94 |
|
BLAKE2b-256 | 0e8aecbb619dcde188e6877918620d1b8fe2c655f0df55fffb197afd24ac4071 |
File details
Details for the file brille-0.5.2-cp37-cp37m-macosx_10_15_x86_64.whl
.
File metadata
- Download URL: brille-0.5.2-cp37-cp37m-macosx_10_15_x86_64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.7m, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.7.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5501d665d47111d6e5f9fdf9b13378cfba3403c1abe0c1e00d796bf7928c1185 |
|
MD5 | e815c9aabc30928681f82f1f6c598efc |
|
BLAKE2b-256 | e26460c5c05c4f24ccdc56229bed4cd36feff234b9d5020718971dbd2ff53809 |
File details
Details for the file brille-0.5.2-cp36-cp36m-win_amd64.whl
.
File metadata
- Download URL: brille-0.5.2-cp36-cp36m-win_amd64.whl
- Upload date:
- Size: 884.1 kB
- Tags: CPython 3.6m, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b41c06b8abb5a96ee52dac9539fe032c8fb319c4927cca2700a83ee55018e7c9 |
|
MD5 | d48abbd822d413efc65e790fff2ef273 |
|
BLAKE2b-256 | c2d58ae353c7478b417fbddc0bbc09900a8f8a8d05ef3fb713209bde0ad6664b |
File details
Details for the file brille-0.5.2-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
.
File metadata
- Download URL: brille-0.5.2-cp36-cp36m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.8.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d086758454eb150118964488bcbe33922c61412088159a3d5d65d386f4c7ca77 |
|
MD5 | 528887e9490552302d2aea9048049341 |
|
BLAKE2b-256 | f882baf01c4824b9c0eb66ac1cd8abeca6ca1edb42c1aaa6098b4a7a817283f3 |
File details
Details for the file brille-0.5.2-cp36-cp36m-macosx_10_15_x86_64.whl
.
File metadata
- Download URL: brille-0.5.2-cp36-cp36m-macosx_10_15_x86_64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.6m, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.6.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e69f2c30a92fbbf96847518f72eef77b32f2551d94f7c797dd3560b884deeca0 |
|
MD5 | d3fe75ea3db744fcfce12796c95a9c9c |
|
BLAKE2b-256 | 8c5a1761a5c5b5a520074e88082d109e0cf3f84b3812261e9622f59cef7d275c |