Re: [Wien] Difference between "x lapw2 -qtl" and "x qtl"

2023-03-15 Thread pluto via Wien

Dear Prof. Blaha, dear All,

The limit of 25 atoms in QTL is a separate problem, of course. There is 
separate error when exceeding 25 atoms.


Yet another issue is the number of fat bands plotted. Default is 999, 
and in this case it must be increased.


I think that QTL does something more than lapw2 -qtl. I think it is 
related to the "symmetrization" explained in the QTL technical report. 
However, it is not clear if this always allows a correct calculation of 
spin polarization even if equivalent atoms are used. Also, if this is 
the case, then it would mean QTL somehow choses one of the equivalent 
atoms, and plots its character. I suspect if both equivalent atoms 
connected by inversion are chosen, then spin is zero because of the 
Krames degeneracy in a non-magnetic system.


I will test on bulk 2H TMDC, maybe this will clarify things.

Best,
Lukasz

PS: Both atoms are Z>50, so not light. I accepted the options during 
init_so_lapw. Bands looks very much correct, so it is unlikely that 
something is wrong. The material is non magnetic, only spin-momentum 
locked bands can be present.




On 2023-03-15 08:51, Peter Blaha wrote:
Well, we can only guess something because there is not enough 
information.


Clearly:   qtl   has a limit of 25 atoms  in   case.inqtl

It should give you a corresponding error message, so you should be
aware of that.
On the other hand you said you limit the number of atoms to 2 in
case.inqtl, so this should not cause an error.

I would need the struct file together with an exact description of
what you have done and what does not work. Otherwise I cannot
reproduce things.

PS: Why are you setting RLOs for all atoms ?? It does not make sense
for valence electrons of light atoms.

PPS: I'm also surprised that SO with (100) does not break more symmetry 
???



Am 15.03.2023 um 01:32 schrieb pluto via Wien:

Dear All,

I am calculating one of the 1T TMDC materials. This material e.g. has 
a spin-polarized Dirac cone on the surface (see e.g. DOI 
10.1088/2516-1075/ab09b7 for review of similar materials).


I calculated 10L (15 inequivalent atoms) and 20L (30 inequivalent 
atoms) slabs. I allowed sgroup to find the space group (no. 164) in 
order to speed up the calculation. In this case it means each 
inequivalent atom has 2 equivalent positions.


It is a spin polarized calculation with SOC. Band structures look good 
compared to the literature Wannier calculations.


One obvious test is to check spin polarization of the Dirac cone.

Band characters can be calculated either using
x lapw2 -band -qtl -up/dn -so (default in w2web)
or using
x qtl -band -up/dn -so

Importantly, in order to make x qtl work I need to
cp case.in1 case.in1c
although the system does have inversion (otherwise qtl gives an error 
and nothing is calculated). Is this allowed?


Another problem is that for the 20L slab x spaghetti does not want to 
plot fat bands out of case.qtlup/dn produced by "x qtl". I didn't look 
at the case.qtlup/dn files in detail yet (I will, but it might take a 
while), but either they are incomplete (i.e. x qtl cannot handle a big 
slab), or spaghetti cannot handle these files beyond a certain size 
limit. On the other hand case.qtlup/dn produced by x lapw2 always work 
with fat bands. Of couse when using x qtl I limit the number of atoms 
in case.inq, and I typically only calculate characters for 2 outermost 
atoms (my case.inq pasted below). For 10L slab everything works fine.


The plotted results (using w2web) for these two cases look very 
different. I tried plotting characters on couple of outermost atoms.


x lapw2 does not show any spin polarization of the Dirac cone
x qtl shows clear very high polarization of the Dirac cone

This happens when I plot total character on a particular atom, is it 
not an effect related to some Y_lm character or things like that.


I think in general I should split all atoms in order to get correct 
spin polarization (the so-called hidden spin polarization introduced 
by Zunger/Freeman). This is what one had to do with the 2H MoS2 
calculations several years back. But splitting all atoms would 
probably make 20L slab calculation prohibitive on my system (I think 
20L would be unrealistic).


But perhaps the QTL program can somehow do the job of splitting the 
equivalent atoms even on slab with equivalent positions.


I also paste below case.inso, note that the direction of spin 
polarization quant. axis is along 100, i.e. in-plane, as it should for 
these materials.


Best,
Lukasz


case.inq file:

-9.0   3.0   Emin  Emax
   2 number of atoms
    1   1  0  1   iatom,qsplit,symmetrize,locrot
3   0  1  2  nL, l-values
0 0 1
   30   1  0  1   iatom,qsplit,symmetrize,locrot
3   0  1  2  nL, l-values
0 0 1

case.inso

WFFIL
4  0  0 llmax,ipr,kpot
-10  1.9    Emin, Emax
     1 0 0   h,k,l (direction of 
magnetization)

  30   

Re: [Wien] Difference between "x lapw2 -qtl" and "x qtl"

2023-03-15 Thread Peter Blaha

Well, we can only guess something because there is not enough information.

Clearly:   qtl   has a limit of 25 atoms  in   case.inqtl

