(git:6a2e663)
kpoint_types Module Reference

Types and basic routines needed for a kpoint calculation. More...

Functions/Subroutines

subroutine, public kpoint_create (kpoint)
 Create a kpoint environment. More...
 
subroutine, public kpoint_release (kpoint)
 Release a kpoint environment, deallocate all data. More...
 
subroutine, public get_kpoint_info (kpoint, kp_scheme, nkp_grid, kp_shift, symmetry, verbose, full_grid, use_real_wfn, eps_geo, parallel_group_size, kp_range, nkp, xkp, wkp, para_env, blacs_env_all, para_env_kp, para_env_inter_kp, blacs_env, kp_env, kp_aux_env, mpools, iogrp, nkp_groups, kp_dist, cell_to_index, index_to_cell, sab_nl, sab_nl_nosym)
 Retrieve information from a kpoint environment. More...
 
subroutine, public set_kpoint_info (kpoint, kp_scheme, nkp_grid, kp_shift, symmetry, verbose, full_grid, use_real_wfn, eps_geo, parallel_group_size, kp_range, nkp, xkp, wkp, para_env, blacs_env_all, para_env_kp, para_env_inter_kp, blacs_env, kp_env, kp_aux_env, mpools, iogrp, nkp_groups, kp_dist, cell_to_index, index_to_cell, sab_nl, sab_nl_nosym)
 Set information in a kpoint environment. More...
 
subroutine, public read_kpoint_section (kpoint, kpoint_section, a_vec)
 Read the kpoint input section. More...
 
subroutine, public write_kpoint_info (kpoint, dft_section)
 Write information on the kpoints to output. More...
 
subroutine, public kpoint_env_create (kp_env)
 Create a single kpoint environment. More...
 
subroutine, public get_kpoint_env (kpoint_env, nkpoint, wkp, xkp, is_local, mos)
 Get information from a single kpoint environment. More...
 
subroutine, public kpoint_sym_create (kp_sym)
 Create a single kpoint symmetry environment. More...
 

Detailed Description

Types and basic routines needed for a kpoint calculation.

History
2014.07 created [JGH] 2014.11 unified k-point and gamma-point code [Ole Schuett]
Author
JGH

Function/Subroutine Documentation

◆ kpoint_create()

subroutine, public kpoint_types::kpoint_create ( type(kpoint_type), pointer  kpoint)

Create a kpoint environment.

Parameters
kpointAll the kpoint information
Author
JGH

Definition at line 187 of file kpoint_types.F.

Here is the caller graph for this function:

◆ kpoint_release()

subroutine, public kpoint_types::kpoint_release ( type(kpoint_type), pointer  kpoint)

Release a kpoint environment, deallocate all data.

Parameters
kpointThe kpoint environment
Author
JGH

Definition at line 233 of file kpoint_types.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_kpoint_info()

subroutine, public kpoint_types::get_kpoint_info ( type(kpoint_type), intent(in)  kpoint,
character(len=*), optional  kp_scheme,
integer, dimension(3), optional  nkp_grid,
real(kind=dp), dimension(3), optional  kp_shift,
logical, optional  symmetry,
logical, optional  verbose,
logical, optional  full_grid,
logical, optional  use_real_wfn,
real(kind=dp), optional  eps_geo,
integer, optional  parallel_group_size,
integer, dimension(2), optional  kp_range,
integer, optional  nkp,
real(kind=dp), dimension(:, :), optional, pointer  xkp,
real(kind=dp), dimension(:), optional, pointer  wkp,
type(mp_para_env_type), optional, pointer  para_env,
type(cp_blacs_env_type), optional, pointer  blacs_env_all,
type(mp_para_env_type), optional, pointer  para_env_kp,
type(mp_para_env_type), optional, pointer  para_env_inter_kp,
type(cp_blacs_env_type), optional, pointer  blacs_env,
type(kpoint_env_p_type), dimension(:), optional, pointer  kp_env,
type(kpoint_env_p_type), dimension(:), optional, pointer  kp_aux_env,
type(qs_matrix_pools_type), optional, pointer  mpools,
logical, optional  iogrp,
integer, optional  nkp_groups,
integer, dimension(:, :), optional, pointer  kp_dist,
integer, dimension(:, :, :), optional, pointer  cell_to_index,
integer, dimension(:, :), optional, pointer  index_to_cell,
type(neighbor_list_set_p_type), dimension(:), optional, pointer  sab_nl,
type(neighbor_list_set_p_type), dimension(:), optional, pointer  sab_nl_nosym 
)

Retrieve information from a kpoint environment.

Parameters
kpointThe kpoint environment
kp_schemeType of kpoint grid
nkp_gridGrid points
kp_shiftShift of the grid
symmetryuse symmetry (atoms) to reduce kpoints
verbosemore output information
full_griddon't reduce kpoints at all
use_real_wfnreal/complex wfn
eps_geoaccuracy of atom symmetry detection
parallel_group_sizekpoint group size
kp_rangekpoints distribution for local processor
nkpnumber of kpoints
xkpkpoint coordinates in units of b-vector
wkpkpoint weights
para_env'global' parallel environment
blacs_env_allBLACS env for the total environment
para_env_kpparallel environment of the kpoint calculation
para_env_inter_kpparallel environment between kpoints
blacs_envBLACS env for the kpoint group
kp_envInformation for each kpoint
kp_aux_env...
mpoolsFM matrix pools for kpoint groups
iogrpthis kpoint group has the IO processor
nkp_groupsnumber of kpoint groups
kp_distkpoints distribution on groups
cell_to_indexgiven a cell triple, returns the real space index
index_to_cell...
sab_nlneighbourlist that defines real space matrices
sab_nl_nosymneighbourlist that defines real space matrices, non-symmetric
Author
JGH

