[Wien] lapw1 divide by zero error

Laurence Marks L-marks at northwestern.edu
Fri Oct 28 01:07:37 CEST 2011


The changes you made "should" not matter, since you changed the
complex version and TiC (and line 384) are for the real version. Two
thoughts:

a) Download a clean version of SRC_lapw1 from the website, unzip/untar
it and do a sdiff of hamilt.F to ensure that you have changed nothing
else by mistake.

b) Remove "-DINTEL_VML" from your compilation options (just for lapw1)
and recompile then test. If this works then you have a bad libsvml
and/or incompatible versions/ifort or similar. You might be picking up
the version from mkl rather than ifort, check the order in the linking
or how you are setting up, e.g. via sourcing the sh/csh compiler
scripts.

If neither of these helps, I would suspect something wrong in your
input files -- try one of the other examples.

N.B., I assume that you have turned on some debug options for initial
testing, which is wise but you will want to remove them later.

On Thu, Oct 27, 2011 at 5:34 PM,  <vielmaj at onid.orst.edu> wrote:
> Hello,
>
> I am getting a divide by zero error in the lapw1 routines.
>
> I compiled with the ifort 10 and mkl 9 compilers.  To compile completely
> with no errors, I had to make the following changes n SRC_lapw1/hamilt.F
> program below for me using an older compiler.
>
> ! in case of older mk/vml you may miss vzcis (IPO Error: unresolved :
> vzcis_)
> ! Either upgrade the libraries (ifort+mkl) or:
> ! Comment the line below and uncomment the other ones.
> ! Uncomment also all other lines above where   help_tmpcos occurs
>
> !!_COMPLEX         call vzcis(j_end(ihelp),help1,help_exp)
> !_COMPLEX         call vdcos(j_end(ihelp),help1,help_tmpcos)
> !_COMPLEX         call vdsin(j_end(ihelp),help1,help_tmpsin)
> !_COMPLEX         do j = 1, j_end(ihelp)
> !_COMPLEX            help_exp(j) = dcmplx(help_tmpcos(j),help_tmpsin(j))
> !_COMPLEX         end do
>
> #these three lines below are also in hamilt.F that were uncommented
> !_COMPLEX      deallocate( help_tmpcos, help_tmpsin )
> !_COMPLEX      DOUBLE PRECISION, allocatable ::   help_tmpsin(:),
> help_tmpcos(:)
> !_COMPLEX      allocate( help_tmpcos(HSdim_r), help_tmpsin(HSdim_r) )
>
> Once I run the TiC example, I get this error.
>
> hup: Command not found.
> Invalid null command.
>  LAPW0 END
> Invalid null command.
> forrtl: severe (71): integer divide by zero
> Image              PC                Routine            Line        Source
> lapw1              000000000049B8F2  Unknown               Unknown  Unknown
> lapw1              000000000049BAF0  Unknown               Unknown  Unknown
> lapw1              00000000004932D4  Unknown               Unknown  Unknown
> lapw1              000000000042D547  hamilt_                   384
>  hamilt_tmp_.F
> lapw1              000000000041CC99  calkpt_                   156
>  calkpt_tmp_.F
> lapw1              000000000044A312  MAIN__                     61
>  lapw1_tmp_.F
> lapw1              0000000000413B4E  Unknown               Unknown  Unknown
> libc.so.6          00002B735713A30D  Unknown               Unknown  Unknown
> lapw1              0000000000413A69  Unknown               Unknown  Unknown
>
>>  stop error
>
>
> It links to the following line in the hamilt.F program.
>
> !_REAL            call vdcos(j_end(ihelp),help1,help_cos)
>
> Thanks for you help,
>
> Jason Vielma
> _______________________________________________
> Wien mailing list
> Wien at zeus.theochem.tuwien.ac.at
> http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
>



-- 
Laurence Marks
Department of Materials Science and Engineering
Northwestern University
www.numis.northwestern.edu
"Research is to see what everybody else has seen, and to think what
nobody else has thought"
Albert Szent-Gyorgi


More information about the Wien mailing list