GBTOlib: a high-performance library for evaluation of molecular integrals
- 1. Charles University, Prague, Czech Republic
- 2. The Open University, Milton Keynes, United Kingdom
Description
This is the first public release of the GBTOlib library. This library is used by the UKRmol+ codes but has a general applicability and has been written to allow interfacing with other codes.
Capabilities
-
Evaluation of molecular integrals in the basis of atom-centered Gaussian orbitals and center-of-mass centered B-splines and/or Gaussians.
-
The center-of-mass (i.e. continuum) basis can be built from either Gaussians, B-splines or a combination of the two.
-
An arbitrary angular momentum for the continuum basis.
-
Transformation of the atomic integrals into basis of molecular orbitals.
-
Orbital orthogonalization using Gramm-Schmidt and/or Symmetric orthogonalization.
-
Flexible configuration of the library allowing it to be ran on various machines ranging from single-node workstations to massively-parallel HPC architectures.
-
Possibility to configure the library to use quadruple precision arithmetics and achieve higher than double precision of the actual integrals calculated.
-
Input of molecular geometry, Gaussian basis and orbitals via the standard MOLDEN file.
Notes for version 3.0
- The main improvement in this version is the implementation of the MPI (distributed) evaluation of the mixed BTO/GTO integrals and the subsequent sparse integral transformation. In principle this allows to run arbitrarily large calculations using BTOs without an intermediate I/O only by increasing the total number of nodes (total memory) available for the calculation.
- Version 3.0.1 resolves illegal memory accesses that may appear in calculations using threading (see below).
Features added in this version:
- Implemented MPI evaluation of the mixed BTO/GTO integrals.
- Implemented MPI version of the sparse integral transformation.
- Renaming of the modules to ensure unique and uniform naming: all GBTOlib modules now carry the
_gbl
suffix. - Optional calculation of exponentially damped dipole matrix elements implemented for all types of atomic integrals; new parameter in namelist process_control
- scatci_integrals now allows reuse of previously calculated AO/MO using basis_input in namelist
process_control
to indicate file path; allows sign-consistent calculations - Molecular orbitals in the Molden format can now be written even if BTO basis is used (only GTO contribution considered); this is mostly useful in connection with UKRmol+ to write out the Dyson orbitals from calculations including BTOs.
- Backward compatibility with v1.0 integral files implemented
scatci_integrals
now exits early if integral file exists- Verbosity control for GBTOlib implemented and keyword added to redirect output to terminal
- Some keywords added to documentation
- Some improvements to memory allocation
- Changes to what is/is not printed by default: different verbosity levels (1-4) can now be selected using the 'verbosity' flag in the namelist
process_control
forscatci_integrals
. - Change of intent of some variables; avoids compiler warning when compiling with Intel Fortran 2020
- Minimal basis test for H2 added
- Bugs corrected:
- to prevent memory leak in
free_scattering_gbl
module - accurate memory allocation in routine
eval_CGTO_shell_pair_pw_expansion
to avoid invalid memory acces - to avoid integer overflow (in routine
eval_boys
) in LP64 mode - so evaluation of amplitudes for irreducible representations without orbitals is skipped
- in integrals_D2h_photoionization_CC_parallel test when 32-bit MPI library is used
- when writing of a MOLDEN file when equivalent atoms are presentand when the order of the atoms does not match the order of the centers of the GTOs in the basis.
- to prevent memory leak in
Bugfixes in v 3.0.1
- Fixed illegal memory accesses when threading due to incorrect use of thread-unsafe routines for spherical harmonics (cgto_pw_expansions_mod.f90, bto_gto_integrals_mod.f90).
- This fix included optimizations of the range of angular momenta for which some intermediate quantities are needed.
- Fixed a bug in saving of the GTO basis set and the molecular orbitals to disk (molden_mod.f90). This affected UKRmol+ photoionization calculations for molecules with an atom on the center of mass (i.e. coinciding with the center of the continuum basis set).
- Added tests for mixed BTO/GTO basis sets and for molecules with an atom on the center of mass.
Notes
Files
GBTOLib-3.0.1.zip
Files
(8.5 MB)
Name | Size | Download all |
---|---|---|
md5:8d82532ac5e2c44397ca1edae141e6f8
|
4.3 MB | Preview Download |
md5:a043405af27c79e93db81409bd21f7e5
|
4.2 MB | Preview Download |
Additional details
Related works
- Is part of
- Software: 10.5281/zenodo.4120705 (DOI)
- Software: 10.5281/zenodo.4120626 (DOI)
- Is referenced by
- Software documentation: 10.1016/j.cpc.2019.107092 (DOI)
- Software documentation: 10.1016/j.cpc.2019.107062 (DOI)