(git:cdd058b)
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, force_env, linearized)
 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(force_env_type), pointer force_env,
logical, optional linearized )

Allocates structures and prepares rtbse_env for run.

Parameters
rtbse_envrtbse_env_type that is initialised
force_envForce environment - entry point of the calculation
linearizedOptional; when present and .TRUE., configure the environment for the linearized RT-BSE path
Author
Stepan Marek
Date
02.2024

Definition at line 377 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 865 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 1114 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 1237 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 1291 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 1340 of file rt_bse_types.F.

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