lmodea_k.internalcoords.InternalCoordinate

\(\newcommand{\AA}{\text{Å}}\)

lmodea_k.internalcoords.InternalCoordinate#

class InternalCoordinate(type: str, value: float, symbols: List[str], indices: List[int], asymm_indices: List[int], cell_indices: List[List[int] | Tuple[int, int, int]], derivatives: List[ndarray], cluster_indices: List[int] | Tuple[int, ...] | None = None, description: str | None = '', keff_conversion: float = 1.0, length_dimension: int = 0, sym_key: int | None = None, fc: float = None, fc_eff: float = None, frequency: float = None, vector: ndarray = None, overlaps: List[float] = None, groups: Dict[str, List[int]] | None = None, group_cells: Dict[str, List[Any]] | None = None, group_symbols: Dict[str, List[str]] | None = None)#

Represents a single internal coordinate (bond, angle, dihedral, etc.).

Variables:
  • type (str) – Type of internal coordinate (‘b’, ‘a’, ‘d’, ‘t’, …).

  • value (float) – Current value of the coordinate (e.g., bond length in Å, angle in degrees).

  • symbols (list[str]) – Element symbols of atoms involved.

  • indices (list[int]) – Atom indices in the primitive cell.

  • asymm_indices (list[int]) – Asymmetric unit mapping of the atoms (e.g., from spglib).

  • cell_indices (list[array-like]) – Lattice vector indices (Rl) for each atom.

  • derivatives (list[np.ndarray]) – Derivatives w.r.t. Cartesian displacements (shape: (N, 3)).

  • description (str) – Description of internal coordinate.

  • keff_conversion (float) – Conversion factor from force constant in internal units to print units.

  • length_dimension (int) – Exponent of length unit in B-matrix derivative units (e.g., -1 for angles).

  • sym_key (int) – Symmetry-equivalence label; identical sym_key values denote coordinates defined based on symmetry-equivalent atoms.

__init__(type: str, value: float, symbols: List[str], indices: List[int], asymm_indices: List[int], cell_indices: List[List[int] | Tuple[int, int, int]], derivatives: List[ndarray], cluster_indices: List[int] | Tuple[int, ...] | None = None, description: str | None = '', keff_conversion: float = 1.0, length_dimension: int = 0, sym_key: int | None = None, fc: float = None, fc_eff: float = None, frequency: float = None, vector: ndarray = None, overlaps: List[float] = None, groups: Dict[str, List[int]] | None = None, group_cells: Dict[str, List[Any]] | None = None, group_symbols: Dict[str, List[str]] | None = None) None#

Methods

__init__(type, value, symbols, indices, ...)

Attributes

cluster_indices

description

fc

fc_eff

frequency

group_cells

group_symbols

groups

keff_conversion

length_dimension

overlaps

sym_key

vector

type

value

symbols

indices

asymm_indices

cell_indices

derivatives