@brief Module for calculating Atomic Orbital (AO) overlap between different geometries
@details This module provides functionality to compute overlap between basis sets (Atomic Orbitals) of two different geometries. It includes calculations for AO overlap and then Molecular Orbital (MO) overlap.
Note
The matrices mol.data["OQP::xyz_old"], mol.data["OQP::xyz"], mol.data["OQP::VEC_MO_A_old"], mol.data["OQP::VEC_MO_A"], mol.data["OQP::E_MO_A_old"], mol.data["OQP::E_MO_A"] must be defined in advance before running this program. Output AO overlap will be written to mol.data["OQP::overlap_ao_non_orthogonal"] Output MO overlap will be written to mol.data["OQP::overlap_mo_non_orthogonal"]
@data Aug 2024
@author Konstantin Komarov
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
character(len=*), | public, | parameter | :: | module_name | = | "get_structures_ao_overlap_mod" |
@brief C-interoperable wrapper for get_states_overlap
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(oqp_handle_t) | :: | c_handle |
@brief Calculate AO overlap between two different geometries @param[in,out] infos Information structure containing all necessary data
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(information), | intent(inout), | target | :: | infos |
Information structure containing all necessary data |
@brief Calculate Molecular Orbital (MO) overlap between two geometries
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(out), | dimension(:,:) | :: | overlap_mo | ||
real(kind=dp), | intent(in), | dimension(:,:) | :: | mo_a | ||
real(kind=dp), | intent(in), | dimension(:,:) | :: | mo_a_old | ||
real(kind=dp), | intent(in), | dimension(:,:) | :: | overlap_ao | ||
integer | :: | nbf |
@brief Print results of MO overlap between two geometries
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | overlap_mo(:,:) | |||
real(kind=dp), | intent(in) | :: | e(:) | |||
real(kind=dp), | intent(in) | :: | e_old(:) | |||
integer, | intent(in) | :: | nbf | |||
integer, | intent(in) | :: | na | |||
integer, | intent(in) | :: | iw |
@brief Print geometry information
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(basis_set), | intent(in) | :: | basis | |||
character(len=*), | intent(in) | :: | text |