TABLE OF CONTENTS


ABINIT/m_efmas_defs [ Modules ]

[ Top ] [ Modules ]

NAME

 m_efmas_defs

FUNCTION

 This module contains datatypes for efmas functionalities.

COPYRIGHT

 Copyright (C) 2001-2018 ABINIT group (XG)
 This file is distributed under the terms of the
 GNU General Public License, see ~abinit/COPYING
 or http://www.gnu.org/copyleft/gpl.txt .

SOURCE

17 #if defined HAVE_CONFIG_H
18 #include "config.h"
19 #endif
20 
21 #include "abi_common.h"
22 
23 module m_efmas_defs
24 
25  use defs_basis
26 
27  implicit none
28  public
29  !Put eventual module variables here...

m_efmas_defs/efmasdeg_type [ Types ]

[ Top ] [ m_efmas_defs ] [ Types ]

NAME

 efmasdeg_type

FUNCTION

 The efmasdeg_type structured datatype, related to one k-point

SOURCE

65  type efmasdeg_type
66 
67    !For k-point
68    integer :: nband                           ! Number of bands (related to one specific k point)
69    integer :: ndegs                           ! Number of (degenerate) sets of eigenvalues (related to one specific k point)
70    integer, allocatable :: degs_bounds(:,:)   ! degs_bounds(2,ndegs) 
71                                               ! Minimal and maximal band indices for each possibly degenerate set of eigenvalues
72                                               ! actually the second dimension is declared as nband_k
73    !For band
74    integer :: deg_range(2)                    ! Indices of the sets that corresponds to the interval of bands for which
75                                               ! the generalized second-order k-derivative eig2_diag is computed,
76                                               ! possibly extended due to the degeneracies.
77    integer,allocatable :: ideg(:)             ! ideg(nband_k)  index of the set to which a particular band belongs
78 
79  end type efmasdeg_type

m_efmas_defs/efmasval_type [ Types ]

[ Top ] [ m_efmas_defs ] [ Types ]

NAME

 efmasval_type

FUNCTION

 The efmasval_type structured datatype, related to one band or one degenerated set of bands, for one k-point

SOURCE

41  type efmasval_type
42 
43    !For k-point
44    complex(dpc),allocatable :: ch2c(:,:,:,:) ! ch2c(mdim,mdim,1:deg_dim,1:deg_dim) 
45                                              ! where mdim=3 labels reciprocal space directions
46                                              ! See Eq.(50) of Laflamme2016 : 2nd-order Hamiltonian contribution
47                                              ! Two first indices are for number of directions
48                                              ! Two last indices are for band indices within degenerate subspace
49    complex(dpc),allocatable :: eig2_diag(:,:,:,:) ! eig2_diag(mdim,mdim,1:deg_dim,1:deg_dim) 
50                                              ! where mdim=3 labels reciprocal space directions
51                                              ! See Eq.(50) of Laflamme2016 : generalized second-order k-derivative
52 
53  end type efmasval_type