[Pw_forum] Bug in dynmat

Eduardo Ariel Menendez P emenendez at macul.ciencias.uchile.cl
Sat Sep 8 21:53:46 CEST 2007


Hi,
I found a bug in program dynmat. It appears when ibrav=0.

espresso-3.2/bin-opt/dynmat.x <dynmat.in

Reading Dynamical Matrix from file matdyn

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
          from latgen : error #         1
          wrong at for ibrav=0
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

I think the problem is this

In dynmat.f90:
call latgen(ibrav,celldm,at(1,1),at(1,2),at(1,3),omega)
In flib/latgen.f90:
subroutine latgen(ibrav,celldm,a1,a2,a3,omega)
.........
real(DP), intent(inout) :: a1(3), a2(3), a3(3)

dynmat passes real numers a(i,j) instead of arrays. I guess it should be

call latgen(ibrav,celldm,at(:,1),at(:,2),at(:,3),omega)

Moreover, in one package of version 3.2, it seems that the following
lines were lost in soubroutine readmat.

      if (ibrav==0) then
         read(1,'(a)') symm_type
         read(1,*) ((at(i,j),i=1,3),j=1,3)
      end if

Bye

Eduardo A. Menendez Proupin
Department of Physics
Faculty of Science
University of Chile
Las Palmeras 3425
Ñuñoa, Santiago
Chile
Phone: (56)(2) 978 74 11
Fax  : (56)(2) 271 29 73
http://fisica.ciencias.uchile.cl/~emenendez/


More information about the Pw_forum mailing list