[Wien] case.almblm along used-defined quantization axis
pluto
pluto at physics.ucdavis.edu
Sun Mar 19 12:00:24 CET 2023
Dear Prof. Blaha,
Thank you for the quick response. Unfortunately some things are still
unclear.
Taking as an example the celebrated family of 2H TMDCs (bulk MoS2, WSe2,
etc), sgroup will identify the space group 186, and create a case.struct
with 3 atoms, each having 2 equivalent positions. Total unit cell has 6
atoms. I understand that each of the 2 equivalent atoms are related by
inversion.
I have 4 questions to make sure I am not doing something completely
wrong:
1. There are 6 atoms in the unit cell, but case.almblm seems to contain
data for 3 atoms? This suggests that case.almblm contains data for
inequivalent atoms only. Are the printed wave functions the ones inside
the LAPW sphere of each first equivalent position (as defined in
case.struct)?
2. Regarding loc-rot matrices. Actually, I think they are printed by x
qtl into case.outputqup file. Can I just plug these matrices from
case.outputqup into case.struct?
3. What are the matrices in the case.rotlm (they don't depend on the
settings in case.inq)? Can I ignore these?
4. The original loc-rot matrices in case.struct must be related to some
real or reciprocal space directions. What are these directions for
hexagonal and rhombohedral lattices? Is this starting coordinate system
referenced to real space or reciprocal space vectors?
Important files for this test case are pasted below.
Best,
Lukasz
case.inq
-9.0 3.0 Emin Emax
3 number of atoms
1 88 0 1 iatom,qsplit,symmetrize,locrot
3 0 1 2 nL, l-values
1 1 1
2 1 0 1 iatom,qsplit,symmetrize,locrot
3 0 1 2 nL, l-values
1 1 1
3 1 0 1 iatom,qsplit,symmetrize,locrot
3 0 1 2 nL, l-values
1 1 1
case.struct
H 3 186
RELA
6.202084 6.202084 24.447397 90.000000 90.000000120.000000
ATOM -1: X=0.33333333 Y=0.66666666 Z=0.50000000
MULT= 2 ISPLIT= 4
-1: X=0.66666667 Y=0.33333334 Z=0.00000000
Se1 NPT= 781 R0=.000050000 RMT= 2.33000 Z: 34.00000
LOCAL ROT MATRIX: 1.0000000 0.0000000 0.0000000
0.0000000 1.0000000 0.0000000
0.0000000 0.0000000 1.0000000
ATOM -2: X=0.66666666 Y=0.33333333 Z=0.63179000
MULT= 2 ISPLIT= 4
-2: X=0.33333334 Y=0.66666667 Z=0.13179000
W 1 NPT= 781 R0=.000005000 RMT= 2.45000 Z: 74.00000
LOCAL ROT MATRIX: 1.0000000 0.0000000 0.0000000
0.0000000 1.0000000 0.0000000
0.0000000 0.0000000 1.0000000
ATOM -3: X=0.33333333 Y=0.66666666 Z=0.76358100
MULT= 2 ISPLIT= 4
-3: X=0.66666667 Y=0.33333334 Z=0.26358100
Se2 NPT= 781 R0=.000050000 RMT= 2.33000 Z: 34.00000
LOCAL ROT MATRIX: 1.0000000 0.0000000 0.0000000
0.0000000 1.0000000 0.0000000
0.0000000 0.0000000 1.0000000
12 NUMBER OF SYMMETRY OPERATIONS
1 0 0 0.00000000
0 1 0 0.00000000
0 0 1 0.00000000
1 A 1 so. oper. type orig. index
0-1 0 0.00000000
1-1 0 0.00000000
0 0 1 0.00000000
2 A 2
-1 1 0 0.00000000
-1 0 0 0.00000000
0 0 1 0.00000000
3 A 3
-1 0 0 0.00000000
0-1 0 0.00000000
0 0 1 0.50000000
4 A 4
0 1 0 0.00000000
-1 1 0 0.00000000
0 0 1 0.50000000
5 A 5
1-1 0 0.00000000
1 0 0 0.00000000
0 0 1 0.50000000
6 A 6
0-1 0 0.00000000
-1 0 0 0.00000000
0 0 1 0.00000000
7 B 7
-1 1 0 0.00000000
0 1 0 0.00000000
0 0 1 0.00000000
8 B 8
1 0 0 0.00000000
1-1 0 0.00000000
0 0 1 0.00000000
9 B 9
0 1 0 0.00000000
1 0 0 0.00000000
0 0 1 0.50000000
10 B 10
1-1 0 0.00000000
0-1 0 0.00000000
0 0 1 0.50000000
11 B 11
-1 0 0 0.00000000
-1 1 0 0.00000000
0 0 1 0.50000000
12 B 12
case.outputqup produced by x qtl (this quite large file, I only paste
first lines)
--------------------------------------------------
S T R U C T U R A L I N F O R M A T I
O N
--------------------------------------------------
SUBSTANCE = WSe2
s-o calc. M|| 0.00 0.00 1.00
LATTICE = H
LATTICE CONSTANTS ARE = 6.2020840 6.2020840 24.4473970
NUMBER OF ATOMS IN UNITCELL = 3
MODE OF CALCULATION IS = RELA
BR1, BR2
1.16980 0.58490 0.00000 1.16980 0.58490 0.00000
0.00000 1.01308 0.00000 0.00000 1.01308 0.00000
0.00000 0.00000 0.25701 0.00000 0.00000 0.25701
IORD= 12
atom 1; type 1; qsplit= 88; for L= 0 1 2
Symmetrization over eq. k-points is not performed
allowed for invariant DOS
New z axis || 1.0000 1.0000 1.0000
LATTICE:H
New local rotation matrix in global orthogonal system
new x new y new z
LOCAL ROT MATRIX: -0.5000000-0.8394340 0.2129568
0.8660254-0.4846474 0.1229507
0.0000000 0.2459014 0.9692949
Population matrix for TELNES
Population matrix diagonal in L for L= 0 1 2
atom 2; type 2; qsplit= 1; for L= 0 1 2
Symmetrization over eq. k-points is not performed
allowed for invariant DOS
New z axis || 1.0000 1.0000 1.0000
LATTICE:H
New local rotation matrix in global orthogonal system
new x new y new z
LOCAL ROT MATRIX: -0.5000000-0.8394340 0.2129568
0.8660254-0.4846474 0.1229507
0.0000000 0.2459014 0.9692949
L= 0. Unitary transformation to Ylm basis
Real part of unitary matrix
1.0000
Imaginary part of unitary matrix
0.0000
L= 1. Unitary transformation to Ylm basis
Real part of unitary matrix
1.0000 0.0000 0.0000
0.0000 1.0000 0.0000
0.0000 0.0000 1.0000
Imaginary part of unitary matrix
0.0000 0.0000 0.0000
0.0000 0.0000 0.0000
0.0000 0.0000 0.0000
L= 2. Unitary transformation to Ylm basis
Real part of unitary matrix
1.0000 0.0000 0.0000 0.0000 0.0000
0.0000 1.0000 0.0000 0.0000 0.0000
0.0000 0.0000 1.0000 0.0000 0.0000
0.0000 0.0000 0.0000 1.0000 0.0000
0.0000 0.0000 0.0000 0.0000 1.0000
Imaginary part of unitary matrix
0.0000 0.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.0000
atom 3; type 3; qsplit= 1; for L= 0 1 2
Symmetrization over eq. k-points is not performed
allowed for invariant DOS
New z axis || 1.0000 1.0000 1.0000
LATTICE:H
New local rotation matrix in global orthogonal system
new x new y new z
LOCAL ROT MATRIX: -0.5000000-0.8394340 0.2129568
0.8660254-0.4846474 0.1229507
0.0000000 0.2459014 0.9692949
L= 0. Unitary transformation to Ylm basis
Real part of unitary matrix
1.0000
Imaginary part of unitary matrix
0.0000
L= 1. Unitary transformation to Ylm basis
Real part of unitary matrix
1.0000 0.0000 0.0000
0.0000 1.0000 0.0000
0.0000 0.0000 1.0000
Imaginary part of unitary matrix
0.0000 0.0000 0.0000
0.0000 0.0000 0.0000
0.0000 0.0000 0.0000
L= 2. Unitary transformation to Ylm basis
Real part of unitary matrix
1.0000 0.0000 0.0000 0.0000 0.0000
0.0000 1.0000 0.0000 0.0000 0.0000
0.0000 0.0000 1.0000 0.0000 0.0000
0.0000 0.0000 0.0000 1.0000 0.0000
0.0000 0.0000 0.0000 0.0000 1.0000
Imaginary part of unitary matrix
0.0000 0.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.0000
LATTICE:H
case.rotlm produced by x qtl
1.16980 0.00000 0.00000
0.58490 1.01308 0.00000
0.00000 0.00000 0.25701
inequivalent atomnumber 1 number 1 total 1
1.00000 0.00000 0.00000
0.00000 1.00000 0.00000
0.00000 0.00000 1.00000
inequivalent atomnumber 1 number 2 total 2
-1.00000 0.00000 0.00000
0.00000 -1.00000 0.00000
0.00000 0.00000 1.00000
inequivalent atomnumber 2 number 1 total 3
1.00000 0.00000 0.00000
0.00000 1.00000 0.00000
0.00000 0.00000 1.00000
inequivalent atomnumber 2 number 2 total 4
-1.00000 0.00000 0.00000
0.00000 -1.00000 0.00000
0.00000 0.00000 1.00000
inequivalent atomnumber 3 number 1 total 5
1.00000 0.00000 0.00000
0.00000 1.00000 0.00000
0.00000 0.00000 1.00000
inequivalent atomnumber 3 number 2 total 6
-1.00000 0.00000 0.00000
0.00000 -1.00000 0.00000
0.00000 0.00000 1.00000
On 2023-03-19 07:10, Peter Blaha wrote:
> For this purpose you can simply redefine the loc.rot. in case.struct
> in the way you want it and then call lapw2.
>
> PS: The lapw2-call in x qtl is only to get a proper EF and weight
> files.
>
> Am 18.03.2023 um 22:15 schrieb pluto via Wien:
>> Dear All,
>>
>> I am again coming back to the Ylm band characters etc...
>>
>> This command
>>
>> x lapw2 -up -so -alm -qtl -band
>>
>> produces case.almblm file. I am guessing that here the quantization
>> axis (i.e. the direction of pz and dz2, the z-axis) is oriented along
>> the axis defined by the local-rotation-matrices in case.struct
>> (actually can be different for each atom).
>>
>> However, I am interested to have case.almblm file along the
>> quantization axis user-defined in case.inq. I tried running
>>
>> x qtl -band -up -alm -so
>>
>> But this did not produce case.almblm file. Actually from the :log file
>> I can see that x qtl is calling lapw2:
>>
>> Sat Mar 18 09:37:27 PM CET 2023> (x) qtl -band -up -alm -so
>> Sat Mar 18 09:37:27 PM CET 2023> (x) lapw2 -fermi -so -up
>>
>> Is there any way of printing case.almblm file with the user-defined
>> quantization axis?
>>
>> x qtl produces case.rotlm, which I believe contains new
>> local-rotation-matrices. Perhaps I can manually plug these matrices
>> somewhere (in case.struct ?) as an input for x lapw2?
>>
>> Best,
>> Lukasz
>> _______________________________________________
>> Wien mailing list
>> Wien at zeus.theochem.tuwien.ac.at
>> http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien
>> SEARCH the MAILING-LIST at:
>> http://www.mail-archive.com/wien@zeus.theochem.tuwien.ac.at/index.html
More information about the Wien
mailing list