Octopus
|
batches of electronic states More...
batches of electronic states
This class extends the abstract batch class (batch_oct_m::batch_t) by adding information on the k-point, and whether the phase is included.
Definition at line 138 of file wfs_elec.F90.
Public Attributes | |
integer, public | ik |
index of the k-point for this set of wave functions More... | |
logical, public | has_phase |
the stored wave functions include the phase More... | |
Public Attributes inherited from batch_oct_m::batch_t | |
integer, public | nst |
number of functions in the batch More... | |
integer, public | dim |
Spinor dimension of the state (one, or two for spinors) More... | |
integer, dimension(:), allocatable, public | ist |
map from an global to local index More... | |
integer, public | nst_linear |
nst_linear = nst * stddim More... | |
real(real64), dimension(:, :, :), pointer, public, contiguous | dff |
pointer to real mesh functions: indices are (1:np, 1:dim, 1:nst) More... | |
complex(real64), dimension(:, :, :), pointer, public, contiguous | zff |
pointer to complex mesh functions: indices are (1:np, 1:dim, 1:nst) More... | |
real(real64), dimension(:, :), pointer, public, contiguous | dff_linear |
pointer to real mesh functions: indices are (1:np, 1:nst_linear) More... | |
complex(real64), dimension(:, :), pointer, public, contiguous | zff_linear |
pointer to complex mesh functions: indices are (1:np, 1:nst_linear) More... | |
real(real64), dimension(:, :), pointer, public, contiguous | dff_pack |
pointer to real mesh functions: indices are (1:nst_linear, 1:np) More... | |
complex(real64), dimension(:, :), pointer, public, contiguous | zff_pack |
pointer to complex mesh functions: indices are (1:nst_linear, 1:np) More... | |
integer(int64), dimension(1:2), public | pack_size |
pack_size = [pad_pow2(nst_linear), np] (see math_oct_m::pad_pow2) More... | |
integer(int64), dimension(1:2), public | pack_size_real |
pack_size_real = pack_size; if batch type is complex, then pack_size_real(1) = 2*pack_size(1) More... | |
type(accel_mem_t), public | ff_device |
pointer to device memory More... | |
Private Member Functions | |
procedure | clone_to => wfs_elec_clone_to |
clone to another wfs_elec_t object More... | |
procedure | clone_to_array => wfs_elec_clone_to_array |
clone the data to multipe wfs_elec_t objects More... | |
procedure | copy_to => wfs_elec_copy_to |
copy the data of teh contained batch to another (existing) wfs_elec_t object More... | |
procedure | check_compatibility_with => wfs_elec_check_compatibility_with |
check whether the object is compatible with a target object More... | |
procedure | end => wfs_elec_end |
finalze the object and the contained batch More... | |
|
private |
clone to another wfs_elec_t object
[in] | this | source data |
[out] | dest | destination (currently only wfs_elec_t) |
[in] | pack | optional flag whether to pack |
[in] | copy_data | optional flag whether to copy the data (deep copy) |
[in] | new_np | optional number of points to copy |
Definition at line 149 of file wfs_elec.F90.
|
private |
clone the data to multipe wfs_elec_t objects
[in] | this | source |
[out] | dest | multiple destinations; dimension (1:n_batches) |
[in] | n_batches | number of batches to create |
[in] | pack | optional flag whether to pack |
[in] | copy_data | optional flag whether to copy the data (deep copy) |
Definition at line 150 of file wfs_elec.F90.
|
private |
copy the data of teh contained batch to another (existing) wfs_elec_t object
[in] | this | source |
[out] | dest | destination (currently only wfs_elec_t) |
[in] | pack | optional flag whether to pack |
[in] | copy_data | optional flag whether to copy the data (deep copy) |
[in] | new_np | optional number of points to copy |
[in] | special | allocate on GPU if needed |
Definition at line 151 of file wfs_elec.F90.
|
private |
check whether the object is compatible with a target object
Compatibility here means that k-point and phase information agree, as well as the dimensions and optionally the data type
Definition at line 152 of file wfs_elec.F90.
|
private |
finalze the object and the contained batch
[in,out] | this | object to finalize |
[in] | copy | copy the data back to the external memory, used to initialize the batch |
Definition at line 153 of file wfs_elec.F90.
integer, public wfs_elec_oct_m::wfs_elec_t::ik |
index of the k-point for this set of wave functions
The kpoints themselves are stored in as kpoints_oct_m::kpoints_t in hamiltonian_elec_oct_m::hamiltonian_elec_t::kpoints
Definition at line 140 of file wfs_elec.F90.
logical, public wfs_elec_oct_m::wfs_elec_t::has_phase |
the stored wave functions include the phase
A more detailed description of the phases is given in hamiltonian_elec_base_oct_m::hamiltonian_elec_base_t
Definition at line 144 of file wfs_elec.F90.