It should give you a corresponding error message, so you should be aware 
of that.
On the other hand you said you limit the number of atoms to 2 in 
case.inqtl, so this should not cause an error.


I would need the struct file together with an exact description of what 
you have done and what does not work. Otherwise I cannot reproduce things.


PS: Why are you setting RLOs for all atoms ?? It does not make sense for 
valence electrons of light atoms.


PPS: I'm also surprised that SO with (100) does not break more symmetry ???


Am 15.03.2023 um 01:32 schrieb pluto via Wien:

Dear All,

I am calculating one of the 1T TMDC materials. This material e.g. has a 
spin-polarized Dirac cone on the surface (see e.g. DOI 
10.1088/2516-1075/ab09b7 for review of similar materials).


I calculated 10L (15 inequivalent atoms) and 20L (30 inequivalent atoms) 
slabs. I allowed sgroup to find the space group (no. 164) in order to 
speed up the calculation. In this case it means each inequivalent atom 
has 2 equivalent positions.


It is a spin polarized calculation with SOC. Band structures look good 
compared to the literature Wannier calculations.


One obvious test is to check spin polarization of the Dirac cone.

Band characters can be calculated either using
x lapw2 -band -qtl -up/dn -so (default in w2web)
or using
x qtl -band -up/dn -so

Importantly, in order to make x qtl work I need to
cp case.in1 case.in1c
although the system does have inversion (otherwise qtl gives an error 
and nothing is calculated). Is this allowed?


Another problem is that for the 20L slab x spaghetti does not want to 
plot fat bands out of case.qtlup/dn produced by "x qtl". I didn't look 
at the case.qtlup/dn files in detail yet (I will, but it might take a 
while), but either they are incomplete (i.e. x qtl cannot handle a big 
slab), or spaghetti cannot handle these files beyond a certain size 
limit. On the other hand case.qtlup/dn produced by x lapw2 always work 
with fat bands. Of couse when using x qtl I limit the number of atoms in 
case.inq, and I typically only calculate characters for 2 outermost 
atoms (my case.inq pasted below). For 10L slab everything works fine.


The plotted results (using w2web) for these two cases look very 
different. I tried plotting characters on couple of outermost atoms.


x lapw2 does not show any spin polarization of the Dirac cone
x qtl shows clear very high polarization of the Dirac cone

This happens when I plot total character on a particular atom, is it not 
an effect related to some Y_lm character or things like that.


I think in general I should split all atoms in order to get correct spin 
polarization (the so-called hidden spin polarization introduced by 
Zunger/Freeman). This is what one had to do with the 2H MoS2 
calculations several years back. But splitting all atoms would probably 
make 20L slab calculation prohibitive on my system (I think 20L would be 
unrealistic).


But perhaps the QTL program can somehow do the job of splitting the 
equivalent atoms even on slab with equivalent positions.


I also paste below case.inso, note that the direction of spin 
polarization quant. axis is along 100, i.e. in-plane, as it should for 
these materials.


Best,
Lukasz


case.inq file:

-9.0   3.0   Emin  Emax
   2 number of atoms
    1   1  0  1   iatom,qsplit,symmetrize,locrot
3   0  1  2  nL, l-values
0 0 1
   30   1  0  1   iatom,qsplit,symmetrize,locrot
3   0  1  2  nL, l-values
0 0 1

case.inso

WFFIL
4  0  0 llmax,ipr,kpot
-10  1.9    Emin, Emax
     1 0 0   h,k,l (direction of magnetization)
  30   number of atoms with RLO
1 -3.53 0.0001 STOP atom-number, E-param for RLO
2 -3.53 0.0001 STOP atom-number, E-param for RLO
3 -3.53 0.0001 STOP atom-number, E-param for RLO
4 -3.53 0.0001 STOP atom-number, E-param for RLO
5 -3.53 0.0001 STOP atom-number, E-param for RLO
6 -3.53 0.0001 STOP atom-number, E-param for RLO
7 -3.53 0.0001 STOP atom-number, E-param for RLO
8 -3.53 0.0001 STOP atom-number, E-param for RLO
9 -3.53 0.0001 STOP atom-number, E-param for RLO
10 -3.53 0.0001 STOP atom-number, E-param for RLO
11 0.30 0. CONT atom-number, E-param for RLO
12 0.30 0. CONT atom-number, E-param for RLO
13 0.30 0. CONT atom-number, E-param for RLO
14 0.30 0. CONT atom-number, E-param for RLO
15 0.30 0. CONT atom-number, E-param for RLO
16 0.30 0. CONT atom-number, E-param for RLO
17 0.30 0. CONT atom-number, E-param for RLO
18 0.30 0. CONT atom-number, E-param for RLO
19 0.30 0. CONT 

Re: [Wien] Difference between "x lapw2 -qtl" and "x qtl"

2023-03-14 Thread Rubel, Oleg
Dear Lukasz,

