GBTOlib: library for evaluation of molecular integrals in mixed Gaussian / B-spline basis
111
|
This module contains some routines taken from the UKRmol-in code GAUSPROP. These routines read the basis set from the integral files. More...
Functions/Subroutines | |
subroutine | PRTINF (ITAPE, IWRITE, NSYMT, NBFT, CLMQTYPE, jsum) |
subroutine | GTGETAB (IWRITE, ITAPE, NCONTRAS, NPRCONT, ICONTRNO, CSYMBOL, ISYMBNUM, ngnuc, CANGULAR, cscatter, nnuc, cnucname, XPONENT, XCONTCOF, XCONTCOFNN, NSYMABF, ISYMABF, ITRAN, CTRAN, LTRAN, LSABFTAB, ZSCATCFN, ZSCATSFN, MAXSFN) |
subroutine | GPSPLIT (NBFT, NRI, NSM, ZSCATSFN, NBFTARG, NSYM) |
subroutine | NORMAL (NSYM, NBFT, XNORM, IWRITE, NORDINTS, LTRI, ITAPE, NFTTAIL, ZTAIL) |
subroutine | READ_MOLECULE_BASIS (iunit, nfttail, ztail, CANGULAR, CHARGNUC, CNUCNAME, CONTCOFNN, CTRANNN, EXPONT, IC, ICONTNO, IPRCNPT, ITRAN, LSABFTAB, MAX_L, NCONTRAS, NGREAD, NNUC, NSYMABF, NUCIND, XNUC, YNUC, ZNUC) |
This routine reads-in the MOLECULE basis set of symmetry adapted contracted spherical GTOs. The type and amount of output data has been chosen to allow (in ukrmol_basis_data) the conversion of molecular orbital coefficients from the MOLECULE format to any other format (in our case we convert to the basis of contracted spherical GTOs). However, this routine performs more than just reading of the MOLECULE basis set. It also normalizes the coefficients for the symmetry adapted functions calculating the self-overlaps of the symmetry-adapted functions. These self-overlaps take into account the possible presence of tails which are subtracted in that case. It is these normalized symmetry-adapted coefficients which together with the GTO basis set data allow for the conversion of molecular orbital coefficients between MOLECULE and any other basis. This routine has been written assembling together some routines taken from SWORD and GAUSPROP. More... | |
This module contains some routines taken from the UKRmol-in code GAUSPROP. These routines read the basis set from the integral files.
subroutine ukrmol_routines::GPSPLIT | ( | integer, dimension(*), intent(in) | NBFT, |
integer, dimension(*), intent(out) | NRI, | ||
integer, dimension(*), intent(out) | NSM, | ||
logical, dimension(*), intent(in) | ZSCATSFN, | ||
integer, dimension(*), intent(out) | NBFTARG, | ||
integer, intent(in) | NSYM | ||
) |
subroutine ukrmol_routines::GTGETAB | ( | integer, intent(in) | IWRITE, |
integer, intent(in) | ITAPE, | ||
integer, intent(in) | NCONTRAS, | ||
integer, dimension(ncontras) | NPRCONT, | ||
integer, dimension(*), intent(out) | ICONTRNO, | ||
character(len=4), dimension(*), intent(inout) | CSYMBOL, | ||
integer, dimension(*), intent(out) | ISYMBNUM, | ||
integer, dimension(*), intent(out) | ngnuc, | ||
character(len=4), dimension(*) | CANGULAR, | ||
character(len=4), intent(in) | cscatter, | ||
integer, intent(in) | nnuc, | ||
character(len=4), dimension(nnuc), intent(in) | cnucname, | ||
real(kind=wp), dimension(*) | XPONENT, | ||
real(kind=wp), dimension(*) | XCONTCOF, | ||
real(kind=wp), dimension(*) | XCONTCOFNN, | ||
integer, intent(inout) | NSYMABF, | ||
integer, dimension(*), intent(out) | ISYMABF, | ||
integer, dimension(*), intent(inout) | ITRAN, | ||
real(kind=wp), dimension(*), intent(out) | CTRAN, | ||
integer, intent(in) | LTRAN, | ||
integer, intent(out) | LSABFTAB, | ||
logical, dimension(ncontras), intent(inout) | ZSCATCFN, | ||
logical, dimension(maxsfn), intent(out) | ZSCATSFN, | ||
integer, intent(in) | MAXSFN | ||
) |
subroutine ukrmol_routines::NORMAL | ( | integer, intent(in) | NSYM, |
integer, dimension(*), intent(in) | NBFT, | ||
real(kind=wp), dimension(maxsym,*), intent(inout) | XNORM, | ||
integer, intent(in) | IWRITE, | ||
integer, intent(in) | NORDINTS, | ||
integer, intent(in) | LTRI, | ||
integer | ITAPE, | ||
integer | NFTTAIL, | ||
logical, intent(in) | ZTAIL | ||
) |
subroutine ukrmol_routines::PRTINF | ( | integer | ITAPE, |
integer, intent(in) | IWRITE, | ||
integer, intent(inout) | NSYMT, | ||
integer, dimension(*), intent(inout) | NBFT, | ||
character(len=4), dimension(*), intent(in) | CLMQTYPE, | ||
integer, intent(inout) | jsum | ||
) |
subroutine ukrmol_routines::READ_MOLECULE_BASIS | ( | integer, intent(in) | iunit, |
integer, intent(in) | nfttail, | ||
logical, intent(in) | ztail, | ||
character(len=4), dimension(:), intent(out), allocatable | CANGULAR, | ||
real(kind=wp), dimension(:), intent(out), allocatable | CHARGNUC, | ||
character(len=4), dimension(:), intent(out), allocatable | CNUCNAME, | ||
real(kind=wp), dimension(:), intent(out), allocatable | CONTCOFNN, | ||
real(kind=wp), dimension(:), intent(out), allocatable | CTRANNN, | ||
real(kind=wp), dimension(:), intent(out), allocatable | EXPONT, | ||
integer, dimension(:), intent(out), allocatable | IC, | ||
integer, dimension(:), intent(out), allocatable | ICONTNO, | ||
integer, dimension(:), intent(out), allocatable | IPRCNPT, | ||
integer, dimension(:), intent(out), allocatable | ITRAN, | ||
integer, intent(out) | LSABFTAB, | ||
integer, intent(out) | MAX_L, | ||
integer, intent(out) | NCONTRAS, | ||
integer, intent(out) | NGREAD, | ||
integer, intent(out) | NNUC, | ||
integer, intent(out) | NSYMABF, | ||
integer, dimension(:), intent(out), allocatable | NUCIND, | ||
real(kind=wp), dimension(:), intent(out), allocatable | XNUC, | ||
real(kind=wp), dimension(:), intent(out), allocatable | YNUC, | ||
real(kind=wp), dimension(:), intent(out), allocatable | ZNUC | ||
) |
This routine reads-in the MOLECULE basis set of symmetry adapted contracted spherical GTOs. The type and amount of output data has been chosen to allow (in ukrmol_basis_data) the conversion of molecular orbital coefficients from the MOLECULE format to any other format (in our case we convert to the basis of contracted spherical GTOs). However, this routine performs more than just reading of the MOLECULE basis set. It also normalizes the coefficients for the symmetry adapted functions calculating the self-overlaps of the symmetry-adapted functions. These self-overlaps take into account the possible presence of tails which are subtracted in that case. It is these normalized symmetry-adapted coefficients which together with the GTO basis set data allow for the conversion of molecular orbital coefficients between MOLECULE and any other basis. This routine has been written assembling together some routines taken from SWORD and GAUSPROP.
[in] | iunit | Unit number for the unformatted file containing the basis set and raw integrals produced by swmol3 (typically fort.2). |
[in] | nfttail | Unit number for the tail integrals produced by gaustail (typically fort.96). |
[in] | ztail | Logical variable indicating whether we need to subtract tails or not. |
[out] | CANGULAR | Character array specifying the angular type of each primitive GTO in the basis. |
[out] | CHARGNUC | Real array containing the charge on each nucleus. |
[out] | CNUCNAME | Character array containing the name of the atom and other data concerning the symmetry. |
[out] | CONTCOFNN | Unnormalized contraction coefficients for each primitive GTO in the basis. |
[out] | CTRANNN | Normalized symmetry-adapted coefficients for the transformation from the contracted GTO basis to the basis of symmetry-adapted functions. See IC for details. |
[out] | EXPONT | Exponents of each primitive GTO in the basis. |
[out] | IC | Integer array of length LSABFTAB. MOLECULE specifies the transformation from the contracted GTO basis to the basis of symmetry-adapted functions in terms of a table of length LSABFTAB. Each row of this table gives the index of the symmetry adapted function (IC), the index of the contracted cartesian GTO contributing to this function (ITRAN) and the coefficient with which the GTO contributes to the symmetry adapted function (CTRANNN). This table is printed by the routine GTGETAB. |
[out] | ICONTNO | For each primitive GTO this array gives the index of the contracted GTO to which the primitive belongs. |
[out] | IPRCNPT | For each contracted GTO this array gives the number of primitive GTOs. |
[out] | ITRAN | Integer array of length LSABFTAB. See IC for details. |
[out] | LSABFTAB | Integer value giving the dimensions of the arrays IC, ITRAN, CTRANNN. |
[out] | MAX_L | Maximum GTO L in the basis. |
[out] | NCONTRAS | Number of contracted GTOs in the basis. |
[out] | NGREAD | Number of primitive GTOs in the basis. |
[out] | NNUC | Total number of nuclei. |
[out] | NSYMABF | Total number of symmetry-adapted functions in the basis. |
[out] | NUCIND | For each primitive GTO this array gives the index of the nucleus on which the GTO is sitting. |
[out] | XNUC | X-coordinate for each nucleus. |
[out] | YNUC | Y-coordinate for each nucleus. |
[out] | ZNUC | Z-coordinate for each nucleus. |