Definition at line 328 of file kpoint_types.F.

◆ set_kpoint_info()

subroutine, public kpoint_types::set_kpoint_info ( type(kpoint_type), intent(inout)  kpoint,
character(len=*), optional  kp_scheme,
integer, dimension(3), optional  nkp_grid,
real(kind=dp), dimension(3), optional  kp_shift,
logical, optional  symmetry,
logical, optional  verbose,
logical, optional  full_grid,
logical, optional  use_real_wfn,
real(kind=dp), optional  eps_geo,
integer, optional  parallel_group_size,
integer, dimension(2), optional  kp_range,
integer, optional  nkp,
real(kind=dp), dimension(:, :), optional, pointer  xkp,
real(kind=dp), dimension(:), optional, pointer  wkp,
type(mp_para_env_type), optional, pointer  para_env,
type(cp_blacs_env_type), optional, pointer  blacs_env_all,
type(mp_para_env_type), optional, pointer  para_env_kp,
type(mp_para_env_type), optional, pointer  para_env_inter_kp,
type(cp_blacs_env_type), optional, pointer  blacs_env,
type(kpoint_env_p_type), dimension(:), optional, pointer  kp_env,
type(kpoint_env_p_type), dimension(:), optional, pointer  kp_aux_env,
type(qs_matrix_pools_type), optional, pointer  mpools,
logical, optional  iogrp,
integer, optional  nkp_groups,
integer, dimension(:, :), optional, pointer  kp_dist,
integer, dimension(:, :, :), optional, pointer  cell_to_index,
integer, dimension(:, :), optional, pointer  index_to_cell,
type(neighbor_list_set_p_type), dimension(:), optional, pointer  sab_nl,
type(neighbor_list_set_p_type), dimension(:), optional, pointer  sab_nl_nosym 
)

Set information in a kpoint environment.

Parameters
kpointThe kpoint environment
kp_schemeType of kpoint grid
nkp_gridGrid points
kp_shiftShift of the grid
symmetryuse symmetry (atoms) to reduce kpoints
verbosemore output information
full_griddon't reduce kpoints at all
use_real_wfnreal/complex wfn
eps_geoaccuracy of atom symmetry detection
parallel_group_sizekpoint group size
kp_rangekpoints distribution for local processor
nkpnumber of kpoints
xkpkpoint coordinates
wkpkpoint weights
para_env'global' parallel environment
blacs_env_allBLACS env for the total environment
para_env_kpparallel environment of the kpoint calculation
para_env_inter_kpparallel environment between kpoints
blacs_envBLACS env for the kpoint group
kp_envInformation for each kpoint
kp_aux_env...
mpoolsFM matrix pools for kpoint groups
iogrpthis kpoint group has the IO processor
nkp_groupsnumber of kpoint groups
kp_distkpoints distribution on groups
cell_to_indexgiven a cell triple, returns the real space index
index_to_cell...
sab_nlneighbourlist that defines real space matrices
sab_nl_nosymneighbourlist that defines real space matrices
Author
JGH

Definition at line 429 of file kpoint_types.F.

Here is the caller graph for this function:

◆ read_kpoint_section()

subroutine, public kpoint_types::read_kpoint_section ( type(kpoint_type), intent(inout)  kpoint,
type(section_vals_type), pointer  kpoint_section,
real(kind=dp), dimension(3, 3), intent(in)  a_vec 
)

Read the kpoint input section.

Parameters
kpointThe kpoint environment
kpoint_sectionThe input section
a_vec...
Author
JGH

Definition at line 511 of file kpoint_types.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ write_kpoint_info()

subroutine, public kpoint_types::write_kpoint_info ( type(kpoint_type), intent(in)  kpoint,
type(section_vals_type), intent(in)  dft_section 
)

Write information on the kpoints to output.

Parameters
kpointThe kpoint environment
dft_sectionDFT section information
Author
JGH

Definition at line 613 of file kpoint_types.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ kpoint_env_create()

subroutine, public kpoint_types::kpoint_env_create ( type(kpoint_env_type), pointer  kp_env)

Create a single kpoint environment.

Parameters
kp_envSingle kpoint environment
Author
JGH

Definition at line 684 of file kpoint_types.F.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_kpoint_env()

subroutine, public kpoint_types::get_kpoint_env ( type(kpoint_env_type), intent(in)  kpoint_env,
integer, optional  nkpoint,
real(kind=dp), optional  wkp,
real(kind=dp), dimension(3), optional  xkp,
logical, optional  is_local,
type(mo_set_type), dimension(:, :), optional, pointer  mos 
)

Get information from a single kpoint environment.

Parameters
kpoint_envSingle kpoint environment
nkpointIndex of kpoint
wkpWeight of kpoint
xkpCoordinates of kpoint
is_localIs this kpoint local (single cpu group)
mosMOs of this kpoint
Author
JGH

Definition at line 746 of file kpoint_types.F.

Here is the caller graph for this function:

◆ kpoint_sym_create()

subroutine, public kpoint_types::kpoint_sym_create ( type(kpoint_sym_type), pointer  kp_sym)

Create a single kpoint symmetry environment.

Parameters
kp_sym...
Author
JGH

Definition at line 768 of file kpoint_types.F.

Here is the caller graph for this function: