(git:6a2e663)
mp2_eri Module Reference

Interface to direct methods for electron repulsion integrals for MP2. More...

Functions/Subroutines

subroutine, public mp2_eri_2c_integrate (param, potential_parameter, para_env, qs_env, basis_type_a, basis_type_b, hab, first_b, last_b, eri_method, pab, force_a, force_b, hdab, hadb, reflection_z_a, reflection_z_b, do_reflection_a, do_reflection_b)
 high-level integration routine for 2c integrals over CP2K basis sets. Contiguous column-wise distribution and parallelization over pairs of sets. More...
 
subroutine, public integrate_set_2c (param, potential_parameter, la_min, la_max, lb_min, lb_max, npgfa, npgfb, zeta, zetb, ra, rb, hab, n_hab_a, n_hab_b, offset_hab_a, offset_hab_b, offset_set_a, offset_set_b, sphi_a, sphi_b, sgfa, sgfb, nsgfa, nsgfb, eri_method, pab, force_a, force_b, hdab, hadb, G_count, R_count, do_reflection_a, do_reflection_b)
 Integrate set pair and contract with sphi matrix. More...
 
subroutine, public mp2_eri_3c_integrate (param, potential_parameter, para_env, qs_env, first_c, last_c, mat_ab, basis_type_a, basis_type_b, basis_type_c, sab_nl, eri_method, pabc, force_a, force_b, force_c, mat_dabc, mat_adbc, mat_abdc)
 high-level integration routine for 3c integrals (ab|c) over CP2K basis sets. For each local function of c, (ab|c) is written to a DBCSR matrix mat_ab. More...
 
pure subroutine, public mp2_eri_allocate_forces (force, natom_of_kind)
 ... More...
 
pure subroutine, public mp2_eri_deallocate_forces (force)
 ... More...
 
integer function, public convert_potential_type (potential_type)
 

Detailed Description

Interface to direct methods for electron repulsion integrals for MP2.

Function/Subroutine Documentation

◆ mp2_eri_2c_integrate()

subroutine, public mp2_eri::mp2_eri_2c_integrate ( type(cp_eri_mme_param), intent(inout)  param,
type(libint_potential_type), intent(in)  potential_parameter,
type(mp_para_env_type), intent(in)  para_env,
type(qs_environment_type), intent(in), pointer  qs_env,
character(len=*), intent(in), optional  basis_type_a,
character(len=*), intent(in), optional  basis_type_b,
real(kind=dp), dimension(:, :), intent(inout)  hab,
integer, intent(in)  first_b,
integer, intent(in)  last_b,
integer, intent(in), optional  eri_method,
real(kind=dp), dimension(:, :), intent(in), optional  pab,
type(mp2_eri_force), dimension(:), intent(out), optional, allocatable  force_a,
type(mp2_eri_force), dimension(:), intent(out), optional, allocatable  force_b,
real(kind=dp), dimension(:, :, :), intent(inout), optional  hdab,
real(kind=dp), dimension(:, :, :), intent(inout), optional  hadb,
real(kind=dp), intent(in), optional  reflection_z_a,
real(kind=dp), intent(in), optional  reflection_z_b,
logical, intent(in), optional  do_reflection_a,
logical, intent(in), optional  do_reflection_b 
)

high-level integration routine for 2c integrals over CP2K basis sets. Contiguous column-wise distribution and parallelization over pairs of sets.

Parameters
param...
para_envmpi environment for local columns
potential_parameter...
qs_env...
basis_type_a...
basis_type_b...
habcolumns of ERI matrix
first_bfirst column of hab
last_blast column of hab
eri_method...
pab...
force_a...
force_b...
hdab...
hadb...
reflection_z_a...
reflection_z_b...
do_reflection_a...
do_reflection_b...

Definition at line 112 of file mp2_eri.F.

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

◆ integrate_set_2c()

