(git:b77b4be)
Loading...
Searching...
No Matches
rt_bse_types Module Reference

Data storage and other types for propagation via RT-BSE method. More...

Data Types

type  rtbse_env_type
 

Functions/Subroutines

subroutine, public create_rtbse_env (rtbse_env, qs_env, force_env)
 Allocates structures and prepares rtbse_env for run.
 
subroutine, public release_rtbse_env (rtbse_env)
 Releases the environment allocated structures.
 
subroutine, public create_hartree_ri_3c (rho_dbcsr, int_3c, n_ao, n_ri, basis_set_ao, basis_set_ri, i_ri_start_from_atom, ri_metric, qs_env, unit_nr)
 Separated method for allocating the 3c integrals for RI Hartree.
 
subroutine, public create_sigma_workspace_qs_only (qs_env, screened_dbt, screened_dbcsr, int_3c_dbt, work_dbt_3c_1, work_dbt_3c_2, work_dbt_2c)
 Allocates the workspaces for self-energy determination routine.
 
subroutine, public multiply_fm_cfm (trans_r, trans_c, na, nb, nc, alpha, matrix_r, matrix_c, beta, res)
 Multiplies real matrix by a complex matrix from the right.
 
subroutine, public multiply_cfm_fm (trans_c, trans_r, na, nb, nc, alpha, matrix_c, matrix_r, beta, res)
 Multiplies complex matrix by a real matrix from the right.
 

Detailed Description

Data storage and other types for propagation via RT-BSE method.

Author
Stepan Marek (01.24)

Function/Subroutine Documentation

◆ create_rtbse_env()

subroutine, public rt_bse_types::create_rtbse_env ( type(rtbse_env_type), pointer  rtbse_env,
type(qs_environment_type), pointer  qs_env,
type(force_env_type), pointer  force_env 
)

Allocates structures and prepares rtbse_env for run.

Parameters
rtbse_envrtbse_env_type that is initialised
qs_envEntry point of the calculation
Author
Stepan Marek
Date
02.2024

Definition at line 280 of file rt_bse_types.F.

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

◆ release_rtbse_env()

subroutine, public rt_bse_types::release_rtbse_env ( type(rtbse_env_type), pointer  rtbse_env)

Releases the environment allocated structures.

Parameters
rtbse_env
Author
Stepan Marek
Date
02.2024

Definition at line 588 of file rt_bse_types.F.

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

◆ create_hartree_ri_3c()

subroutine, public rt_bse_types::create_hartree_ri_3c ( type(dbcsr_type rho_dbcsr,
real(kind=dp), dimension(:, :, :), pointer  int_3c,
integer  n_ao,
integer  n_ri,
type(gto_basis_set_p_type), dimension(:)  basis_set_ao,
type(gto_basis_set_p_type), dimension(:)  basis_set_ri,
integer, dimension(:)  i_ri_start_from_atom,
type(libint_potential_type ri_metric,
type(qs_environment_type), pointer  qs_env,
integer  unit_nr 
)

Separated method for allocating the 3c integrals for RI Hartree.

Note
RI method calculates the Hartree contraction without the use of DBT, as it cannot emulate vectors
Parameters
rho_dbcsrmatrix used for the description of shape of 3c array
int_3c3-center integral array to be allocated and filled
n_aoNumber of atomic orbitals
n_RINumber of auxiliary RI orbitals
basis_set_AOAO basis set
basis_set_RIRI auxiliary basis set
i_RI_start_from_atomArray of indices where functions of a given atom in RI basis start
unit_nrUnit number used for printing information about the size of int_3c
Author
Stepan Marek
Date
01.2025

Definition at line 674 of file rt_bse_types.F.

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

◆ create_sigma_workspace_qs_only()

subroutine, public rt_bse_types::create_sigma_workspace_qs_only ( type(qs_environment_type), pointer  qs_env,
type(dbt_type screened_dbt,
type(dbcsr_type screened_dbcsr,
type(dbt_type int_3c_dbt,
type(dbt_type work_dbt_3c_1,
type(dbt_type work_dbt_3c_2,
type(dbt_type work_dbt_2c 
)

Allocates the workspaces for self-energy determination routine.

Note
Does so without referencing the rtbse_env
References bs_env
Parameters
rtbse_envStructure for holding information and workspace structures
qs_envQuickstep environment - entry point of calculation
Author
Stepan Marek
Date
02.2024

Definition at line 793 of file rt_bse_types.F.

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

◆ multiply_fm_cfm()

subroutine, public rt_bse_types::multiply_fm_cfm ( character(len=1)  trans_r,
character(len=1)  trans_c,
integer  na,
integer  nb,
integer  nc,
real(kind=dp)  alpha,
type(cp_fm_type matrix_r,
type(cp_cfm_type matrix_c,
real(kind=dp)  beta,
type(cp_cfm_type res 
)

Multiplies real matrix by a complex matrix from the right.

Note
So far only converts the real matrix to complex one, potentially doubling the work
Parameters
rtbse_env
Author
Stepan Marek
Date
09.2024

Definition at line 844 of file rt_bse_types.F.

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

◆ multiply_cfm_fm()

subroutine, public rt_bse_types::multiply_cfm_fm ( character(len=1)  trans_c,
character(len=1)  trans_r,
integer  na,
integer  nb,
integer  nc,
real(kind=dp)  alpha,
type(cp_cfm_type matrix_c,
type(cp_fm_type matrix_r,
real(kind=dp)  beta,
type(cp_cfm_type res 
)

Multiplies complex matrix by a real matrix from the right.

Note
So far only converts the real matrix to complex one, potentially doubling the work
Parameters
rtbse_env
Author
Stepan Marek
Date
09.2024

Definition at line 893 of file rt_bse_types.F.

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