Skip to main content

auguste

A python module for minimum-strain symmetrization of Bravais lattices. Symmetrization produces a strain tensor, which is reduced to a scalar quantity. This quantifies the 'distance' of a lattice from each Bravais class. The distance can be used for classification of Bravais lattices, and visualization in an abstract Bravais space.

Installation:

To install the module with pip (recommended):

pip install --user auguste

To install directly from the git repository:

pip install --user git+https://github.com/pmla/auguste

To do a manual build and installation:

python3 setup.py build
python3 setup.py install --user

Usage:

To import the module:

>>> import auguste

To symmetrize a lattice (with rows as unit vectors):

>>> cell = [[0, 1, 1], [1, 0, 1], [1, 1, 0]]
>>> distance, symmetrized = auguste.symmetrize_lattice(cell, "primitive tetragonal")
>>> distance
0.4714045207910317
>>> symmetrized
array([[-0.37037037,  0.74074074,  0.74074074],
       [ 0.74074074, -0.37037037,  0.74074074],
       [ 0.74074074,  0.74074074, -0.37037037]])

Supported lattice names are stored in the module variables:

>>> auguste.names
('primitive triclinic', 'primitive monoclinic', 'base-centred monoclinic', 'primitive orthorhombic', 'base-centred orthorhombic', 'body-centred orthorhombic', 'face-centred orthorhombic', 'primitive tetragonal', 'body-centred tetragonal', 'primitive rhombohedral', 'primitive hexagonal', 'primitive cubic', 'body-centred cubic', 'face-centred cubic')
>>> auguste.pearson
('aP', 'mP', 'mS', 'oP', 'oS', 'oF', 'oI', 'tP', 'tI', 'hP', 'hR', 'cP', 'cF', 'cI')

To calculate the symmetrization distances from all Bravais types:

>>> auguste.calculate_vector(cell)
array([0.00000000e+00, 4.28372991e-01, 5.24426159e-16, 4.71404521e-01,
       4.28372991e-01, 3.80565279e-16, 1.92296269e-16, 4.71404521e-01,
       4.07921987e-16, 1.92296269e-16, 4.60895951e-01, 4.71404521e-01,
       2.61971659e-01, 0.00000000e+00])

Information

If you use auguste in a publication, please cite:

Peter M. Larsen, Edward L. Pang, Pablo A. Parrilo, and Karsten W. Jacobsen; "Minimum-strain symmetrization of Bravais lattices"; Phys. Rev. Research 2, 013077

Article available at https://doi.org/10.1103/PhysRevResearch.2.013077

Preprint available at https://arxiv.org/abs/1910.03433.

Metadata

Release files for auguste 0.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 auguste 0.1.5
File Size Uploaded
auguste-0.1.5.tar.gz 35.3 kB Details

Release files / auguste-0.1.5.tar.gz

Download URL auguste-0.1.5.tar.gz
Size 35.3 kB
Tags Source
SHA-256 checksum
How to use checksums
04ae23d514dd91beff54b8db7803ab711b2c796b5a75f8044165b20092722371
BLAKE2b-256 checksum
How to use checksums
d5fd0908fced24e1028ee74c1f49f47a149e7ab517cb789671687fbf722d9b5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.5.2

Release history Release notifications | RSS feed

This release

0.1.5 This release

1 release file

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