![]() |
(git:f2099e5)
|
GW using RI-RS Approximation for molecules. More...
Functions/Subroutines | |
| subroutine, public | gw_calc_ri_rs_non_periodic (qs_env, bs_env) |
| GW calculation using RI-RS formalism for molecules. | |
| subroutine, public | atomic_basis_at_grid_point (bs_env, ri_rs_grid_points, mat_phi_mu_l) |
| Evaluates the AO basis on the RI-RS grid and stores it as the sparse DBCSR matrix ϕ_μl = ϕ_μ(r_l) (rows = grid points in atom-aligned blocks of at most max_elements_per_block points, columns = one block per atom's full AO set). Grid points outside the reach of an atom's most diffuse Gaussian (or the CUTOFF_RADIUS_RL_AO) are skipped, and only blocks with at least one element > eps_filter are stored. This locality is the source of ALL grid-dimension sparsity used downstream. Also caches the atom centers and the per-chunk centroids needed by the optional CUTOFF_RADIUS_G_W / CUTOFF_RADIUS_RL_W operator truncations. | |
| subroutine, public | reserve_blocks_within_radius (matrix, centers, radius) |
| Pre-seeds a square blocked DBCSR matrix with zero blocks only for block pairs whose centers lie within radius, for use with copy_fm_to_dbcsr(keep_sparsity=T) or dbcsr_multiply(retain_sparsity=T). Consumers: the CUTOFF_RADIUS_G_W operator truncation (atom-blocked, centers = atom_centers) and the RT-BSE CUTOFF_RADIUS_W0 truncation of the grid-basis W^0 (grid-blocked, centers = chunk_centroids). | |
GW using RI-RS Approximation for molecules.
| subroutine, public gw_ri_rs_non_periodic::gw_calc_ri_rs_non_periodic | ( | type(qs_environment_type), pointer | qs_env, |
| type(post_scf_bandstructure_type), pointer | bs_env ) |
GW calculation using RI-RS formalism for molecules.
| qs_env | ... |
| bs_env | Band-structure environment containing GW parameters. |
Definition at line 98 of file gw_ri_rs_non_periodic.F.
| subroutine, public gw_ri_rs_non_periodic::atomic_basis_at_grid_point | ( | type(post_scf_bandstructure_type), pointer | bs_env, |
| real(kind=dp), dimension(:, :), intent(inout), allocatable | ri_rs_grid_points, | ||
| type(dbcsr_type), intent(out) | mat_phi_mu_l ) |
Evaluates the AO basis on the RI-RS grid and stores it as the sparse DBCSR matrix ϕ_μl = ϕ_μ(r_l) (rows = grid points in atom-aligned blocks of at most max_elements_per_block points, columns = one block per atom's full AO set). Grid points outside the reach of an atom's most diffuse Gaussian (or the CUTOFF_RADIUS_RL_AO) are skipped, and only blocks with at least one element > eps_filter are stored. This locality is the source of ALL grid-dimension sparsity used downstream. Also caches the atom centers and the per-chunk centroids needed by the optional CUTOFF_RADIUS_G_W / CUTOFF_RADIUS_RL_W operator truncations.
| bs_env | ... |
| ri_rs_grid_points | ... |
| mat_phi_mu_l | ... |
Definition at line 491 of file gw_ri_rs_non_periodic.F.
| subroutine, public gw_ri_rs_non_periodic::reserve_blocks_within_radius | ( | type(dbcsr_type), intent(inout) | matrix, |
| real(kind=dp), dimension(:, :), intent(in) | centers, | ||
| real(kind=dp), intent(in) | radius ) |
Pre-seeds a square blocked DBCSR matrix with zero blocks only for block pairs whose centers lie within radius, for use with copy_fm_to_dbcsr(keep_sparsity=T) or dbcsr_multiply(retain_sparsity=T). Consumers: the CUTOFF_RADIUS_G_W operator truncation (atom-blocked, centers = atom_centers) and the RT-BSE CUTOFF_RADIUS_W0 truncation of the grid-basis W^0 (grid-blocked, centers = chunk_centroids).
| matrix | ... |
| centers | block positions, one column per block row/column of matrix |
| radius | truncation radius, same units as centers (bohr) |
Definition at line 1595 of file gw_ri_rs_non_periodic.F.