(git:6a2e663)
kpoint_methods Module Reference

Routines needed for kpoint calculation. More...

Functions/Subroutines

subroutine, public kpoint_initialize (kpoint, particle_set, cell)
 Generate the kpoints and initialize the kpoint environment. More...
 
subroutine, public kpoint_env_initialize (kpoint, para_env, blacs_env, with_aux_fit)
 Initialize the kpoint environment. More...
 
subroutine, public kpoint_initialize_mos (kpoint, mos, added_mos, for_aux_fit)
 Initialize a set of MOs and density matrix for each kpoint (kpoint group) More...
 
subroutine, public kpoint_initialize_mo_set (kpoint)
 ... More...
 
subroutine, public kpoint_init_cell_index (kpoint, sab_nl, para_env, dft_control)
 Generates the mapping of cell indices and linear RS index CELL (0,0,0) is always mapped to index 1. More...
 
subroutine, public rskp_transform (rmatrix, cmatrix, rsmat, ispin, xkp, cell_to_index, sab_nl, is_complex, rs_sign)
 Transformation of real space matrices to a kpoint. More...
 
subroutine, public kpoint_set_mo_occupation (kpoint, smear)
 Given the eigenvalues of all kpoints, calculates the occupation numbers. More...
 
subroutine, public kpoint_density_matrices (kpoint, energy_weighted, for_aux_fit)
 Calculate kpoint density matrices (rho(k), owned by kpoint groups) More...
 
subroutine, public kpoint_density_transform (kpoint, denmat, wtype, tempmat, sab_nl, fmwork, for_aux_fit, pmat_ext)
 generate real space density matrices in DBCSR format More...
 

Detailed Description

Routines needed for kpoint calculation.

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

Function/Subroutine Documentation

◆ kpoint_initialize()

subroutine, public kpoint_methods::kpoint_initialize ( type(kpoint_type), pointer  kpoint,
type(particle_type), dimension(:), pointer  particle_set,
type(cell_type), pointer  cell 
)

Generate the kpoints and initialize the kpoint environment.

Parameters
kpointThe kpoint environment
particle_setParticle types and coordinates
cellComputational cell information

Definition at line 104 of file kpoint_methods.F.

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

◆ kpoint_env_initialize()

subroutine, public kpoint_methods::kpoint_env_initialize ( type(kpoint_type), intent(inout)  kpoint,
type(mp_para_env_type), intent(in), target  para_env,
type(cp_blacs_env_type), intent(in), target  blacs_env,
logical, intent(in), optional  with_aux_fit 
)

Initialize the kpoint environment.

Parameters
kpointKpoint environment
para_env...
blacs_env...
with_aux_fit...

Definition at line 265 of file kpoint_methods.F.

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

◆ kpoint_initialize_mos()

subroutine, public kpoint_methods::kpoint_initialize_mos ( type(kpoint_type), pointer  kpoint,
type(mo_set_type), dimension(:), intent(inout)  mos,
integer, intent(in), optional  added_mos,
logical, optional  for_aux_fit 
)

Initialize a set of MOs and density matrix for each kpoint (kpoint group)

Parameters
kpointKpoint environment
mosReference MOs (global)
added_mos...
for_aux_fit...

Definition at line 453 of file kpoint_methods.F.

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

◆ kpoint_initialize_mo_set()

subroutine, public kpoint_methods::kpoint_initialize_mo_set ( type(kpoint_type), pointer  kpoint)

...

Parameters
kpoint...

Definition at line 606 of file kpoint_methods.F.

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

◆ kpoint_init_cell_index()

subroutine, public kpoint_methods::kpoint_init_cell_index ( type(kpoint_type), pointer  kpoint,
type(neighbor_list_set_p_type), dimension(:), pointer  sab_nl,
type(mp_para_env_type), pointer  para_env,
type(dft_control_type), pointer  dft_control 
)

Generates the mapping of cell indices and linear RS index CELL (0,0,0) is always mapped to index 1.

Parameters
kpointKpoint environment
sab_nlDefining neighbour list
para_envParallel environment
dft_control...

Definition at line 646 of file kpoint_methods.F.

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

◆ rskp_transform()

subroutine, public kpoint_methods::rskp_transform ( type(dbcsr_type)  rmatrix,
type(dbcsr_type), optional  cmatrix,
type(dbcsr_p_type), dimension(:, :), pointer  rsmat,
integer, intent(in)  ispin,
real(kind=dp), dimension(3), intent(in)  xkp,
integer, dimension(:, :, :), pointer  cell_to_index,
type(neighbor_list_set_p_type), dimension(:), pointer  sab_nl,
logical, intent(in), optional  is_complex,
real(kind=dp), intent(in), optional  rs_sign 
)

Transformation of real space matrices to a kpoint.

Parameters
rmatrixReal part of kpoint matrix
cmatrixComplex part of kpoint matrix (optional)
rsmatReal space matrices
ispinSpin index
xkpKpoint coordinates
cell_to_indexmapping of cell indices to RS index
sab_nlDefining neighbor list
is_complexMatrix to be transformed is imaginary
rs_signMatrix to be transformed is csaled by rs_sign

Definition at line 778 of file kpoint_methods.F.

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

◆ kpoint_set_mo_occupation()

subroutine, public kpoint_methods::kpoint_set_mo_occupation ( type(kpoint_type), pointer  kpoint,
type(smear_type), pointer  smear 
)

Given the eigenvalues of all kpoints, calculates the occupation numbers.

Parameters
kpointKpoint environment
smearSmearing information

Definition at line 878 of file kpoint_methods.F.

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

◆ kpoint_density_matrices()

subroutine, public kpoint_methods::kpoint_density_matrices ( type(kpoint_type), pointer  kpoint,
logical, optional  energy_weighted,
logical, optional  for_aux_fit 
)

Calculate kpoint density matrices (rho(k), owned by kpoint groups)

Parameters
kpointkpoint environment
energy_weightedcalculate energy weighted density matrix
for_aux_fit...

Definition at line 989 of file kpoint_methods.F.

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

◆ kpoint_density_transform()

subroutine, public kpoint_methods::kpoint_density_transform ( type(kpoint_type), pointer  kpoint,
type(dbcsr_p_type), dimension(:, :)  denmat,
logical, intent(in)  wtype,
type(dbcsr_type), pointer  tempmat,
type(neighbor_list_set_p_type), dimension(:), pointer  sab_nl,
type(cp_fm_type), dimension(:), intent(in)  fmwork,
logical, optional  for_aux_fit,
type(cp_fm_type), dimension(:, :, :), intent(in), optional  pmat_ext 
)

generate real space density matrices in DBCSR format

Parameters
kpointKpoint environment
denmatReal space (DBCSR) density matrices
wtypeTrue = energy weighted density matrix False = normal density matrix
tempmatDBCSR matrix to be used as template
sab_nl...
fmworkFM work matrices (kpoint group)
for_aux_fit...
pmat_ext...

Definition at line 1113 of file kpoint_methods.F.

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