(git:6a2e663)
ai_contraction_sphi Module Reference

Contraction of integrals over primitive Cartesian Gaussians based on the contraction matrix sphi which is part of the gto_basis_set_type. More...

Functions/Subroutines

subroutine, public ab_contract (abint, sab, sphi_a, sphi_b, ncoa, ncob, nsgfa, nsgfb)
 contract overlap integrals (a,b) and transfer to spherical Gaussians More...
 
subroutine, public abc_contract (abcint, sabc, sphi_a, sphi_b, sphi_c, ncoa, ncob, ncoc, nsgfa, nsgfb, nsgfc)
 contract three-center overlap integrals (a,b,c) and transfer to spherical Gaussians More...
 
subroutine, public abcd_contract (abcdint, sabcd, sphi_a, sphi_b, sphi_c, sphi_d, ncoa, ncob, ncoc, ncod, nsgfa, nsgfb, nsgfc, nsgfd)
 contract four-center overlap integrals (a,b,c,d) and transfer to spherical Gaussians More...
 
subroutine, public libxsmm_abc_contract (abcint, sabc, tsphi_a, sphi_b, sphi_c, ncoa, ncob, ncoc, nsgfa, nsgfb, nsgfc, cpp_buffer, ccp_buffer)
 3-center contraction routine from primitive cartesain Gaussians to spherical Gaussian functions. Exploits LIBXSMM for performance, falls back to BLAS if LIBXSMM not available. Requires pre-allocation of work buffers and pre-transposition of the sphi_a array. Requires the LIBXSMM library to be initialized somewhere before this routine is called. More...
 

Detailed Description

Contraction of integrals over primitive Cartesian Gaussians based on the contraction matrix sphi which is part of the gto_basis_set_type.

History
-added libxsmm_abc_contract routine, A. Bussy (04.2020)
Author
Dorothea Golze (05.2016)

Function/Subroutine Documentation

◆ ab_contract()

subroutine, public ai_contraction_sphi::ab_contract ( real(kind=dp), dimension(:, :), intent(inout)  abint,
real(kind=dp), dimension(:, :), intent(in)  sab,
real(kind=dp), dimension(:, :), intent(in)  sphi_a,
real(kind=dp), dimension(:, :), intent(in)  sphi_b,
integer, intent(in)  ncoa,
integer, intent(in)  ncob,
integer, intent(in)  nsgfa,
integer, intent(in)  nsgfb 
)

contract overlap integrals (a,b) and transfer to spherical Gaussians

Parameters
abintcontracted, normalized integrals of spherical Gaussians
sabuncontracted, unnormalized integrals of primitive Cartesian Gaussians
sphi_acontraction matrix for center a
sphi_bcontraction matrix for center b
ncoanumber of cartesian orbitals on a
ncobnumber of cartesian orbitals on b
nsgfanumber of spherical Gaussian functions on a
nsgfbnumber of spherical Gaussian functions on b

Definition at line 51 of file ai_contraction_sphi.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ abc_contract()

subroutine, public ai_contraction_sphi::abc_contract ( real(kind=dp), dimension(:, :, :)  abcint,
real(kind=dp), dimension(:, :, :)  sabc,
real(kind=dp), dimension(:, :)  sphi_a,
real(kind=dp), dimension(:, :)  sphi_b,
real(kind=dp), dimension(:, :)  sphi_c,
integer, intent(in)  ncoa,
integer, intent(in)  ncob,
integer, intent(in)  ncoc,
integer, intent(in)  nsgfa,
integer, intent(in)  nsgfb,
integer, intent(in)  nsgfc 
)

contract three-center overlap integrals (a,b,c) and transfer to spherical Gaussians

Parameters
abcintcontracted, normalized integrals of spherical Gaussians
sabcuncontracted, unnormalized integrals of primitive Cartesian Gaussians
sphi_acontraction matrix for center a
sphi_bcontraction matrix for center b
sphi_ccontraction matrix for center c
ncoanumber of cartesian orbitals on a
ncobnumber of cartesian orbitals on b
ncocnumber of cartesian orbitals on c
nsgfanumber of spherical Gaussian functions on a
nsgfbnumber of spherical Gaussian functions on b
nsgfcnumber of spherical Gaussian functions on c

Definition at line 99 of file ai_contraction_sphi.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ abcd_contract()

subroutine, public ai_contraction_sphi::abcd_contract ( real(kind=dp), dimension(:, :, :, :), intent(inout)  abcdint,
real(kind=dp), dimension(:, :, :, :), intent(in)  sabcd,
real(kind=dp), dimension(:, :), intent(in)  sphi_a,
real(kind=dp), dimension(:, :), intent(in)  sphi_b,
real(kind=dp), dimension(:, :), intent(in)  sphi_c,
real(kind=dp), dimension(:, :), intent(in)  sphi_d,
integer, intent(in)  ncoa,
integer, intent(in)  ncob,
integer, intent(in)  ncoc,
integer, intent(in)  ncod,
integer, intent(in)  nsgfa,
integer, intent(in)  nsgfb,
integer, intent(in)  nsgfc,
integer, intent(in)  nsgfd 
)

contract four-center overlap integrals (a,b,c,d) and transfer to spherical Gaussians

Parameters
abcdintcontracted, normalized integrals of spherical Gaussians
sabcduncontracted, unnormalized integrals of primitive Cartesian Gaussians
sphi_acontraction matrix for center a
sphi_bcontraction matrix for center b
sphi_ccontraction matrix for center c
sphi_dcontraction matrix for center d
ncoanumber of cartesian orbitals on a
ncobnumber of cartesian orbitals on b
ncocnumber of cartesian orbitals on c
ncodnumber of cartesian orbitals on d
nsgfanumber of spherical Gaussian functions on a
nsgfbnumber of spherical Gaussian functions on b
nsgfcnumber of spherical Gaussian functions on c
nsgfdnumber of spherical Gaussian functions on d

Definition at line 159 of file ai_contraction_sphi.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ libxsmm_abc_contract()

subroutine, public ai_contraction_sphi::libxsmm_abc_contract ( real(dp), dimension(*)  abcint,
real(dp), dimension(*)  sabc,
real(dp), dimension(:, :)  tsphi_a,
real(dp), dimension(:, :)  sphi_b,
real(dp), dimension(:, :)  sphi_c,
integer, intent(in)  ncoa,
integer, intent(in)  ncob,
integer, intent(in)  ncoc,
integer, intent(in)  nsgfa,
integer, intent(in)  nsgfb,
integer, intent(in)  nsgfc,
real(dp), dimension(nsgfa*ncob)  cpp_buffer,
real(dp), dimension(nsgfa*nsgfb*ncoc)  ccp_buffer 
)

3-center contraction routine from primitive cartesain Gaussians to spherical Gaussian functions. Exploits LIBXSMM for performance, falls back to BLAS if LIBXSMM not available. Requires pre-allocation of work buffers and pre-transposition of the sphi_a array. Requires the LIBXSMM library to be initialized somewhere before this routine is called.

Parameters
abcintcontracted integrals
sabcuncontracted integrals
tsphi_aassumed to have dimensions nsgfa x ncoa
sphi_bassumed to have dimensions ncob x nsgfb
sphi_cassumed to have dimensions ncoc x nsgfc
ncoa...
ncob...
ncoc...
nsgfa...
nsgfb...
nsgfc...
cpp_buffer...
ccp_buffer...
Note
tested from version 1.9.0 of libxsmm

Definition at line 245 of file ai_contraction_sphi.F.

Here is the call graph for this function:
Here is the caller graph for this function: