@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 |