[Wien] lapwdm with ROOT option in case.in2

Masao ARAI ARAI.Masao at nims.go.jp
Thu Jun 28 08:34:35 CEST 2007


Dear WIEN2k users and depelopers,

I have experienced a strange problem about LSDA+U calculation
with ROOT option in case.in2. Is the ROOT option compatible with
lapwdm?

Let me explain the situation.

(1) First, I performed standard LSDA+U calculations with
"TETRA" option in case.in2.
I obtained well converged insulating ground state.

(2) I modified the case.in2 and set "ROOT" option. Then I restarded
the LSDA+U calculations with converged charge density and case.dmat* files.
However, the calculuation was converged to the completely different state.
At the first iteration, the eigenvalue agreed with those from (1). But, the
density matrices computed from lapwdm were different from those in (1).

I suspect that the lapwdm is not compatible with ROOT option.

The lapw2 emits weights to case.weighdn and case.weighup. These weights
are then read by lapwdm. When the ROOT option is used, the weights 
emitted by
lapw2  are just proportinal to the multiplicities of k-points.
Even states higher than Fermi energy have non zero weights in case.weighdn
and case.weighup.

Note, the weights in case.weightup/dn (file no.11) are
appropriately truncated at EF and the weights of states with higher
energy are zero.(around line 455-462 in lapw2.F)

455            DO IE=1,NE(K)
456                wei=WEIGH(k,ie)
457                eee= E(k+(ie-1)*2*nkpt)
458                IF (eee.lt.eeeo) shift=0.
459                eeeo=eee
460                eee=eee+shift
461                IF (eee.gt.EF) wei=0.
462                WRITE(11,79) eee,wei
463            END DO


But, the weights in case.weighup (file no.26)and case.weighdn (no.27)
are emitted without any special treatment. (line 333 and 351 in lapw2.F)

333                   write(26)(WEIGH(J,N), N=1,NE(J))
351                      write(27)(WEIGH(J,N), N=1,NE(J))


Of course, the states higer than EF will not be used in lapw2 because
the varibale nemax is appropriately adjusted.

In lapwdm, the weights are read from case.weighdn/up.
Then all states are used for computation of the density matrices.
(There is no trick like nemax in lapw2). So, if the ROOT option is used,
the lapwdm seems to give wrong values.

Your sincerely,

--
Masao Arai
NIMS(National Institute for Materials Science)
CMSC(Computational Materials Science Center)
Tsukuba Japan



More information about the Wien mailing list