(git:f7b9015)
Loading...
Searching...
No Matches
four_center_integral_interface Module Reference

Four-center integral evaluation with an encapsulated Libint backend. More...

Data Types

type  four_center_integral_context_type
 Context owning the energy and first-derivative backend workspaces. More...

Functions/Subroutines

subroutine, public four_center_integral_init (context, max_am)
 Initialize the four-center energy and first-derivative workspaces.
subroutine, public four_center_integral_cleanup (context)
 Release the workspaces of an owning four-center context.
subroutine, public evaluate_deriv_eri (context, nproducts, pgf_product_list, n_a, n_b, n_c, n_d, ncoa, ncob, ncoc, ncod, nsgfa, nsgfb, nsgfc, nsgfd, primitives, max_contraction, tmp_max_all, eps_schwarz, neris, s_offset_a, s_offset_b, s_offset_c, s_offset_d, nl_a, nl_b, nl_c, nl_d, nsoa, nsob, nsoc, nsod, sphi_a, sphi_b, sphi_c, sphi_d, work, work2, work_forces, buffer1, buffer2, primitives_tmp, use_virial, work_virial, work2_virial, primitives_tmp_virial, primitives_virial, cell, tmp_max_all_virial)
 Evaluates derivatives of electron repulsion integrals for a primitive quartet.
subroutine, public evaluate_eri_screen (context, a, b, c, d, zeta_a, zeta_b, zeta_c, zeta_d, n_a, n_b, n_c, n_d, max_val, potential_parameter, r1, r2)
 Evaluates max-abs values of electron repulsion integrals for a primitive quartet.
subroutine, public evaluate_eri (context, nproducts, pgf_product_list, n_a, n_b, n_c, n_d, ncoa, ncob, ncoc, ncod, nsgfa, nsgfb, nsgfc, nsgfd, primitives, max_contraction, tmp_max, eps_schwarz, neris, s_offset_a, s_offset_b, s_offset_c, s_offset_d, nl_a, nl_b, nl_c, nl_d, nsoa, nsob, nsoc, nsod, sphi_a, sphi_b, sphi_c, sphi_d, work, work2, buffer1, buffer2, primitives_tmp)
 Evaluate electron repulsion integrals for a primitive quartet.

Detailed Description

Four-center integral evaluation with an encapsulated Libint backend.

History
11.2006 created [Manuel Guidon] 11.2019 Fixed potential_id initial values (A. Bussy)
Author
Manuel Guidon

Function/Subroutine Documentation

◆ four_center_integral_init()

subroutine, public four_center_integral_interface::four_center_integral_init ( type(four_center_integral_context_type), intent(inout) context,
integer, intent(in) max_am )

Initialize the four-center energy and first-derivative workspaces.

Parameters
contextowning context; global backend initialization is provided by init_cp2k
max_ammaximum angular momentum on any center

Definition at line 60 of file four_center_integral_interface.F.

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

◆ four_center_integral_cleanup()

subroutine, public four_center_integral_interface::four_center_integral_cleanup ( type(four_center_integral_context_type), intent(inout) context)

Release the workspaces of an owning four-center context.

Parameters
contextoriginal initialized owner; borrowed copies must not be passed here

Definition at line 75 of file four_center_integral_interface.F.

Here is the call graph for this function:

◆ evaluate_deriv_eri()

subroutine, public four_center_integral_interface::evaluate_deriv_eri ( type(four_center_integral_context_type) context,
integer, intent(in) nproducts,
type(eri4_pgf_product_type), dimension(nproducts) pgf_product_list,
integer, intent(in) n_a,
integer, intent(in) n_b,
integer, intent(in) n_c,
integer, intent(in) n_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,
real(dp), dimension(nsgfa, nsgfb, nsgfc, nsgfd, 12) primitives,
real(dp) max_contraction,
real(dp) tmp_max_all,
real(dp) eps_schwarz,
integer(int_8) neris,
integer s_offset_a,
integer s_offset_b,
integer s_offset_c,
integer s_offset_d,
integer nl_a,
integer nl_b,
integer nl_c,
integer nl_d,
integer nsoa,
integer nsob,
integer nsoc,
integer nsod,
real(dp), dimension(ncoa, nsoa*nl_a) sphi_a,
real(dp), dimension(ncob, nsob*nl_b) sphi_b,
real(dp), dimension(ncoc, nsoc*nl_c) sphi_c,
real(dp), dimension(ncod, nsod*nl_d) sphi_d,
real(dp), dimension(ncoa*ncob*ncoc*ncod, 12) work,
real(dp), dimension(ncoa, ncob, ncoc, ncod, 12) work2,
real(dp), dimension(ncoa*ncob*ncoc*ncod, 12) work_forces,
real(dp), dimension(ncoa*ncob*ncoc*ncod) buffer1,
real(dp), dimension(ncoa*ncob*ncoc*ncod) buffer2,
real(dp), dimension(nsoa*nl_a, nsob*nl_b, nsoc* nl_c, nsod*nl_d) primitives_tmp,
logical, intent(in) use_virial,
real(dp), dimension(ncoa*ncob*ncoc*ncod, 12, 3) work_virial,
real(dp), dimension(ncoa, ncob, ncoc, ncod, 12, 3) work2_virial,
real(dp), dimension(nsoa*nl_a, nsob*nl_b, nsoc* nl_c, nsod*nl_d) primitives_tmp_virial,
real(dp), dimension(nsgfa, nsgfb, nsgfc, nsgfd, 12, 3) primitives_virial,
type(cell_type), pointer cell,
real(dp) tmp_max_all_virial )

