![]() |
Octopus
|
Group of electronic states. More...
Group of electronic states.
This class represents a group of batches of wave functions. It contains groups of blocks (batches) electronic states, represented by wfs_elec_oct_m::wfs_elec_t, together with the meta-data how these blocks are organized.
Each block contains wave functions with the same k point. The blocks can be distributed over nodes, when using state parallelization.
Definition at line 146 of file states_elec_group.F90.
Private Attributes | |
| type(wfs_elec_t), dimension(:, :), allocatable | psib |
| An array of wave-functions blocks (batches) More... | |
| integer | nblocks |
| The total number of blocks (across nodes) More... | |
| integer | block_start |
| The lowest index of local blocks. More... | |
| integer | block_end |
| The highest index of local blocks. More... | |
| integer, dimension(:), allocatable | iblock |
| A map, that for each state index returns the index of block containing it. More... | |
| integer, dimension(:, :), allocatable | block_range |
| Each block contains states from block_range(:, 1) to block_range(:, 2) More... | |
| integer, dimension(:), allocatable | block_size |
| The number of states in each block. More... | |
| logical, dimension(:, :), allocatable | block_is_local |
| It is true if the block (ist, ik) is in this node. More... | |
| integer, dimension(:,:), allocatable | block_node |
| The node that contains each block. More... | |
| type(mpi_win), dimension(:, :), allocatable | rma_win |
| The MPI window handle for for block (ist, ik) for one sided communication. More... | |
| logical | block_initialized = .false. |
| For keeping track of the blocks to avoid memory leaks. More... | |
|
private |
An array of wave-functions blocks (batches)
Definition at line 148 of file states_elec_group.F90.
|
private |
The total number of blocks (across nodes)
Definition at line 149 of file states_elec_group.F90.
|
private |
The lowest index of local blocks.
Definition at line 150 of file states_elec_group.F90.
|
private |
The highest index of local blocks.
Definition at line 151 of file states_elec_group.F90.
|
private |
A map, that for each state index returns the index of block containing it.
Definition at line 152 of file states_elec_group.F90.
|
private |
Each block contains states from block_range(:, 1) to block_range(:, 2)
Definition at line 153 of file states_elec_group.F90.
|
private |
The number of states in each block.
Definition at line 154 of file states_elec_group.F90.
|
private |
It is true if the block (ist, ik) is in this node.
Definition at line 155 of file states_elec_group.F90.
|
private |
The node that contains each block.
Definition at line 156 of file states_elec_group.F90.
|
private |
The MPI window handle for for block (ist, ik) for one sided communication.
Definition at line 157 of file states_elec_group.F90.
|
private |
For keeping track of the blocks to avoid memory leaks.
Definition at line 159 of file states_elec_group.F90.