httk.atomistic.sites

The Sites class for httk-atomistic.

Classes

Sites

The sites of a crystal structure: the Nx3 matrix of reduced coordinates, held exactly.

Module Contents

class httk.atomistic.sites.Sites(reduced_coords: httk.core.VectorLike)[source]

The sites of a crystal structure: the Nx3 matrix of reduced coordinates, held exactly.

Reduced (fractional) coordinates are the symmetry-native frame: point-group operations are integer matrices and translations are rationals, so no radicals ever appear. They are therefore stored as an exact rational FracVector of shape (N, 3). A Sites object is iterable and indexable over its length-3 coordinate rows (each a FracVector), with len giving the number of sites.

Inputs embed exactly: rationals (and rational-valued floats), rational strings, and numpy arrays all land on their exact rational value. An irrational SurdVector input is reduced deterministically through the vector family’s fractions hub (never raising on data); the exact Cartesian frame — where radicals belong — is obtained instead via cartesian_sites().

property reduced_coords: httk.core.FracVector[source]

The Nx3 reduced site coordinates as an exact FracVector (one site per row).

numeric() httk.atomistic.numeric_sites.NumericSites[source]

A plain-numpy presentation of these sites (requires the httk-atomistic[numpy] extra).