viperleed.calc.symmetry

Functions for determining and setting slab symmetry.

Functions

enforceSymmetry(sl, rp[, planegroup, ...])

Finds how atoms are linked to each other based on the planegroup.

findBulkSymmetry(sl, rp)

Checks the bulk slab for screw axes and glide planes.

findSymmetry(sl, rp[, bulk, output, ...])

Reduces the unit cell if necessary and finds the plane group of the slab.

getSymBaseSymmetry(sl, rp)

Runs the symmetry search for the symbaseslab, then transfers atom linking to translationally equivalent atoms in the extended slab.

getSymPosLists(sl, rp, pointlist[, output])

Generates and returns a symposlist and hexsymposlist based on the pointlist, for example the list of cartesian in-plane atom positions in the lowest-occupied layer.

mirror_to_diagonal(sl, rp, abst, oriplane)

Rotate cell to bring oriplane along a diagonal.

setSymmetry(sl, rp, targetsym)

Sets the symmetry of the slab, based on the one found by findSymmetry.