sorry, I do not have a direct answer, but you might consider checking files 
case.normsoup and case.normsodn. They contain alpha^2 (normsoup) and beta^2 
(normsodn) spinor components for each k point and each eigenvalue (check that 
alpha^2 + beta^2=1). I would compare alpha^2 vs beta^2 for a k point and 
eigenvalue of interest to see if one of them dominate. These are plane text 
files and easy to read. Here is the subroutine for reading used in fold2Bloch 
https://github.com/rubel75/fold2Bloch-Wien2k/blob/master/read_norms.F90 It is 
called sequentially for each k point. The number of eigenstates (NE) sometimes 
changes from one k point to another.

Best regards
Oleg

> -Original Message-
> From: Wien  On Behalf Of
> pluto via Wien
> Sent: Tuesday, March 14, 2023 8:32 PM
> To: A Mailing list for WIEN2k users 
> Cc: pluto 
> Subject: [Wien] Difference between "x lapw2 -qtl" and "x qtl"
> 
> Dear All,
> 
> I am calculating one of the 1T TMDC materials. This material e.g. has a spin-
> polarized Dirac cone on the surface (see e.g. DOI
> 10.1088/2516-1075/ab09b7 for review of similar materials).
> 
> I calculated 10L (15 inequivalent atoms) and 20L (30 inequivalent atoms)
> slabs. I allowed sgroup to find the space group (no. 164) in order to speed up
> the calculation. In this case it means each inequivalent atom has 2 equivalent
> positions.
> 
> It is a spin polarized calculation with SOC. Band structures look good
> compared to the literature Wannier calculations.
> 
> One obvious test is to check spin polarization of the Dirac cone.
> 
> Band characters can be calculated either using x lapw2 -band -qtl -up/dn -so
> (default in w2web) or using x qtl -band -up/dn -so
> 
> Importantly, in order to make x qtl work I need to cp case.in1 case.in1c
> although the system does have inversion (otherwise qtl gives an error and
> nothing is calculated). Is this allowed?
> 
> Another problem is that for the 20L slab x spaghetti does not want to plot fat
> bands out of case.qtlup/dn produced by "x qtl". I didn't look at the
> case.qtlup/dn files in detail yet (I will, but it might take a while), but 
> either they
> are incomplete (i.e. x qtl cannot handle a big slab), or spaghetti cannot 
> handle
> these files beyond a certain size limit. On the other hand case.qtlup/dn
> produced by x lapw2 always work with fat bands. Of couse when using x qtl I
> limit the number of atoms in case.inq, and I typically only calculate 
> characters
> for 2 outermost atoms (my case.inq pasted below). For 10L slab everything
> works fine.
> 
> The plotted results (using w2web) for these two cases look very different. I
> tried plotting characters on couple of outermost atoms.
> 
> x lapw2 does not show any spin polarization of the Dirac cone x qtl shows
> clear very high polarization of the Dirac cone
> 
> This happens when I plot total character on a particular atom, is it not an
> effect related to some Y_lm character or things like that.
> 
> I think in general I should split all atoms in order to get correct spin
> polarization (the so-called hidden spin polarization introduced by
> Zunger/Freeman). This is what one had to do with the 2H MoS2 calculations
> several years back. But splitting all atoms would probably make 20L slab
> calculation prohibitive on my system (I think 20L would be unrealistic).
> 
> But perhaps the QTL program can somehow do the job of splitting the
> equivalent atoms even on slab with equivalent positions.
> 
> I also paste below case.inso, note that the direction of spin polarization 
> quant.
> axis is along 100, i.e. in-plane, as it should for these materials.
> 
> Best,
> Lukasz
> 
> 
> case.inq file:
> 
> -9.0   3.0   Emin  Emax
>2 number of atoms
> 1   1  0  1   iatom,qsplit,symmetrize,locrot
> 3   0  1  2  nL, l-values
> 0 0 1
>30   1  0  1   iatom,qsplit,symmetrize,locrot
> 3   0  1  2  nL, l-values
> 0 0 1
> 
> case.inso
> 
> WFFIL
> 4  0  0 llmax,ipr,kpot
> -10  1.9Emin, Emax
>  1 0 0   h,k,l (direction of magnetization)
>   30   number of atoms with RLO
> 1 -3.53 0.0001 STOP atom-number, E-param for RLO
> 2 -3.53 0.0001 STOP atom-number, E-param for RLO
> 3 -3.53 0.0001 STOP atom-number, E-param for RLO
> 4 -3.53 0.0001 STOP atom-number, E-param for RLO
> 5 -3.53 0.0001 STOP atom-number, E-param for RLO
> 6 -3.53 0.0001 STOP atom-number, E-param for RLO
> 7 -3.53 0.0001 STOP atom-number, E-param for RLO
> 8 -3.53 0.0001 STOP atom-number, E-param for RLO
> 9 -3.53 0.0001 STOP atom-number, E-param for RLO
> 10 -3.53 0.0001 STOP atom-number, E-param for RLO
> 11 0.30 0. CONT atom-number, E-param for RLO
> 12 0.30 0. CONT atom-number, E-param for RLO
> 13 0.30 0. CONT