IRVSP—User Guide
Directory:
- 1. Introduction of IRVSP
- 2. Installation
- 3. Usage of IRVSP
- 4. Examples of IRVSP
1.Introduction of IRVSP
This package is used to to compute irreducible representations of electronic states for all 230 space groups with an interface to the Vienna ab-initio Simulation Package. This code is fed with plane-wave-based wavefunctions (e.g. WAVECAR) and space group operators (listed in OUTCAR), which are generated by the VASP package. This program computes the traces of matrix presentations and determines the corresponding irreducible representations for all energy bands and all the k-points in the three-dimensional Brillouin zone. It also works with spin–orbit coupling (SOC), i.e., for double groups. It is in particular useful to analyze energy bands, their connectivities, and band topology, after the establishment of the theory of topological quantum chemistry.
If you are using this package, please cite the following works:
IRVSP:To obtain irreducible representations of elelctronic states in the VASP, Computer Physics Communications 261,107760 (2021) Jiacheng Gao, Quansheng Wu, Clas Persson, Zhijun Wang.
In the study of the properties of a material, the determination of IRs of computed electron bands is of great interest to diagnose the band crossing/anti-crossing, degeneracy and band topology. In the WIEN2k package, the program irrep classifies the IRs in PNG symmetries, which then excludes the possibility to describe certain BZ surface k-points for nonsymmorphic crystals. Therefore, the demand to determine the IRs for all the k-point in all 230 SGs is still unsatisfied. With the CRTs from the BCS, the program – irvsp – is developed to meet this demand with the interface to the VASP package. The associated library – irrep_bcs.a – can be easily linked to by other ab-initio packages. The obtained IRs are labeled in the convention of the BCS notation, which can be directly compared with the elementary band representations (EBRs) of the TQC theory, to further check the topology of a set of bands in materials.
2.Installation
This program is an open source free software package. It is released on Github under the GNU Lesser General Public License, https://www.gnu.org/licenses/lgpl-3.0.html, and it canbe downloaded directly from the public code archive: https://github.com/zjwang11/irvsp/blob/master/src_irvsp_v2.tar.gz.
To build and install irvsp, only a Fortran 90 compiler is needed. The downloaded irvsp software package is likely a compressed file with a zip or tar.gz suffix. One should uncompress it first, then move into the src_irvsp_v2 folder. After setting up the Fortran compiler in the Makefile file, the executable binary irvsp can be compiled by typing the following command in the current directory (src_irvsp_v2):
./configure.sh
source ~/.bashrc
make
3.Usage of IRVSP
Before one is actually doing the VASP calculations, we strongly suggest that one could run the phonopy and pos2aBR program to get the space group number and tandardize the POSCAR with the following command:
phonopy –symmetry –tolerance 0.01 -c POSCAR
pos2aBR (* converting PPOSCAR to POSCAR_std *)
Before running irvsp, the user must provide two consistent files: WAVECAR and OUTCAR. The two files are generated by the VASP package in fixed format. It is designed to be simple and user friendly. After a running of VASP with WAVECAR and OUTCAR output, the program irvsp can be run immediately. Giving a correct space group number (sgn ∈ [1 , 230]) and a set of energy bands (from the mth band to the nth band), the program can be executed by the following command:
irvsp -sg $sgn [-nb $m $n] > outir &
Notes in VASP calculation:
- Please do NOT set ISYM tag in INCAR (Default ISYM=2).
- For SOC calculations, please set the MAGMOM tag explicitly in INCAR (for example, MAGMOM=900*0). The default values of MAGMOM could cause the SYMMETRY error when using IRVSP.
- For VASP6.x, please modify the line “CALL SET_SPINROT_WRAPPER(LATT_CUR%B(1,1),-1)” in mkpoints.F to “CALL SET_SPINROT_WRAPPER(LATT_CUR%B(1,1),IU6)” and recompile VASP before using IRVSP.
4.Example of IRVSP
Standardize the POSCAR:
phonopy –symmetry –tolerance 0.01 -c POSCAR
pos2aBR
cp POSCAR_std POSCAR
The starndardized POSCAR for Bi2Se3:
SG 166 0.000 0.000 0.000 :Generated by pos2aBR for irvsp!
1.0
2.0690000000000000 1.1945377069533354 9.5466666666666651
-2.0690000000000000 1.1945377069533354 9.5466666666666651
-0.0000000000000001 -2.3890754139066708 9.5466666666666651
Bi Se
2 3
Direct
0.3990000000000000 0.3990000000000000 0.3990000000000000
0.6010000000000000 0.6010000000000001 0.6010000000000002
0.2060000000000000 0.2060000000000002 0.2060000000000003
0.7939999999999998 0.7940000000000002 0.7940000000000002
0.0000000000000000 0.0000000000000000 0.0000000000000000
Run VASP calculation to get WAVECAR and OUTCAR.
Use INCAR:
ISTART = 0
ICHARG = 2
IBRION=-1
NSW=0
ISYM=2
LSORBIT =.TRUE.
MAGMOM = 15*0.0
(for noSOC calcution, comment out the last two lines)
Run IRVSP to get irreducible representations at Gamma point.
irvsp -sg 166 -nb 47 50 > outir
Read the irreducible representations in output file.
knum = 1 kname= GM
k = 0.000000 0.000000 0.000000
The k-point name is GM
12 symmetry operations (module lattice translations) in space group 166
We do NOT classify the elements into calsses.
Tables can be found on website: http://www.cryst.ehu.es/.
1 GM : kname 0.00 0.00 0.00 : given in the conventional basis
1 : the existence of antiunitary symmetries. 1-exist; 0-no
Reality 1 2 3 4 5 6 7 8 9 10 11 12
1 GM1+ 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i
1 GM1- 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i
1 GM2+ 1.00+0.00i 1.00+0.00i 1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i
1 GM2- 1.00+0.00i 1.00+0.00i 1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i -1.00+0.00i 1.00+0.00i 1.00+0.00i 1.00+0.00i
1 GM3+ 2.00+0.00i -1.00+0.00i -1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i 2.00+0.00i -1.00+0.00i -1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i
1 GM3- 2.00+0.00i -1.00+0.00i -1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i -2.00+0.00i 1.00+0.00i 1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i
—————————————————————————————————————————————————-
0 GM4 1.00+0.00i -1.00+0.00i -1.00+0.00i 0.00-1.00i 0.00+1.00i 0.00-1.00i 1.00+0.00i -1.00+0.00i -1.00+0.00i 0.00-1.00i 0.00+1.00i 0.00-1.00i
0 GM5 1.00+0.00i -1.00+0.00i -1.00+0.00i 0.00+1.00i 0.00-1.00i 0.00+1.00i 1.00+0.00i -1.00+0.00i -1.00+0.00i 0.00+1.00i 0.00-1.00i 0.00+1.00i
0 GM6 1.00+0.00i -1.00+0.00i -1.00+0.00i 0.00-1.00i 0.00+1.00i 0.00-1.00i -1.00+0.00i 1.00+0.00i 1.00+0.00i 0.00+1.00i 0.00-1.00i 0.00+1.00i
0 GM7 1.00+0.00i -1.00+0.00i -1.00+0.00i 0.00+1.00i 0.00-1.00i 0.00+1.00i -1.00+0.00i 1.00+0.00i 1.00+0.00i 0.00-1.00i 0.00+1.00i 0.00-1.00i
-1 GM8 2.00+0.00i 1.00+0.00i 1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i 2.00+0.00i 1.00+0.00i 1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i
-1 GM9 2.00+0.00i 1.00+0.00i 1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i -2.00+0.00i -1.00+0.00i -1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i
elemt ,symmetry ops, exp(-i*k*taui), main axes
E 1 (+1.00 0.00i) ( 1.000, 0.000, 0.000)
C3 2 (+1.00 0.00i) ( 0.000, 0.000, 1.000)
C3 3 (+1.00 0.00i) ( 0.000, 0.000, 1.000)
C2 4 (+1.00 0.00i) ( 0.502, 0.865, 0.000)
C2 5 (+1.00 0.00i) ( 1.000, 0.000, 0.000)
C2 6 (+1.00 0.00i) ( 0.502,-0.865, 0.000)
I 7 (+1.00 0.00i) ( 1.000, 0.000, 0.000)
IC3 8 (+1.00 0.00i) ( 0.000, 0.000, 1.000)
IC3 9 (+1.00 0.00i) ( 0.000, 0.000, 1.000)
IC2 10 (+1.00 0.00i) ( 0.502, 0.865, 0.000)
IC2 11 (+1.00 0.00i) ( 1.000, 0.000, 0.000)
IC2 12 (+1.00 0.00i) ( 0.502,-0.865, 0.000)
bnd ndg eigval E 2 3 4 5 6 7 8 9 10 11 12
47 2 4.665438 2.00+0.00i 1.00+0.00i 1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i 2.00+0.00i 1.00+0.00i 1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i =GM8
49 2 5.114245 2.00+0.00i 1.00+0.00i 1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i -2.00+0.00i -1.00+0.00i -1.00+0.00i 0.00+0.00i 0.00+0.00i 0.00+0.00i =GM9