[Wannier] Problems reading UNK* files

Antonio Cammarata acammarata at drexel.edu
Fri Jan 20 01:34:20 CET 2012


Dear All,

I'm performing calculations on a perovskite structure using VASP code.
Once I got the MLWF, I reproduced the band structure that matches with
the one calculated with VASP.

Then I tried to plot one of the calculated Wannier functions but the
program exits with this error:

login2$ wannier90.x wannier90.up
forrtl: severe (67): input statement requires too much data, unit 11,
file ./UNK00001.1
Image              PC                Routine            Line
Source             
wannier90.x        0000000000578FBD  Unknown               Unknown
Unknown
wannier90.x        0000000000577AC5  Unknown               Unknown
Unknown
wannier90.x        000000000052CCC0  Unknown               Unknown
Unknown
wannier90.x        00000000004E7F8F  Unknown               Unknown
Unknown
wannier90.x        00000000004E77C2  Unknown               Unknown
Unknown
wannier90.x        0000000000505827  Unknown               Unknown
Unknown
wannier90.x        00000000004981CF  w90_plot_mp_plot_         831
plot.F90
wannier90.x        0000000000497B3A  w90_plot_mp_plot_          72
plot.F90
wannier90.x        0000000000404672  MAIN__                    177
wannier_prog.F90
wannier90.x        000000000040399C  Unknown               Unknown
Unknown
libc.so.6          0000003C7561D994  Unknown               Unknown
Unknown
wannier90.x        00000000004038A9  Unknown               Unknown
Unknown
login2$ 

Looking at the line 831 of the plot.F90 file it seems that the problem
is related to the kind of integer numbers it tries to read. To check
this, I try to read the first 5 integers of the UNK00001.1 file with
this simple fortran program:

      program check
      integer*4 ngx, ngy, ngz, bnd, zz
      open(unit=1,file="UNK00001.1",FORM="UNFORMATTED")
      read(1)ngx, ngy, ngz, nk, nbnd
      print *, ngx, ngy, ngz, nk, ndnd
      end program

and it gives the correct answer. So I modified the lines 811 and 812 of
the plot.F90 in this way:

    integer*4 :: i,j,nsp,nat,nbnd,counter,ierr
    integer*4 :: loop_kpt,ik,ix,iy,iz,nk,ngx,ngy,ngz,nxx,nyy,nzz

that is specifying the kind of integer and it works. My question is:
does this change affect the resulting plot, maybe because now such
values are of a kind not compatible with other variables?

Thanks a lot in advance for your kind reply.

Best

Antonio Cammarata




More information about the Wannier mailing list