Function rep_analyse_densities

Source
pub fn rep_analyse_densities(
    py: Python<'_>,
    inp_sym: PathBuf,
    pydens: Vec<(String, PyDensity)>,
    pybao: &PyBasisAngularOrder,
    integrality_threshold: f64,
    linear_independence_threshold: f64,
    use_magnetic_group: Option<MagneticSymmetryAnalysisKind>,
    use_double_group: bool,
    use_cayley_table: bool,
    symmetry_transformation_kind: SymmetryTransformationKind,
    eigenvalue_comparison_mode: EigenvalueComparisonMode,
    sao_spatial_4c: PyArray4RC<'_>,
    sao_spatial_4c_h: Option<PyArray4RC<'_>>,
    write_character_table: bool,
    infinite_order_to_finite: Option<u32>,
    angular_function_integrality_threshold: f64,
    angular_function_linear_independence_threshold: f64,
    angular_function_max_angular_momentum: u32,
) -> PyResult<()>
Expand description

Python-exposed function to perform representation symmetry analysis for real and complex electron densities and log the result via the qsym2-output logger at the INFO level.

ยงArguments

  • inp_sym - A path to the QSym2FileType::Sym file containing the symmetry-group detection result for the system. This will be used to construct abstract groups and character tables for representation analysis.
  • pydens - A sequence of Python-exposed electron densities whose density matrices are of type float64 or complex128. Each density is accompanied by a description string.
  • pybao - Python-exposed structure containing basis angular order information for the density matrices.
  • integrality_threshold - The threshold for verifying if subspace multiplicities are integral.
  • linear_independence_threshold - The threshold for determining the linear independence subspace via the non-zero eigenvalues of the orbit overlap matrix.
  • use_magnetic_group - An option indicating if the magnetic group is to be used for symmetry analysis, and if so, whether unitary representations or unitary-antiunitary corepresentations should be used.
  • use_double_group - A boolean indicating if the double group of the prevailing symmetry group is to be used for representation analysis instead.
  • use_cayley_table - A boolean indicating if the Cayley table for the group, if available, should be used to speed up the calculation of orbit overlap matrices.
  • symmetry_transformation_kind - An enumerated type indicating the type of symmetry transformations to be performed on the origin electron density to generate the orbit.
  • eigenvalue_comparison_mode - An enumerated type indicating the mode of comparison of orbit overlap eigenvalues with the specified linear_independence_threshold.
  • sao_spatial_4c - The atomic-orbital four-centre overlap matrix whose elements are of type float64 or complex128.
  • sao_spatial_4c_h - The optional complex-symmetric atomic-orbital four-centre overlap matrix whose elements are of type float64 or complex128. This is required if antiunitary symmetry operations are involved.
  • write_character_table - A boolean indicating if the character table of the prevailing symmetry group is to be printed out.
  • infinite_order_to_finite - The finite order with which infinite-order generators are to be interpreted to form a finite subgroup of the prevailing infinite group. This finite subgroup will be used for symmetry analysis.
  • angular_function_integrality_threshold - The threshold for verifying if subspace multiplicities are integral for the symmetry analysis of angular functions.
  • angular_function_linear_independence_threshold - The threshold for determining the linear independence subspace via the non-zero eigenvalues of the orbit overlap matrix for the symmetry analysis of angular functions.
  • angular_function_max_angular_momentum - The maximum angular momentum order to be used in angular function symmetry analysis.