hqs_spin_mapper.preconditioning
Modules for the preconditioning of the Hamiltonian prior to Schrieffer-Wolff transformation.
Functions
|
Diagonalize the quadratic bath Hamiltonian as preparation of the Schrieffer-Wolff transformation. |
|
Gives an estimate for the required memory necessary for the Schrieffer-Wolff transformation at the current value of |
|
Separate the interaction into terms suitable for the Schrieffer-Wolff transformation and remainder. |
|
Return a system suitable for our specific Schrieffer-Wolff transformation method. |
- hqs_spin_mapper.preconditioning.preconditioning(transformable_system: Supports_SW_Transformation, apply_pre_diagonalization: bool = False, apply_cross_geometry: bool = False) None [source]
Return a system suitable for our specific Schrieffer-Wolff transformation method.
The preconditioning includes the transformation to an optimized basis, the removal of intractable coupling constants, and the pre-diagonalization of the fermionic bath. The results are applied to the
transformable_system
.- Parameters:
transformable_system (Supports_SW_Transformation) – Container object for the system data
apply_pre_diagonalization (bool) – Flag for the pre-diagonalization of the bath.
apply_cross_geometry (bool) – Flag for transformation to cross geometry.
- hqs_spin_mapper.preconditioning.precondition_interaction(transformable_system: Supports_SW_Transformation) None [source]
Separate the interaction into terms suitable for the Schrieffer-Wolff transformation and remainder.
- Parameters:
transformable_system (Supports_SW_Transformation) – Container object for the system data
- hqs_spin_mapper.preconditioning.diagonalize_bath(transformable_system: Supports_SW_Transformation, apply_cross_geometry: bool = False) None [source]
Diagonalize the quadratic bath Hamiltonian as preparation of the Schrieffer-Wolff transformation.
- Parameters:
transformable_system (Supports_SW_Transformation) – Container object for the system data
apply_cross_geometry (bool) – Flag for transformation to cross geometry.
- hqs_spin_mapper.preconditioning.estimate_required_memory(transformable_system: Supports_SW_Transformation) None [source]
Gives an estimate for the required memory necessary for the Schrieffer-Wolff transformation at the current value of
prefactor_cutoff
.- Parameters:
transformable_system (Supports_SW_Transformation) – The container object for the Spin Mapper