Evaluates derivatives of electron repulsion integrals for a primitive quartet.

Parameters
contextfour-center integral context
nproducts...
pgf_product_list...
n_a...
n_b...
n_c...
n_d...
ncoa...
ncob...
ncoc...
ncod...
nsgfa...
nsgfb...
nsgfc...
nsgfd...
primitives...
max_contraction...
tmp_max_all...
eps_schwarz...
neris...
s_offset_a...
s_offset_b...
s_offset_c...
s_offset_d...
nl_a...
nl_b...
nl_c...
nl_d...
nsoa...
nsob...
nsoc...
nsod...
sphi_a...
sphi_b...
sphi_c...
sphi_d...
work...
work2...
work_forces...
buffer1...
buffer2...
primitives_tmp...
use_virial...
work_virial...
work2_virial...
primitives_tmp_virial...
primitives_virial...
cell...
tmp_max_all_virial...
History
03.2007 created [Manuel Guidon] 08.2007 refactured permutation part [Manuel Guidon]
Author
Manuel Guidon

Definition at line 209 of file four_center_integral_interface.F.

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

◆ evaluate_eri_screen()

subroutine, public four_center_integral_interface::evaluate_eri_screen ( type(four_center_integral_context_type) context,
real(dp), dimension(3), intent(in) a,
real(dp), dimension(3), intent(in) b,
real(dp), dimension(3), intent(in) c,
real(dp), dimension(3), intent(in) d,
real(dp), intent(in) zeta_a,
real(dp), intent(in) zeta_b,
real(dp), intent(in) zeta_c,
real(dp), intent(in) zeta_d,
integer, intent(in) n_a,
integer, intent(in) n_b,
integer, intent(in) n_c,
integer, intent(in) n_d,
real(dp), intent(inout) max_val,
type(coulomb_operator_type) potential_parameter,
real(dp) r1,
real(dp) r2 )

Evaluates max-abs values of electron repulsion integrals for a primitive quartet.

Parameters
contextfour-center integral context
A...
B...
C...
D...
Zeta_A...
Zeta_B...
Zeta_C...
Zeta_D...
n_a...
n_b...
n_c...
n_d...
max_val...
potential_parameter...
R1...
R2...
History
03.2007 created [Manuel Guidon] 08.2007 refactured permutation part [Manuel Guidon]
Author
Manuel Guidon

Definition at line 430 of file four_center_integral_interface.F.

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

◆ evaluate_eri()

subroutine, public four_center_integral_interface::evaluate_eri ( type(four_center_integral_context_type) context,
integer, intent(in) nproducts,
type(eri4_pgf_product_type), dimension(nproducts) pgf_product_list,
integer, intent(in) n_a,
integer, intent(in) n_b,
integer, intent(in) n_c,
integer, intent(in) n_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,
real(dp), dimension(nsgfa, nsgfb, nsgfc, nsgfd) primitives,
real(dp) max_contraction,
real(dp) tmp_max,
real(dp) eps_schwarz,
integer(int_8) neris,
integer s_offset_a,
integer s_offset_b,
integer s_offset_c,
integer s_offset_d,
integer nl_a,
integer nl_b,
integer nl_c,
integer nl_d,
integer nsoa,
integer nsob,
integer nsoc,
integer nsod,
real(dp), dimension(ncoa, nsoa*nl_a), intent(in) sphi_a,
real(dp), dimension(ncob, nsob*nl_b), intent(in) sphi_b,
real(dp), dimension(ncoc, nsoc*nl_c), intent(in) sphi_c,
real(dp), dimension(ncod, nsod*nl_d), intent(in) sphi_d,
real(dp), dimension(ncoa*ncob*ncoc*ncod), target work,
real(dp), dimension(ncoa, ncob, ncoc, ncod) work2,
real(dp), dimension(ncoa*ncob*ncoc*ncod) buffer1,
real(dp), dimension(ncoa*ncob*ncoc*ncod) buffer2,
real(dp), dimension(nsoa*nl_a, nsob*nl_b, nsoc* nl_c, nsod*nl_d) primitives_tmp )

Evaluate electron repulsion integrals for a primitive quartet.

Parameters
contextfour-center integral context
nproducts...
pgf_product_list...
n_a...
n_b...
n_c...
n_d...
ncoa...
ncob...
ncoc...
ncod...
nsgfa...
nsgfb...
nsgfc...
nsgfd...
primitives...
max_contraction...
tmp_max...
eps_schwarz...
neris...
s_offset_a...
s_offset_b...
s_offset_c...
s_offset_d...
nl_a...
nl_b...
nl_c...
nl_d...
nsoa...
nsob...
nsoc...
nsod...
sphi_a...
sphi_b...
sphi_c...
sphi_d...
work...
work2...
buffer1...
buffer2...
primitives_tmp...
History
11.2006 created [Manuel Guidon] 08.2007 refactured permutation part [Manuel Guidon]
Author
Manuel Guidon

Definition at line 543 of file four_center_integral_interface.F.

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