kmesh_input_type Derived Type

type, public :: kmesh_input_type

================================================== Contains information that can be provided by the user about determining the kmesh ==================================================


Inherited by

type~~kmesh_input_type~~InheritedByGraph type~kmesh_input_type kmesh_input_type type~lib_common_type lib_common_type type~lib_common_type->type~kmesh_input_type kmesh_input

Components

Type Visibility Attributes Name Initial
integer, public :: num_shells = 0

no longer an input keyword higher-order finite difference

integer, public :: max_shells_h
integer, public :: max_shells_aux
integer, public :: num_nnmax_h
integer, public :: higher_order_n = 1
logical, public :: higher_order_nearest_shells = .false.

A simpler algorithm of determining bvectors

logical, public :: kmesh_shell_from_file = .false.

allow specifying b-vector shells from file (for complex cases where the automatic procedure fails)

logical, public :: skip_B1_tests = .false.

do not check the B1 condition

integer, public, allocatable :: shell_list(:)
integer, public :: search_shells = 36
integer, public :: search_supcell_size = 5
real(kind=dp), public :: tol = 0.000001_dp

Source Code

  type kmesh_input_type
    !!==================================================
    !! Contains information that can be provided by the user about determining the kmesh
    !!==================================================
    integer :: num_shells = 0
    !! no longer an input keyword
    !! higher-order finite difference
    integer :: max_shells_h ! \sum ((3, 2i)) (combination with rep.) = n(4n*2 + 15n + 17)/6
    integer :: max_shells_aux ! = 6 for higher-order simple algorithm, n(4n*2 + 15n + 17)/6 for search algorithm
    integer :: num_nnmax_h ! 2*n(4n*2 + 15n + 17)/6
    integer :: higher_order_n = 1
    logical :: higher_order_nearest_shells = .false. ! experimental feature
    !! A simpler algorithm of determining bvectors
    logical :: kmesh_shell_from_file = .false.
    !! allow specifying b-vector shells from file (for complex cases where the automatic procedure fails)
    logical :: skip_B1_tests = .false.
    !! do not check the B1 condition
    integer, allocatable :: shell_list(:)
    integer :: search_shells = 36
    integer :: search_supcell_size = 5 !Size of supercell (of recip cell) in which to search for k-point shells
    real(kind=dp) :: tol = 0.000001_dp
  end type kmesh_input_type