httk.atomistic.symmetry.canonical_protostructure¶
Anonymous protostructure-first canonicalization of measured crystal structures.
This convention chooses the anonymous Wyckoff occupation pattern, then its species assignment, and only then the exact geometry. Its finite affine search uses the same tabulated normalizer scope as the legacy canonicalizer and does not enumerate an infinite affine normalizer. Public measured structure entry points optionally perform the established upward pseudosymmetry search first.
Functions¶
|
Recognize and return every tied assignment of the anonymous canonical geometry. |
|
Return one chemically ordered member of the anonymous canonical assignment family. |
Module Contents¶
- httk.atomistic.symmetry.canonical_protostructure.canonical_asu_protostructure_assignments(structure, *, tolerance=None, factors=(Fraction(1, 5), 1, 5), lift=False, preserve_chirality=True)¶
Recognize and return every tied assignment of the anonymous canonical geometry.
Recognition uses the established tolerance sweep and deterministic P1 frames. The accepted ASU is then handled exactly. When
liftis true, the anonymous winner is first searched for upward pseudosymmetry.- Parameters:
structure (httk.atomistic.models.structure.like.StructureLike) – The measured structure to recognize.
tolerance (float | None) – Base Cartesian recognition tolerance, or
Noneto derive it.factors (tuple[fractions.Fraction | float | int, ...]) – Multipliers for the recognition tolerance sweep.
lift (bool) – Whether to search upward for pseudosymmetry after recognition.
preserve_chirality (bool) – Whether to keep the recognized enantiomorphic group.
- Returns:
The tied protostructure-first canonical asymmetric units.
- Raises:
ValueError – If the structure is unsupported or no tolerance member fits.
- Return type:
- httk.atomistic.symmetry.canonical_protostructure.canonical_asu_protostructure(structure, *, tolerance=None, factors=(Fraction(1, 5), 1, 5), lift=False, preserve_chirality=True)¶
Return one chemically ordered member of the anonymous canonical assignment family.
- Parameters:
structure (httk.atomistic.models.structure.like.StructureLike) – The measured structure to recognize.
tolerance (float | None) – Base Cartesian recognition tolerance, or
Noneto derive it.factors (tuple[fractions.Fraction | float | int, ...]) – Multipliers for the recognition tolerance sweep.
lift (bool) – Whether to search upward for pseudosymmetry after recognition.
preserve_chirality (bool) – Whether to keep the recognized enantiomorphic group.
- Returns:
One protostructure-first canonical asymmetric unit.
- Raises:
ValueError – If the structure is unsupported or no tolerance member fits.
- Return type: