How to plot BSEFATBAND for 2D
Posted: Sat Sep 02, 2023 7:28 am
Dear vasp community,
I am trying perform the BSE calculation on the top of GW for 2D hexagonal crystal structure. As a reference of BSE calculations, I am following the reference given in VASPWIKI for BSEFATBAND.
wiki/index.php/Plotting_the_BSE_fatband_structure_of_Si
However, I am having difficulty in understanding how to plot the BSEFATBAND. In the case of Si (bulk)), the following script is used to extract the bands along G to L and G to X.
"
1- #!/bin/bash
2- NBSE=1 #Select the BSE eigenvector of interest.
3- BSIZE=$(head -n 1 BSEFATBAND|awk '{print $1}') # The BSE product basis size.
4- i=`echo "($BSIZE+1)*$NBSE+1"|bc`
5- head -n $i BSEFATBAND | tail -n $BSIZE > BSE-$NBSE.dat #Cut out the selected eigenstate.
6- awk <BSE-$NBSE.dat ' { if ($1==$2 && $3==$2) print sqrt($1*$1+$2*$2+$3*$3), $4, $5, $6 }' >bands-GL.dat
7- awk <BSE-$NBSE.dat ' { if ($1==$3 && $2==0.0) print sqrt($1*$1+$2*$2+$3*$3), $4, $5, $6 }' >bands-GX.dat
"
My first question is from this example.
How the condition (Line#6 and Line#7) are written to extract the bands along G to L and G to X.
My second question is:
How will this condition be modified if I want to extract bands along high symmetry points K → G → M for 2D hexagonal structure like. Kindly help me in this regard.
I am trying perform the BSE calculation on the top of GW for 2D hexagonal crystal structure. As a reference of BSE calculations, I am following the reference given in VASPWIKI for BSEFATBAND.
wiki/index.php/Plotting_the_BSE_fatband_structure_of_Si
However, I am having difficulty in understanding how to plot the BSEFATBAND. In the case of Si (bulk)), the following script is used to extract the bands along G to L and G to X.
"
1- #!/bin/bash
2- NBSE=1 #Select the BSE eigenvector of interest.
3- BSIZE=$(head -n 1 BSEFATBAND|awk '{print $1}') # The BSE product basis size.
4- i=`echo "($BSIZE+1)*$NBSE+1"|bc`
5- head -n $i BSEFATBAND | tail -n $BSIZE > BSE-$NBSE.dat #Cut out the selected eigenstate.
6- awk <BSE-$NBSE.dat ' { if ($1==$2 && $3==$2) print sqrt($1*$1+$2*$2+$3*$3), $4, $5, $6 }' >bands-GL.dat
7- awk <BSE-$NBSE.dat ' { if ($1==$3 && $2==0.0) print sqrt($1*$1+$2*$2+$3*$3), $4, $5, $6 }' >bands-GX.dat
"
My first question is from this example.
How the condition (Line#6 and Line#7) are written to extract the bands along G to L and G to X.
My second question is:
How will this condition be modified if I want to extract bands along high symmetry points K → G → M for 2D hexagonal structure like. Kindly help me in this regard.