![]() |
(git:5f3bc36)
|
Data Types | |
| type | tddfpt_subgroup_env_type |
| Parallel (sub)group environment. More... | |
Functions/Subroutines | |
| subroutine, public | tddfpt_sub_env_init (sub_env, qs_env, mos_occ, kernel) |
| Split MPI communicator to create a set of parallel (sub)groups. | |
| subroutine, public | tddfpt_sub_env_release (sub_env) |
| Release parallel group environment. | |
| subroutine, public | tddfpt_dbcsr_create_by_dist (matrix, template, dbcsr_dist, sab) |
| Create a DBCSR matrix based on a template matrix, distribution object, and the list of neighbours. | |
| subroutine, public | tddfpt_fm_replicate_across_subgroups (fm_src, fm_dest_sub, sub_env) |
| Replicate a globally distributed matrix across all sub-groups. At the end every sub-group will hold a local copy of the original globally distributed matrix. | |
| subroutine, public qs_tddfpt2_subgroups::tddfpt_sub_env_init | ( | type(tddfpt_subgroup_env_type), intent(out) | sub_env, |
| type(qs_environment_type), pointer | qs_env, | ||
| type(cp_fm_type), dimension(:), intent(in) | mos_occ, | ||
| integer, intent(in) | kernel | ||
| ) |
Split MPI communicator to create a set of parallel (sub)groups.
| sub_env | parallel group environment (initialised on exit) |
| qs_env | Quickstep environment |
| mos_occ | ground state molecular orbitals in primary atomic basis set |
| kernel | Type of kernel (full/sTDA) that will be used |
Definition at line 179 of file qs_tddfpt2_subgroups.F.
| subroutine, public qs_tddfpt2_subgroups::tddfpt_sub_env_release | ( | type(tddfpt_subgroup_env_type), intent(inout) | sub_env | ) |
Release parallel group environment.
| sub_env | parallel group environment (modified on exit) |
Definition at line 414 of file qs_tddfpt2_subgroups.F.
| subroutine, public qs_tddfpt2_subgroups::tddfpt_dbcsr_create_by_dist | ( | type(dbcsr_type), pointer | matrix, |
| type(dbcsr_type), pointer | template, | ||
| type(dbcsr_distribution_type), pointer | dbcsr_dist, | ||
| type(neighbor_list_set_p_type), dimension(:), pointer | sab | ||
| ) |
Create a DBCSR matrix based on a template matrix, distribution object, and the list of neighbours.
| matrix | matrix to create |
| template | template matrix |
| dbcsr_dist | DBCSR distribution |
| sab | list of neighbours |
Definition at line 747 of file qs_tddfpt2_subgroups.F.
| subroutine, public qs_tddfpt2_subgroups::tddfpt_fm_replicate_across_subgroups | ( | type(cp_fm_type), intent(in) | fm_src, |
| type(cp_fm_type), intent(in) | fm_dest_sub, | ||
| type(tddfpt_subgroup_env_type), intent(in) | sub_env | ||
| ) |
Replicate a globally distributed matrix across all sub-groups. At the end every sub-group will hold a local copy of the original globally distributed matrix.
|--------------------|
fm_src | 0 1 2 3 |
|--------------------|
/ MPI ranks \
|/_ _\|
|--------------------| |--------------------|
fm_dest_subgroup0 | 0 1 | | 2 3 | fm_dest_subgroup1 |-----------------—| |-----------------—| subgroup 0 subgroup 1
| fm_src | globally distributed matrix to replicate |
| fm_dest_sub | subgroup-specific copy of the replicated matrix |
| sub_env | subgroup environment |
Definition at line 800 of file qs_tddfpt2_subgroups.F.