(git:c5411e0)
Loading...
Searching...
No Matches
mp2_ri_grad_util Module Reference

Routines for calculating RI-MP2 gradients. More...

Functions/Subroutines

subroutine, public complete_gamma (mp2_env, b_ia_q, dimen_ri, homo, virtual, para_env, para_env_sub, ngroup, my_group_l_size, my_group_l_start, my_group_l_end, my_b_size, my_b_virtual_start, gd_array, gd_b_virtual, kspin)
 complete the calculation of the Gamma matrices
 
subroutine, public array2fm (mat2d, fm_struct, my_start_row, my_end_row, my_start_col, my_end_col, gd_row, gd_col, group_grid_2_mepos, ngroup_row, ngroup_col, fm_mat, integ_group_size, color_group, do_release_mat)
 redistribute local part of array to fm
 
subroutine, public fm2array (mat2d, my_rows, my_start_row, my_end_row, my_cols, my_start_col, my_end_col, group_grid_2_mepos, mepos_2_grid_group, ngroup_row, ngroup_col, fm_mat)
 redistribute fm to local part of array
 
subroutine, public create_dbcsr_gamma (gamma_2d, homo, virtual, dimen_ia, para_env_sub, my_ia_start, my_ia_end, my_group_l_size, gd_ia, dbcsr_gamma, mo_coeff_o)
 redistribute 2D representation of 3d tensor to a set of dbcsr matrices
 
subroutine, public prepare_redistribution (para_env, para_env_sub, ngroup, group_grid_2_mepos, mepos_2_grid_group, pos_info)
 prepare array for redistribution
 

Detailed Description

Routines for calculating RI-MP2 gradients.

History
10.2013 created [Mauro Del Ben]

Function/Subroutine Documentation

◆ complete_gamma()

subroutine, public mp2_ri_grad_util::complete_gamma ( type(mp2_type mp2_env,
real(kind=dp), dimension(:, :, :), intent(inout), allocatable  b_ia_q,
integer, intent(in)  dimen_ri,
integer, intent(in)  homo,
integer, intent(in)  virtual,
type(mp_para_env_type), intent(in), pointer  para_env,
type(mp_para_env_type), intent(in), pointer  para_env_sub,
integer, intent(in)  ngroup,
integer, intent(in)  my_group_l_size,
integer, intent(in)  my_group_l_start,
integer, intent(in)  my_group_l_end,
integer, intent(in)  my_b_size,
integer, intent(in)  my_b_virtual_start,
type(group_dist_d1_type), intent(in)  gd_array,
type(group_dist_d1_type), intent(in)  gd_b_virtual,
integer, intent(in)  kspin 
)

complete the calculation of the Gamma matrices

Parameters
mp2_env...
B_ia_Q...
dimen_RI...
homo...
virtual...
para_env...
para_env_sub...
ngroup...
my_group_L_size...
my_group_L_start...
my_group_L_end...
my_B_size...
my_B_virtual_start...
gd_array...
gd_B_virtual...
kspin...
Author
Mauro Del Ben

Definition at line 81 of file mp2_ri_grad_util.F.

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

◆ array2fm()

subroutine, public mp2_ri_grad_util::array2fm ( real(kind=dp), dimension(:, :), intent(inout), allocatable  mat2d,
type(cp_fm_struct_type), pointer  fm_struct,
integer, intent(in)  my_start_row,
integer, intent(in)  my_end_row,
integer, intent(in)  my_start_col,
integer, intent(in)  my_end_col,
type(group_dist_d1_type), intent(in)  gd_row,
type(group_dist_d1_type), intent(in)  gd_col,
integer, dimension(:, :), intent(in), allocatable  group_grid_2_mepos,
integer, intent(in)  ngroup_row,
integer, intent(in)  ngroup_col,
type(cp_fm_type), intent(out)  fm_mat,
integer, intent(in), optional  integ_group_size,
integer, intent(in), optional  color_group,
logical, intent(in), optional  do_release_mat 
)

redistribute local part of array to fm

Parameters
mat2D...
fm_struct...
my_start_row...
my_end_row...
my_start_col...
my_end_col...
gd_row...
gd_col...
group_grid_2_mepos...
ngroup_row...
ngroup_col...
fm_mat...
integ_group_size...
color_group...
do_release_matwhether to release the array (default: yes)

Definition at line 490 of file mp2_ri_grad_util.F.

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

◆ fm2array()

subroutine, public mp2_ri_grad_util::fm2array ( real(kind=dp), dimension(:, :), intent(out), allocatable  mat2d,
integer, intent(in)  my_rows,
integer, intent(in)  my_start_row,
integer, intent(in)  my_end_row,
integer, intent(in)  my_cols,
integer, intent(in)  my_start_col,
integer, intent(in)  my_end_col,
integer, dimension(:, :), intent(in), allocatable  group_grid_2_mepos,
integer, dimension(:, :), intent(in), allocatable  mepos_2_grid_group,
integer, intent(in)  ngroup_row,
integer, intent(in)  ngroup_col,
type(cp_fm_type), intent(inout)  fm_mat 
)

redistribute fm to local part of array

Parameters
mat2D...
my_rows...
my_start_row...
my_end_row...
my_cols...
my_start_col...
my_end_col...
group_grid_2_mepos...
mepos_2_grid_group...
ngroup_row...
ngroup_col...
fm_mat...

Definition at line 897 of file mp2_ri_grad_util.F.

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

◆ create_dbcsr_gamma()

subroutine, public mp2_ri_grad_util::create_dbcsr_gamma ( real(kind=dp), dimension(:, :), allocatable  gamma_2d,
integer, intent(in)  homo,
integer, intent(in)  virtual,
integer, intent(in)  dimen_ia,
type(mp_para_env_type), intent(in), pointer  para_env_sub,
integer, intent(in)  my_ia_start,
integer, intent(in)  my_ia_end,
integer, intent(in)  my_group_l_size,
type(group_dist_d1_type), intent(in)  gd_ia,
type(dbcsr_p_type), dimension(:), intent(inout)  dbcsr_gamma,
type(dbcsr_type), intent(inout)  mo_coeff_o 
)

redistribute 2D representation of 3d tensor to a set of dbcsr matrices

Parameters
Gamma_2D...
homo...
virtual...
dimen_ia...
para_env_sub...
my_ia_start...
my_ia_end...
my_group_L_size...
gd_ia...
dbcsr_Gamma...
mo_coeff_o...

Definition at line 1251 of file mp2_ri_grad_util.F.

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

◆ prepare_redistribution()

subroutine, public mp2_ri_grad_util::prepare_redistribution ( type(mp_para_env_type), intent(in)  para_env,
type(mp_para_env_type), intent(in)  para_env_sub,
integer, intent(in)  ngroup,
integer, dimension(:, :), intent(out), allocatable  group_grid_2_mepos,
integer, dimension(:, :), intent(out), allocatable  mepos_2_grid_group,
integer, dimension(:), intent(out), optional, allocatable  pos_info 
)

prepare array for redistribution

Parameters
para_env...
para_env_sub...
ngroup...
group_grid_2_mepos...
mepos_2_grid_group...
pos_info...

Definition at line 1587 of file mp2_ri_grad_util.F.

Here is the caller graph for this function: