[Pw_forum] Bands.x not ordering bands correctly
Henry J Seeley
hseeley at uoregon.edu
Thu Jan 14 03:35:38 CET 2016
Hello Stefano,
Fantastic response! Thank you very much.
I am using such a large super-cell to look at PbS surfaces via slab
models.
I am hoping that the finer grid works, but if it doesn't I will look
into changing the bands.x code. It appears as if the code picks the
first point it finds with abs(pro) > 1%; wouldn't it be better for it to
find the k-point with the highest value of abs(pro)?
Also, this is probably a novice question, but would I have to recompile
all of QE after I make changes to bands.x?
Thank you for your response; I'm glad I asked since this has been giving
me trouble for some time.
-Hank Seeley
Chemistry PhD student
University of Oregon
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
More information about the users
mailing list