guess_symmetries(matrix, spin_change=0, spin_block_symmetrisation='none')¶
Return guess symmetry objects (one for each AmplitudeVector block) such that the specified requirements on the guesses are satisfied.
matrix The matrix for which guesses are to be constructed spin_change The spin change to enforce in an excitation.
Typical values are 0 (singlet/triplet/any) and -1 (spin-flip).
Symmetrisation to enforce between equivalent spin blocks, which all yield the desired spin_change. E.g. if spin_change == 0, then both the alpha->alpha and beta->beta blocks of the singles part of the excitation vector achieve a spin change of 0. The symmetry specified with this parameter will then be imposed between the a-a and b-b blocks. Valid values are “none”, “symmetric” and “antisymmetric”, where “none” enforces no particular symmetry.