subroutine, public mp2_eri::integrate_set_2c ( type(eri_mme_param), intent(inout)  param,
type(libint_potential_type), intent(in)  potential_parameter,
integer, intent(in)  la_min,
integer, intent(in)  la_max,
integer, intent(in)  lb_min,
integer, intent(in)  lb_max,
integer, intent(in)  npgfa,
integer, intent(in)  npgfb,
real(kind=dp), dimension(npgfa), intent(in)  zeta,
real(kind=dp), dimension(npgfb), intent(in)  zetb,
real(kind=dp), dimension(3), intent(in)  ra,
real(kind=dp), dimension(3), intent(in)  rb,
real(kind=dp), dimension(:, :), intent(out)  hab,
integer, intent(in)  n_hab_a,
integer, intent(in)  n_hab_b,
integer, intent(in)  offset_hab_a,
integer, intent(in)  offset_hab_b,
integer, intent(in)  offset_set_a,
integer, intent(in)  offset_set_b,
real(kind=dp), dimension(:, :), intent(in)  sphi_a,
real(kind=dp), dimension(:, :), intent(in)  sphi_b,
integer, intent(in)  sgfa,
integer, intent(in)  sgfb,
integer, intent(in)  nsgfa,
integer, intent(in)  nsgfb,
integer, intent(in)  eri_method,
real(kind=dp), dimension(:, :), intent(in), optional  pab,
real(kind=dp), dimension(3), intent(inout), optional  force_a,
real(kind=dp), dimension(3), intent(inout), optional  force_b,
real(kind=dp), dimension(:, :, :), intent(out), optional  hdab,
real(kind=dp), dimension(:, :, :), intent(out), optional  hadb,
integer, intent(inout), optional  G_count,
integer, intent(inout), optional  R_count,
logical, intent(in), optional  do_reflection_a,
logical, intent(in), optional  do_reflection_b 
)

Integrate set pair and contract with sphi matrix.

Parameters
param...
potential_parameter...
la_min...
la_max...
lb_min...
lb_max...
npgfa...
npgfb...
zeta...
zetb...
ra...
rb...
hab...
n_hab_a...
n_hab_b...
offset_hab_a...
offset_hab_b...
offset_set_a...
offset_set_b...
sphi_a...
sphi_b...
sgfa...
sgfb...
nsgfa...
nsgfb...
eri_method...
pab...
force_a...
force_b...
hdab...
hadb...
G_count...
R_count...
do_reflection_a...
do_reflection_b...

Definition at line 421 of file mp2_eri.F.

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

◆ mp2_eri_3c_integrate()

subroutine, public mp2_eri::mp2_eri_3c_integrate ( type(cp_eri_mme_param), intent(inout)  param,
type(libint_potential_type), intent(in)  potential_parameter,
type(mp_para_env_type), intent(in)  para_env,
type(qs_environment_type), intent(in), pointer  qs_env,
integer, intent(in)  first_c,
integer, intent(in)  last_c,
type(dbcsr_p_type), dimension(last_c - first_c + 1), intent(inout)  mat_ab,
character(len=*), intent(in)  basis_type_a,
character(len=*), intent(in)  basis_type_b,
character(len=*), intent(in)  basis_type_c,
type(neighbor_list_set_p_type), dimension(:), pointer  sab_nl,
integer, intent(in), optional  eri_method,
type(dbcsr_p_type), dimension(last_c - first_c + 1), intent(inout), optional  pabc,
type(mp2_eri_force), dimension(:), intent(out), optional, allocatable  force_a,
type(mp2_eri_force), dimension(:), intent(out), optional, allocatable  force_b,
type(mp2_eri_force), dimension(:), intent(out), optional, allocatable  force_c,
type(dbcsr_p_type), dimension(3, last_c - first_c + 1), intent(inout), optional  mat_dabc,
type(dbcsr_p_type), dimension(3, last_c - first_c + 1), intent(inout), optional  mat_adbc,
type(dbcsr_p_type), dimension(3, last_c - first_c + 1), intent(inout), optional  mat_abdc 
)

high-level integration routine for 3c integrals (ab|c) over CP2K basis sets. For each local function of c, (ab|c) is written to a DBCSR matrix mat_ab.

Parameters
param...
potential_parameter...
para_env...
qs_env...
first_cstart index of local range of c
last_cend index of local range of c
mat_abDBCSR matrices for each c
basis_type_a...
basis_type_b...
basis_type_c...
sab_nlneighbor list for a, b
eri_method...
pabc...
force_a...
force_b...
force_c...
mat_dabc...
mat_adbc...
mat_abdc...

Definition at line 674 of file mp2_eri.F.

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

◆ mp2_eri_allocate_forces()

pure subroutine, public mp2_eri::mp2_eri_allocate_forces ( type(mp2_eri_force), dimension(:), intent(out), allocatable  force,
integer, dimension(:), intent(in)  natom_of_kind 
)

...

Parameters
force...
natom_of_kind...

Definition at line 5819 of file mp2_eri.F.

Here is the caller graph for this function:

◆ mp2_eri_deallocate_forces()

pure subroutine, public mp2_eri::mp2_eri_deallocate_forces ( type(mp2_eri_force), dimension(:), intent(inout), allocatable  force)

...

Parameters
force...

Definition at line 5841 of file mp2_eri.F.

Here is the caller graph for this function:

◆ convert_potential_type()

integer function, public mp2_eri::convert_potential_type ( integer, intent(in)  potential_type)

Definition at line 5857 of file mp2_eri.F.

Here is the caller graph for this function: