1#ifndef _PARALLEL_ORBITALS_H_
2#define _PARALLEL_ORBITALS_H_
43 std::ofstream& ofs_running,
44 std::ofstream& ofs_warning);
67 void set_atomic_trace(
const int* iat2iwt,
const int &nat,
const int &nlocal);
This class packs the basic information of 2D-block-cyclic parallel distribution of an arbitrary matri...
Definition parallel_2d.h:12
int ncol
Definition parallel_2d.h:116
int nrow
local size (nloc = nrow * ncol)
Definition parallel_2d.h:115
Definition parallel_orbitals.h:9
std::vector< int > get_indexes_col() const
Definition parallel_orbitals.cpp:154
long nloc_wfc
ncol_bands*nrow
Definition parallel_orbitals.h:20
int ncol_bands
Definition parallel_orbitals.h:16
const int * iat2iwt_
Definition parallel_orbitals.h:102
int * loc_sizes
Definition parallel_orbitals.h:52
int get_wfc_global_nbasis() const
Definition parallel_orbitals.cpp:41
int get_wfc_global_nbands() const
Definition parallel_orbitals.cpp:32
int nrow_bands
Definition parallel_orbitals.h:17
int loc_size
Definition parallel_orbitals.h:53
int desc_wfc1[9]
Definition parallel_orbitals.h:39
int desc_wfc[9]
Definition parallel_orbitals.h:37
int lastband_number
Definition parallel_orbitals.h:26
int get_nbands() const
Definition parallel_orbitals.cpp:50
void set_desc_wfc_Eij(const int &nbasis, const int &nbands, const int &lld)
set the desc[9] of the 2D-block-cyclic distribution of wavefunction and Eij
Definition parallel_orbitals.cpp:211
int * nlocdim
Definition parallel_orbitals.h:33
Parallel_Orbitals()
Definition parallel_orbitals.cpp:7
int get_col_size() const
dimension getters for 2D-block-cyclic division of Hamiltonian matrix get_col_size() : total number of...
Definition parallel_orbitals.h:76
int nbands
Definition parallel_orbitals.h:83
~Parallel_Orbitals()
Definition parallel_orbitals.cpp:25
int lastband_in_proc
Definition parallel_orbitals.h:25
int get_row_size() const
Definition parallel_orbitals.h:77
std::vector< int > get_indexes_row() const
gather global indexes of orbitals in this processor get_indexes_row() : global indexes (~NLOCAL) of r...
Definition parallel_orbitals.cpp:140
int desc_Eij[9]
Definition parallel_orbitals.h:38
std::vector< int > atom_begin_col
Definition parallel_orbitals.h:100
int set_nloc_wfc_Eij(const int &N_A, std::ofstream &ofs_running, std::ofstream &ofs_warning)
set the local size of wavefunction and Eij
Definition parallel_orbitals.cpp:224
void set_atomic_trace(const int *iat2iwt, const int &nat, const int &nlocal)
set row and col begin index for each atom it should be called after:
Definition parallel_orbitals.cpp:55
std::vector< int > atom_begin_row
Definition parallel_orbitals.h:99
int * nlocstart
Definition parallel_orbitals.h:34
long nloc_Eij
Definition parallel_orbitals.h:23
int nnr
Definition parallel_orbitals.h:32