Octopus
|
The states_elec_t class contains all electronic wave functions. More...
The states_elec_t class contains all electronic wave functions.
and also data, which is derived from the wave functions, e.g. the density currents, etc., but also eigenenergies.
The wave functions, themselves, are stored in groups in the type states_elec_group_oct_m::states_elec_group_t.
Definition at line 226 of file states_elec.F90.
Private Member Functions | |
procedure | nullify => states_elec_null |
procedure | write_info => states_elec_write_info |
write information about the states object More... | |
procedure | pack => states_elec_pack |
pack the batches in this states object More... | |
procedure | unpack => states_elec_unpack |
unpack the batches in this states object More... | |
procedure | set_zero => states_elec_set_zero |
expclicitely set all wave functions in the states to zero More... | |
procedure | dipole => states_elec_calculate_dipole |
calculate the expectation value of the dipole moment of electrons More... | |
Private Attributes | |
type(states_elec_dim_t) | d |
Spin dimensions; also contains k-points and weights. More... | |
integer | nst_conv |
Number of states to be converged for unocc calc. More... | |
logical | only_userdef_istates |
only use user-defined states as initial states in propagation More... | |
type(states_elec_group_t) | group |
Wave function plus blocking data. More... | |
integer | block_size |
number of states per batch, as set by StatesBlockSize input variable More... | |
logical | pack_states |
packing status as requested by StatesPack input variable. More... | |
character(len=1024), dimension(:,:,:), allocatable | user_def_states |
used for the user-defined wavefunctions (they are stored as formula strings) dimensions (st%d%dim, st%nst, st%d%nik) More... | |
real(real64), dimension(:,:), allocatable | rho |
rho, dimension (gr%np_part, st%d%nspin) More... | |
real(real64), dimension(:), allocatable | rho_core |
core charge for nl core corrections More... | |
real(real64), dimension(:, :, :), allocatable | current |
total current, dimension (gr%np_part, space%dim, st%d%nspin) More... | |
real(real64), dimension(:, :, :), allocatable | current_para |
paramagnetic current, dimension (gr%np_part, space%dim, st%d%nspin) More... | |
real(real64), dimension(:, :, :), allocatable | current_dia |
diamagnetic current, dimension (gr%np_part, space%dim, st%d%nspin) More... | |
real(real64), dimension(:, :, :), allocatable | current_mag |
magnetization current, dimension (gr%np_part, space%dim, st%d%nspin) More... | |
real(real64), dimension(:,:,:), allocatable | current_kpt |
k-point resolved current, dimension (grnp spacedim, kpt_start:kpt_end) More... | |
real(real64), dimension(:, :), allocatable | frozen_rho |
frozen density More... | |
real(real64), dimension(:, :), allocatable | frozen_tau |
frozen kinetic energy density More... | |
real(real64), dimension(:,:,:), allocatable | frozen_gdens |
frozen gradient of density More... | |
real(real64), dimension(:,:), allocatable | frozen_ldens |
frozen lapacian of density More... | |
logical | uniform_occ |
.true. if occupations are equal for all states: no empty states, and no smearing More... | |
real(real64), dimension(:,:), allocatable | eigenval |
eigenvalues (st%nst, st%d%nik) More... | |
logical | fixed_occ |
should the occupation numbers be fixed? More... | |
logical | restart_fixed_occ |
should the occupation numbers be fixed by restart? More... | |
logical | restart_reorder_occs |
used for restart with altered occupation numbers More... | |
real(real64), dimension(:,:), allocatable | occ |
the occupation numbers More... | |
real(real64), dimension(:), allocatable | kweights |
weights for the k-point integrations More... | |
integer | nik |
Number of irreducible subspaces. More... | |
logical, private | fixed_spins |
In spinors mode, the spin direction is set for the initial (random) orbitals. More... | |
real(real64), dimension(:, :, :), allocatable | spin |
spin orientations, dimension (1:3, 1:st%nst, 1:st%d%nik) More... | |
real(real64) | qtot |
(-) The total charge in the system (used in Fermi) More... | |
real(real64) | val_charge |
valence charge More... | |
type(stress_t) | stress_tensors |
logical | fromscratch |
type(smear_t) | smear |
smearing of the electronic occupations More... | |
type(modelmb_particle_t) | modelmbparticles |
integer, dimension(:,:), allocatable | mmb_nspindown |
number of down spins in the selected Young diagram for each type and state More... | |
integer, dimension(:,:), allocatable | mmb_iyoung |
index of the selected Young diagram for each type and state More... | |
real(real64), dimension(:), allocatable | mmb_proj |
projection of the state onto the chosen Young diagram More... | |
logical | parallel_in_states = .false. |
Am I parallel in states? More... | |
type(mpi_grp_t) | mpi_grp |
The MPI group related to the parallelization in states. More... | |
type(mpi_grp_t) | dom_st_mpi_grp |
The MPI group related to the domains-states "plane". More... | |
type(mpi_grp_t) | st_kpt_mpi_grp |
The MPI group related to the states-kpoints "plane". More... | |
type(mpi_grp_t) | dom_st_kpt_mpi_grp |
The MPI group related to the domains-states-kpoints "cube". More... | |
type(blacs_proc_grid_t) | dom_st_proc_grid |
The BLACS process grid for the domains-states plane. More... | |
type(distributed_t) | dist |
states distribution over processes More... | |
logical | scalapack_compatible |
Whether the states parallelization uses ScaLAPACK layout. More... | |
integer | lnst |
Number of states on local process. More... | |
integer | st_start |
integer | st_end |
Range of states processed by local process. More... | |
integer, dimension(:), allocatable | node |
To which node belongs each state. More... | |
integer, dimension(:,:), allocatable | st_kpt_task |
For a given task, what are kpt and st start/end. More... | |
type(multicomm_all_pairs_t), private | ap |
All-pairs schedule. More... | |
logical | symmetrize_density |
integer | randomization |
Method used to generate random states. More... | |
integer | orth_method = 0 |
orthogonalization as requested by StatesOrthogonalization More... | |
real(real64) | cl_states_mem |
Additional Inherited Members | |
Public Attributes inherited from states_abst_oct_m::states_abst_t | |
type(type_t), public | wfs_type |
real (TYPE_FLOAT) or complex (TYPE_CMPLX) wavefunctions More... | |
integer, public | nst |
Number of states in each irreducible subspace. More... | |
logical, public | packed |
status of the batches More... | |
|
private |
Definition at line 324 of file states_elec.F90.
|
private |
write information about the states object
Definition at line 325 of file states_elec.F90.
|
private |
pack the batches in this states object
Definition at line 326 of file states_elec.F90.
|
private |
unpack the batches in this states object
Definition at line 327 of file states_elec.F90.
|
private |
expclicitely set all wave functions in the states to zero
Definition at line 328 of file states_elec.F90.
|
private |
calculate the expectation value of the dipole moment of electrons
Definition at line 329 of file states_elec.F90.
|
private |
Spin dimensions; also contains k-points and weights.
Definition at line 228 of file states_elec.F90.
|
private |
Number of states to be converged for unocc calc.
Definition at line 229 of file states_elec.F90.
|
private |
only use user-defined states as initial states in propagation
Definition at line 231 of file states_elec.F90.
|
private |
Wave function plus blocking data.
Definition at line 233 of file states_elec.F90.
|
private |
number of states per batch, as set by StatesBlockSize input variable
The value is limited by the actual number of states.
Definition at line 234 of file states_elec.F90.
|
private |
packing status as requested by StatesPack input variable.
set in states_elec_oct_m::states_elec_init. This does not represent the actual status, but whether states should be packed.
Definition at line 238 of file states_elec.F90.
|
private |
used for the user-defined wavefunctions (they are stored as formula strings) dimensions (st%d%dim, st%nst, st%d%nik)
Definition at line 244 of file states_elec.F90.
|
private |
rho, dimension (gr%np_part, st%d%nspin)
Definition at line 250 of file states_elec.F90.
|
private |
core charge for nl core corrections
Definition at line 251 of file states_elec.F90.
|
private |
total current, dimension (gr%np_part, space%dim, st%d%nspin)
Definition at line 253 of file states_elec.F90.
|
private |
paramagnetic current, dimension (gr%np_part, space%dim, st%d%nspin)
Definition at line 254 of file states_elec.F90.
|
private |
diamagnetic current, dimension (gr%np_part, space%dim, st%d%nspin)
Definition at line 255 of file states_elec.F90.
|
private |
magnetization current, dimension (gr%np_part, space%dim, st%d%nspin)
Definition at line 256 of file states_elec.F90.
|
private |
k-point resolved current, dimension (grnp spacedim, kpt_start:kpt_end)
Definition at line 257 of file states_elec.F90.
|
private |
frozen density
Definition at line 262 of file states_elec.F90.
|
private |
frozen kinetic energy density
Definition at line 263 of file states_elec.F90.
|
private |
frozen gradient of density
Definition at line 264 of file states_elec.F90.
|
private |
frozen lapacian of density
Definition at line 265 of file states_elec.F90.
|
private |
.true. if occupations are equal for all states: no empty states, and no smearing
Definition at line 267 of file states_elec.F90.
|
private |
eigenvalues (st%nst, st%d%nik)
Definition at line 269 of file states_elec.F90.
|
private |
should the occupation numbers be fixed?
Definition at line 270 of file states_elec.F90.
|
private |
should the occupation numbers be fixed by restart?
Definition at line 271 of file states_elec.F90.
|
private |
used for restart with altered occupation numbers
Definition at line 272 of file states_elec.F90.
|
private |
the occupation numbers
Definition at line 273 of file states_elec.F90.
|
private |
weights for the k-point integrations
Definition at line 274 of file states_elec.F90.
|
private |
Number of irreducible subspaces.
Definition at line 275 of file states_elec.F90.
|
private |
In spinors mode, the spin direction is set for the initial (random) orbitals.
Definition at line 277 of file states_elec.F90.
|
private |
spin orientations, dimension (1:3, 1:st%nst, 1:st%d%nik)
Definition at line 279 of file states_elec.F90.
|
private |
(-) The total charge in the system (used in Fermi)
Definition at line 281 of file states_elec.F90.
|
private |
valence charge
Definition at line 282 of file states_elec.F90.
|
private |
Definition at line 284 of file states_elec.F90.
|
private |
Definition at line 286 of file states_elec.F90.
|
private |
smearing of the electronic occupations
Definition at line 287 of file states_elec.F90.
|
private |
Definition at line 290 of file states_elec.F90.
|
private |
number of down spins in the selected Young diagram for each type and state
Definition at line 291 of file states_elec.F90.
|
private |
index of the selected Young diagram for each type and state
Definition at line 292 of file states_elec.F90.
|
private |
projection of the state onto the chosen Young diagram
Definition at line 293 of file states_elec.F90.
|
private |
Am I parallel in states?
Definition at line 295 of file states_elec.F90.
|
private |
The MPI group related to the parallelization in states.
Definition at line 299 of file states_elec.F90.
|
private |
The MPI group related to the domains-states "plane".
Definition at line 300 of file states_elec.F90.
|
private |
The MPI group related to the states-kpoints "plane".
Definition at line 301 of file states_elec.F90.
|
private |
The MPI group related to the domains-states-kpoints "cube".
Definition at line 302 of file states_elec.F90.
|
private |
The BLACS process grid for the domains-states plane.
Definition at line 303 of file states_elec.F90.
|
private |
states distribution over processes
Definition at line 305 of file states_elec.F90.
|
private |
Whether the states parallelization uses ScaLAPACK layout.
Definition at line 306 of file states_elec.F90.
|
private |
Number of states on local process.
Definition at line 309 of file states_elec.F90.
|
private |
Definition at line 310 of file states_elec.F90.
|
private |
Range of states processed by local process.
Definition at line 310 of file states_elec.F90.
|
private |
To which node belongs each state.
Definition at line 311 of file states_elec.F90.
|
private |
For a given task, what are kpt and st start/end.
Definition at line 314 of file states_elec.F90.
|
private |
All-pairs schedule.
Definition at line 316 of file states_elec.F90.
|
private |
Definition at line 317 of file states_elec.F90.
|
private |
Method used to generate random states.
Definition at line 318 of file states_elec.F90.
|
private |
orthogonalization as requested by StatesOrthogonalization
Definition at line 319 of file states_elec.F90.
|
private |
Definition at line 321 of file states_elec.F90.