(git:3c69fd1)
Loading...
Searching...
No Matches
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
 
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
 
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
 
subroutine, public abc_contract_xsmm (abcint, sabc, sphi_a, sphi_b, sphi_c, ncoa, ncob, ncoc, nsgfa, nsgfb, nsgfc, cpp_buffer, ccp_buffer, prefac, pstfac)
 3-center contraction routine from primitive cartesian Gaussians to spherical Gaussian functions using BLAS dgemm. Requires pre-transposition of the sphi_a array. The call-side shall DEALLOCATE buffers end of scope or after last use. This function ALLOCATEs or grows the work buffers as necessary.
 

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 abc_contract_xsmm 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 46 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 98 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 160 of file ai_contraction_sphi.F.

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

◆ abc_contract_xsmm()

subroutine, public ai_contraction_sphi::abc_contract_xsmm ( real(kind=dp), dimension(:, :, :)  abcint,
real(kind=dp), dimension(*), intent(in), target  sabc,
real(kind=dp), dimension(:, :), intent(in), target, contiguous  sphi_a,
real(kind=dp), dimension(:, :), intent(in), target, contiguous  sphi_b,
real(kind=dp), dimension(:, :), intent(in), target, contiguous  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(kind=dp), dimension(:), allocatable, target  cpp_buffer,
real(kind=dp), dimension(:), allocatable, target  ccp_buffer,
real(kind=dp), intent(in), optional  prefac,
real(kind=dp), intent(in), optional  pstfac 
)

3-center contraction routine from primitive cartesian Gaussians to spherical Gaussian functions using BLAS dgemm. Requires pre-transposition of the sphi_a array. The call-side shall DEALLOCATE buffers end of scope or after last use. This function ALLOCATEs or grows the work buffers as necessary.

Parameters
abcintcontracted integrals
sabcuncontracted integrals
sphi_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_bufferBuffer used for intermediate results (automatically allocated).
ccp_bufferBuffer used for intermediate results (automatically allocated).
prefacPrefactor which is finally multiplied into abcint (default: 1.0).
pstfacFactor used to consider initial abcint (default: 0.0).

Definition at line 248 of file ai_contraction_sphi.F.

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