Function qsym2::bindings::python::symmetry_group_detection::detect_symmetry_group
source · pub fn detect_symmetry_group(
py: Python<'_>,
inp_xyz: Option<PathBuf>,
inp_mol: Option<PyMolecule>,
out_sym: Option<PathBuf>,
moi_thresholds: Vec<f64>,
distance_thresholds: Vec<f64>,
time_reversal: bool,
write_symmetry_elements: bool,
fictitious_magnetic_field: Option<[f64; 3]>,
fictitious_electric_field: Option<[f64; 3]>,
) -> PyResult<(PySymmetry, Option<PySymmetry>)>
Expand description
Python-exposed function to perform symmetry-group detection and log the result via the
qsym2-output
logger at the INFO
level.
See crate::drivers::symmetry_group_detection
for more information.
§Arguments
inp_xyz
- An optional string providing the path to an XYZ file containing the molecule to be analysed. Only one ofinp_xyz
orinp_mol
can be specified. Python type:Optional[str]
.inp_mol
- An optionalPyMolecule
structure containing the molecule to be analysed. Only one ofinp_xyz
orinp_mol
can be specified. Python type:PyMolecule
.out_sym
- An optional name for theQSym2FileType::Sym
file to be saved that contains the serialised results of the symmetry-group detection. Python type:Optional[str]
.moi_thresholds
- Thresholds for comparing moments of inertia. Python type:list[float]
.distance_thresholds
- Thresholds for comparing distances. Python type:list[float]
.time_reversal
- A boolean indicating whether elements involving time reversal should also be considered. Python type:bool
.write_symmetry_elements
- A boolean indicating if detected symmetry elements should be printed in the output. Python type:bool
.fictitious_magnetic_field
- An optional fictitious uniform external magnetic field. Python type:Optional[tuple[float, float, float]]
.fictitious_electric_field
- An optional fictitious uniform external electric field. Python type:Optional[tuple[float, float, float]]
.
§Errors
Returns an error if any intermediate step in the symmetry-group detection procedure fails.