Skip to content

Alternative Representations

Purpose: AlternativeRepresentation subsection details: transforms and mapping to a reference representation

In scope:

  • AlternativeRepresentation subsection of ModelSystem
  • Reference representation linkage
  • Transformation matrix and origin shift between representations
  • How alternative cells are mapped from the original representation

Relationship map

Hold "Alt" / "Option" to enable pan & zoom
classDiagram
    class AlternativeRepresentation

Key sections

Section Description MetaInfo
AlternativeRepresentation A representation relative to another, reference representation, typically the original computed system. Open in MetaInfo browser

Quantities by section

AlternativeRepresentation

Quantity Type Description
origin_shift m_float64(float64) (shape: [3])
Translation vector relating the origin of this representation to the reference r...Translation vector relating the origin of this representation to the reference representation,
expressed in fractional coordinates. Together with transformation_matrix, defines how fractional
coordinates transform between representations: x_alt = P @ x_ref + p, where both representations
use the same implicit Cartesian frame but different lattice vectors. Commonly used to relate
input cells to standardized conventional cells in symmetry analysis (e.g., from spglib).
transformation_matrix m_float64(float64) (shape: [3, 3])
Transformation matrix P relating lattice vectors between this representation and...Transformation matrix P relating lattice vectors between this representation and the reference
representation. Lattice vectors transform as: (a_alt, b_alt, c_alt) = (a_ref, b_ref, c_ref) @ P^-1.
Together with origin_shift, defines how fractional coordinates transform: x_alt = P @ x_ref + p.
Both representations use the same implicit Cartesian frame; this matrix only changes how fractional
coordinates are expressed relative to different lattice vectors. Commonly used in symmetry analysis
to relate input cells to standardized conventional cells (e.g., from spglib).
crystal_cell_type Enum Representation type of the cell structure. It might be: - 'primitive' as the primitive unit cell, - 'conventional' as the conventional cell used for referencing.
supercell_matrix m_int32(int32) (shape: [3, 3])
Specifies the matrix that transforms the primitive unit cell into the supercell ...Specifies the matrix that transforms the primitive unit cell into the supercell in
which the actual calculation is performed. In the easiest example, it is a diagonal
matrix whose elements multiply the lattice_vectors, e.g., [[3, 0, 0], [0, 3, 0], [0, 0, 3]]
is a \(3 x 3 x 3\) superlattice.