(git:5e7fe52)
Loading...
Searching...
No Matches
gw_utils Module Reference

Functions/Subroutines

subroutine, public create_and_init_bs_env_for_gw (qs_env, bs_env, bs_sec)
 ...
subroutine, public de_init_bs_env (qs_env, bs_env)
 Releases the memory-heavy GW intermediates that cannot be freed in bs_env_release, retaining the 3c neighbor list only when an AO-RI RT-BSE self-energy still needs it.
subroutine, public rtbse_resolve_rirs_flag (qs_env, bs_env, rirs_kernel)
 Resolve the linRTBSE RI-RS kernel switch from the KERNEL_RI input and the GW default.
subroutine, public compute_xkp (xkp, ikp_start, ikp_end, grid)
 ...
subroutine, public get_i_j_atoms (atoms_i, atoms_j, n_atom_i, n_atom_j, color_sub, bs_env)
 ...
subroutine, public add_r (cell_1, cell_2, index_to_cell, cell_1_plus_2, cell_found, cell_to_index, i_cell_1_plus_2)
 ...
subroutine, public is_cell_in_index_to_cell (cell, index_to_cell, cell_found)
 ...
subroutine, public get_v_tr_r (v_tr_r, pot_type, regularization_ri, bs_env, qs_env)
 ...
subroutine, public power (matrix, exponent, eps, cond_nr, min_ev, max_ev)
 ...
subroutine, public time_to_freq (bs_env, sigma_c_n_time, sigma_c_n_freq, ispin)
 ...
subroutine, public analyt_conti_and_print (bs_env, sigma_c_ikp_n_freq, sigma_x_ikp_n, v_xc_ikp_n, eigenval_scf, ikp, ispin)
 ...

Detailed Description

History
01.2026 Maximilian Graml: add more bounds to exploit sparsity in 3c integrals, fixes
Author
Jan Wilhelm
Date
07.2023

Function/Subroutine Documentation

◆ create_and_init_bs_env_for_gw()

subroutine, public gw_utils::create_and_init_bs_env_for_gw ( type(qs_environment_type), pointer qs_env,
type(post_scf_bandstructure_type), pointer bs_env,
type(section_vals_type), pointer bs_sec )

...

Parameters
qs_env...
bs_env...
bs_sec...

Definition at line 159 of file gw_utils.F.

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

◆ de_init_bs_env()

subroutine, public gw_utils::de_init_bs_env ( type(qs_environment_type), pointer qs_env,
type(post_scf_bandstructure_type), pointer bs_env )

Releases the memory-heavy GW intermediates that cannot be freed in bs_env_release, retaining the 3c neighbor list only when an AO-RI RT-BSE self-energy still needs it.

Parameters
qs_envQuickstep environment - used to resolve the RT-BSE kernel-RI setting
bs_envBandstructure environment whose intermediates are released

Definition at line 281 of file gw_utils.F.

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

◆ rtbse_resolve_rirs_flag()

subroutine, public gw_utils::rtbse_resolve_rirs_flag ( type(qs_environment_type), pointer qs_env,
type(post_scf_bandstructure_type), pointer bs_env,
logical, intent(out), optional rirs_kernel )

Resolve the linRTBSE RI-RS kernel switch from the KERNEL_RI input and the GW default.

Parameters
qs_envQuickstep environment - source of the input section and the RTP method
bs_envBandstructure environment - provides the do_gw_ri_rs default
rirs_kernel(optional) .TRUE. if the Hartree + SEX kernels use the RI-RS grid backend
Author
Maximilian Graml
Note
Single source of truth shared by create_rtbse_env (sets the flag) and de_init_bs_env (decides whether to retain nl_3c). KERNEL_RI=DEFAULT follows bs_envdo_gw_ri_rs; RS/AO force; forced .FALSE. for non-linearized (full) RT-BSE (warn on explicit RS).

Definition at line 326 of file gw_utils.F.

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

◆ compute_xkp()

