-
Notifications
You must be signed in to change notification settings - Fork 3
/
vaspbaum.f90
62 lines (53 loc) · 1.71 KB
/
vaspbaum.f90
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include "alias.inc"
!*****************************************************************************80
! Licensing:
! This code is distributed under the GNU LGPL license.
! PROGRAM VASP-BAUM Version 0.0.1 (f90)
! Written by Hyun-Jung Kim ([email protected])
! PGI-1, Forschungszentrum Juelich
! Copyright 2021. Hyun-Jung Kim All rights reserved.
! version 1.00
! last update and bug fixes : 2021. Dec. 10. by H.-J. Kim
! VASP BAnd Unfolding Machinery (VASP-BAUM)
program vaspbaum
use parameters
use mpi_setup
use time
use version
use print_io
use mykind
use wavecar
implicit none
real(kind=dp) t_start
type(incar ) :: PINPT ! parameters for input arguments
type(eigen ) :: WAVEC ! Eigenvalues from wavecar
call parse_very_init(PINPT)
#ifdef MPI
call mpi_initialize(PINPT%fnamelog)
#else
call open_log(PINPT%fnamelog,myid)
#endif
call version_stamp(t_start)
call parse(PINPT)
if(.not. PINPT%flag_set_unfold) then
write(message,'(A,A)')"# File reading... : " ; write_msg
write(message,'(A,A)')" --> ", trim(PINPT%filenm) ; write_msg
endif
call inforead(PINPT, WAVEC)
call write_info(WAVEC, PINPT, 0)
if(PINPT%icd .eq. 0) then
call get_band_unfold(WAVEC, PINPT)
endif
if(PINPT%icd .eq. 1) then
call get_circular_dichroism_1(WAVEC, PINPT)
elseif(PINPT%icd .eq. 2) then
call get_circular_dichroism_matrix(WAVEC, PINPT)
elseif(PINPT%icd .eq. 3) then
call get_circular_dichroism_unfold(WAVEC, PINPT)
endif
#ifdef MPI
call mpi_finish()
#endif
call close_log(myid)
stop
end program