This is the documentation for asr.setup.symmetrize-recipe. This recipe is comprised of a single instruction, namely:

Run this recipe through the CLI interface

$ asr run asr.setup.symmetrize

or as a python module

$ python -m asr.setup.symmetrize

Detailed description

Generate symmetrized atomic structure.



asr.setup.symmetrize.main(atoms, tolerance=0.001, angle_tolerance=0.1)[source]

Symmetrize atomic structure.

This function changes the atomic positions and the unit cell of an approximately symmetric structure into an exactly symmetric structure.

In practice, the spacegroup of the structure located in ‘original.json’ is evaluated using a not-very-strict tolerance, which can be adjusted using the –tolerance and –angle-tolerance switches. Then the symmetries of the spacegroup are used to generate equivalent atomic structures and by taking an average of these atomic positions we generate an exactly symmetric atomic structure.


Symmetrize an atomic structure using the default tolerances $ ase build -x diamond C original.json $ asr run setup.symmetrize

  • atoms (ase.atoms.Atoms) –

  • tolerance (float) –

  • angle_tolerance (float) –

Return type