subroutine, public gw_utils::compute_xkp ( real(kind=dp), dimension(:, :), pointer xkp,
integer ikp_start,
integer ikp_end,
integer, dimension(3) grid )

...

Parameters
xkp...
ikp_start...
ikp_end...
grid...

Definition at line 799 of file gw_utils.F.

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

◆ get_i_j_atoms()

subroutine, public gw_utils::get_i_j_atoms ( integer, dimension(2) atoms_i,
integer, dimension(2) atoms_j,
integer n_atom_i,
integer n_atom_j,
integer color_sub,
type(post_scf_bandstructure_type), pointer bs_env )

...

Parameters
atoms_i...
atoms_j...
n_atom_i...
n_atom_j...
color_sub...
bs_env...

Definition at line 1670 of file gw_utils.F.

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

◆ add_r()

subroutine, public gw_utils::add_r ( integer, dimension(3) cell_1,
integer, dimension(3) cell_2,
integer, dimension(:, :) index_to_cell,
integer, dimension(3) cell_1_plus_2,
logical cell_found,
integer, dimension(:, :, :), intent(in), optional, pointer cell_to_index,
integer, intent(out), optional i_cell_1_plus_2 )

...

Parameters
cell_1...
cell_2...
index_to_cell...
cell_1_plus_2...
cell_found...
cell_to_index...
i_cell_1_plus_2...

Definition at line 3015 of file gw_utils.F.

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

◆ is_cell_in_index_to_cell()

subroutine, public gw_utils::is_cell_in_index_to_cell ( integer, dimension(3) cell,
integer, dimension(:, :) index_to_cell,
logical cell_found )

...

Parameters
cell...
index_to_cell...
cell_found...

Definition at line 3055 of file gw_utils.F.

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

◆ get_v_tr_r()

subroutine, public gw_utils::get_v_tr_r ( real(kind=dp), dimension(:, :, :), allocatable v_tr_r,
type(libint_potential_type) pot_type,
real(kind=dp) regularization_ri,
type(post_scf_bandstructure_type), pointer bs_env,
type(qs_environment_type), pointer qs_env )

...

Parameters
V_tr_R...
pot_type...
regularization_RI...
bs_env...
qs_env...

Definition at line 3301 of file gw_utils.F.

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

◆ power()

subroutine, public gw_utils::power ( complex(kind=dp), dimension(:, :) matrix,
real(kind=dp) exponent,
real(kind=dp) eps,
real(kind=dp), optional cond_nr,
real(kind=dp), optional min_ev,
real(kind=dp), optional max_ev )

...

Parameters
matrix...
exponent...
eps...
cond_nr...
min_ev...
max_ev...

Definition at line 3389 of file gw_utils.F.

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

◆ time_to_freq()

subroutine, public gw_utils::time_to_freq ( type(post_scf_bandstructure_type), pointer bs_env,
real(kind=dp), dimension(:, :, :) sigma_c_n_time,
real(kind=dp), dimension(:, :, :) sigma_c_n_freq,
integer ispin )

...

Parameters
bs_env...
Sigma_c_n_time...
Sigma_c_n_freq...
ispin...

Definition at line 3438 of file gw_utils.F.

Here is the caller graph for this function:

◆ analyt_conti_and_print()

subroutine, public gw_utils::analyt_conti_and_print ( type(post_scf_bandstructure_type), pointer bs_env,
real(kind=dp), dimension(:, :, :) sigma_c_ikp_n_freq,
real(kind=dp), dimension(:) sigma_x_ikp_n,
real(kind=dp), dimension(:) v_xc_ikp_n,
real(kind=dp), dimension(:) eigenval_scf,
integer ikp,
integer ispin )

...

Parameters
bs_env...
Sigma_c_ikp_n_freq...
Sigma_x_ikp_n...
V_xc_ikp_n...
eigenval_scf...
ikp...
ispin...

Definition at line 3501 of file gw_utils.F.

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