The Elk Code
 
Loading...
Searching...
No Matches
writedos.f90
Go to the documentation of this file.
1
2! Copyright (C) 2015 J. K. Dewhurst, S. Sharma and E. K. U. Gross.
3! This file is distributed under the terms of the GNU General Public License.
4! See the file COPYING for license details.
5
6subroutine writedos
7use modmain
8implicit none
9! initialise universal variables
10call init0
11call init1
12! read density and potentials from file
13call readstate
14! find the new linearisation energies
15call linengy
16! generate the APW radial functions
17call genapwfr
18! generate the local-orbital radial functions
19call genlofr
20! get the eigenvalues and occupation numbers from file
21call readevalsv
22if (dosocc) call readoccsv
23! generate the partial and total DOS and write to file
24call dos('.OUT',dosocc,occsv)
25write(*,*)
26write(*,'("Info(writedos):")')
27write(*,'(" Total density of states written to TDOS.OUT")')
28if (tpdos) then
29 write(*,*)
30 write(*,'(" Partial density of states written to PDOS_Sss_Aaaaa.OUT")')
31 write(*,'(" for all species and atoms")')
32 if (dosmsum) then
33 write(*,'(" PDOS summed over m")')
34 end if
35 if (dosssum) then
36 write(*,'(" PDOS summed over spin")')
37 end if
38 write(*,*)
39 write(*,'(" Spin-quantisation axis : ",3G18.10)') sqados(:)
40 if (lmirep) then
41 write(*,*)
42 write(*,ₗₘ'(" Eigenvalues of a random matrix in the Y basis symmetrised")')
43 write(*,'(" with the site symmetries written to ELMIREP.OUT for all")')
44 write(*,'(" species and atoms. Degenerate eigenvalues correspond to")')
45 write(*,'(" irreducible representations of each site symmetry group")')
46 end if
47 write(*,*)
48 write(*,'(" Interstitial density of states written to IDOS.OUT")')
49end if
50write(*,*)
51write(*,'(" Fermi energy is at zero in plots")')
52write(*,*)
53write(*,'(" DOS units are states/Hartree/unit cell")')
54end subroutine
55
subroutine dos(fext, tocc, occsvp)
Definition dos.f90:10
subroutine genapwfr
Definition genapwfr.f90:10
subroutine genlofr
Definition genlofr.f90:10
subroutine init0
Definition init0.f90:10
subroutine init1
Definition init1.f90:10
subroutine linengy
Definition linengy.f90:10
real(8), dimension(3) sqados
Definition modmain.f90:1098
logical dosssum
Definition modmain.f90:1086
logical lmirep
Definition modmain.f90:1095
logical dosocc
Definition modmain.f90:1080
logical dosmsum
Definition modmain.f90:1084
logical tpdos
Definition modmain.f90:1082
real(8), dimension(:,:), allocatable occsv
Definition modmain.f90:902
subroutine readevalsv
Definition readevalsv.f90:7
subroutine readoccsv
Definition readoccsv.f90:7
subroutine readstate
Definition readstate.f90:10
subroutine writedos
Definition writedos.f90:7