Page 2 of 2

Re: The imag_aniso_XX file written incorrectly

Posted: Mon Nov 01, 2021 8:11 pm
by hlee
Dear Mehmet:

I am sorry, but I missed your message.

I think that there is a minor bug; could you modify the subroutine of eliashberg_read_aniso_iaxis in io_eliashberg.f90 in the following way?

(before)
!
IF (mpime == ionode_id) THEN
!
temp = gtemp(itemp) / kelvin2eV
! anisotropic case
IF (temp < 10.d0) THEN
WRITE(name1, 101) TRIM(prefix), '.imag_aniso_00', temp
!!!!!
ELSEIF (temp >= 10.d0) THEN
!!!!!
WRITE(name1, 102) TRIM(prefix), '.imag_aniso_0', temp
ELSEIF (temp >= 100.d0) THEN
WRITE(name1, 103) TRIM(prefix), '.imag_aniso_', temp
ENDIF
!
OPEN(UNIT = iufilgap, FILE = name1, STATUS = 'unknown', FORM = 'formatted', IOSTAT = ios)
IF (ios /= 0) CALL errore('eliashberg_read_aniso_iaxis', 'error opening file ' // name1, iufilgap)
READ(iufilgap, '(a)') word

(after)
!
IF (mpime == ionode_id) THEN
!
temp = gtemp(itemp) / kelvin2eV
! anisotropic case
IF (temp < 10.d0) THEN
WRITE(name1, 101) TRIM(prefix), '.imag_aniso_00', temp
!!!!!
ELSEIF (temp >= 10.d0 .AND. temp < 100.d0) THEN
!!!!!
WRITE(name1, 102) TRIM(prefix), '.imag_aniso_0', temp
ELSEIF (temp >= 100.d0) THEN
WRITE(name1, 103) TRIM(prefix), '.imag_aniso_', temp
ENDIF
!
OPEN(UNIT = iufilgap, FILE = name1, STATUS = 'unknown', FORM = 'formatted', IOSTAT = ios)
IF (ios /= 0) CALL errore('eliashberg_read_aniso_iaxis', 'error opening file ' // name1, iufilgap)
READ(iufilgap, '(a)') word

You just need to focus on the region sandwiched by "!!!!!"

Sincerely,

H. Lee