[Pw_forum] Bands.x not ordering bands correctly

stefano de gironcoli degironc at sissa.it
Fri Jan 15 09:04:03 CET 2016


did "make pp" recompile the bands.x code ?
is the input flag lsym=.true. ?
stefano

On 15/01/2016 02:47, Henry J Seeley wrote:
> Stefano (or anyone else who may know a solution to this issue),
>
> I uncommented the write line, and used "make pp" to remake my bands.x
> executable, but I am not obtaining any print-outs of abs(pro). How can I
> get this information to appear?
>
> -Hank
>
>
> On 2016/01/13 14:29, stefano de gironcoli wrote:
>> Hi Hank,
>>     bulk PbS has 2 atom per cell. why do you need 20-30 ?
>>
>>     bands.x "follows" a band based on the overlap of the wfcs in two
>> neighboring points..
>>     it accepts the band on the basis of a rather small overlap threshold
>>
>> ... somewhere around line 350 in $espresso_root/PP/src/bands.f90
>> pro=cgracsc(nkb,becp%k(:,jbnd),becpold%k(:,idx(ibnd)), &
>>                            nhm, ntyp, nh, qq, nat, ityp, ngm, NEW, old,
>> upf)
>>                    ENDIF
>> !                 write(6,'(3i5,f15.10)') ik,idx(ibnd), jbnd, abs(pro)
>>                    IF (abs (pro) > 1.d-2 ) THEN
>>                       il (idx(ibnd),ik) = jbnd
>>                       GOTO 10
>>                    ENDIF
>> ...
>>
>>      this is probably ok in most cases when there are few bands to chose
>> from and only one is the "right one". In your case there are many bands
>> and maybe there are many not too wrong bands that fulfill the
>> threshold..:-(
>>      I would try to
>>      1) uncomment the write statement and see what are the typical
>> values
>> of abs(pro) you get.
>>        if everything is fine there should be only one jbnd band for each
>> idx(ibnd) band that is significantly different from zero (much more
>> than
>> 1.d-2 i would expect).. If you have more than one jbnd band that
>> exceeds
>> the threshold for a given examined idx(ibnd) then the code may do the
>> wrong assignment
>>      2) if this is the origin of the problem i would try to play with
>> the
>> threshold to induce the code to make the proper assignment
>>
>>      using a finer k point grid should also work but I would say that 15
>> points in a 20-30 atom cell should already be enough !
>>
>>     good luck,
>>
>>     stefano
>>
>> On 13/01/2016 21:52, Henry J Seeley wrote:
>>> Hello everyone,
>>>
>>> I'm using bands.x to assign eigenvalues to specific bands of PbS. I
>>> have
>>> fairly large supercells (20-30 atoms), so my bands are dense with lots
>>> of crossings. When I run bands.x it incorrectly assigns bands
>>> resulting
>>> in erratic band diagrams (e.g., bands suddenly jump across the bandgap
>>> to connect conduction and valence eigenvalues). What are the potential
>>> causes of this error?
>>>
>>> Perhaps I am not sampling my k-points densely enough; I have
>>> approximately 10-15 points per sampling line. I plan on increasing
>>> this
>>> density to 50 kpts per line, and will report back if this solves the
>>> problem. I am somewhat in a rush to get these results though, so if
>>> anyone has some insight it would be much appreciated.
>>>
>>> Also, assuming there is a solution to this problem, is band.x capable
>>> of
>>> sorting a 2D grid of kpoints into bands? I am interesting in
>>> generating
>>> contour maps.
>>>
>>> Thank you,
>>> Hank Seeley
>>> Chemistry PhD student
>>> University of Oregon
>>> _______________________________________________
>>> Pw_forum mailing list
>>> Pw_forum at pwscf.org
>>> http://pwscf.org/mailman/listinfo/pw_forum
>> _______________________________________________
>> Pw_forum mailing list
>> Pw_forum at pwscf.org
>> http://pwscf.org/mailman/listinfo/pw_forum
> _______________________________________________
> Pw_forum mailing list
> Pw_forum at pwscf.org
> http://pwscf.org/mailman/listinfo/pw_forum




More information about the users mailing list