httk.atomistic.cell_api¶
The minimal canonical cell interface for httk-atomistic.
Classes¶
Abstract base class for the canonical cell interface. |
Module Contents¶
- class httk.atomistic.cell_api.CellAPI[source]¶
Bases:
abc.ABCAbstract base class for the canonical cell interface.
It declares the exact accessors that every cell backend produces from its own native representation and every cell view builds its presentation from: the
basisof 3x3 lattice vectors (scale * unscaled_basis), the positivescale, and theunscaled_basis. All three are exact httk-core vectors; this is the single interchange format, with no pairwise conversion between backends.- property basis: httk.core.SurdVector[source]¶
- Abstractmethod:
- property scale: httk.core.SurdScalar[source]¶
- Abstractmethod:
- property unscaled_basis: httk.core.SurdVector[source]¶
- Abstractmethod:
- property precision: fractions.Fraction | None[source]¶
How precisely the basis was stated, as an absolute length, or
Noneif unknown.A backend that knows its source’s precision overrides this; one that does not — a bare matrix of numbers with no provenance — inherits
None.
- property periodicity: tuple[bool, bool, bool][source]¶
Which of the three basis rows is a genuine lattice translation.
A backend that knows its periodicity overrides this; one that does not inherit
(True, True, True). A cell described only by six lattice parameters or a bare matrix is interpreted as a fully periodic crystal.