Calculation of the bandstructure of Si by means of DFT with different settings

connect to hypatia:
ssh -X EMPA-USER@jump1.empa.ch
ssh -X hypatia
module load python/2.7.12 

go to your scratch directory:

cd /mnt/scratch/your_username

and copy there the tar file of the exercise:

cp /home/cpi/exercise_11.tar ./
tar -xvf exercise_11.tar
cd exercise_11

You will find a different directory for each TASK

Please have a look at this web page

http://materialscloud.org/sssp/

where pseudopotentials for different elements of the periodic table can be found. For each pseudopotential several convergence test have been made, the use of the data contained in this webpage can be in general trusted, but additional tests are always a good praxis

Please also have a look at the webpage of quantum-espresso to find a detailed description of input parameters

http://www.quantum-espresso.org/

TASK_0

The batch script run contains the instruction to run a quantum-espresso DFT calculation for a conventional cell of Si (ibrav=1 for simple cubic cell). As you can see in the file, 8 atoms are included in the cell of parameter a=5.43A. The primitive cell (ibrav=2 for fcc) would contain only 2 atoms and would not be cubic. The script is meant to run a calculation to optimize the wavefunction of the system and to compute the total energy. A single k point, Gamma, is used for the summation over the Brillouin Zone.

edit the script run and identify the sections where
  • the lattice parameter is specified
  • the type of lattice (ibrav) is specified
  • the coordinates of the atoms are provided in crystal coordinates
  • the Monkhorst-Pack grid (in this case only Gamma point) is specified for the BZ sums
  • how many electrons do we have in the system?
  • how many occupied eigenvector do we have for each k-point (the occupation is printed in the output for each k-point after the energies of the eigenvalues belonging to the k-point

Submit the calculation to the queue

qsub run

PLEASE NOTE:

qstat | grep your_username

if in the 5th column you see

  • “Q” it means that your job is still waiting in the queue
  • “R” your job is running
  • “C” your job is completed

If you do not get anything your job was completed as well

Have a look to the output generated: si.out

  • identify where the symmetry operations used by the code are listed
  • identify the k-points used during the calculations
  • find where the eigenvalues (provided in eV) for each k-point are printed
  • find the total energy of the system

to find the total energy of the system you can also type:

grep "\!" si.out

to find the Fermi energy of the system you can also type:

grep "Fermi" si.out

TASK_0b, TASK_0c, TASK_1

The three tasks repeat the calculation of TASK_0 with a different sampling of the BZ in 0b a non shifted grid of 2x2x2 k-points is used, thus containing high symmetry points (so not ideal to have a accurate integration) in 0c the 2x2x2 grid is shifted and in TASK_1 a non shifted 3x3x3 grid is used.

have a look at the three different run files and submit all of them then write down the total energy that you get from the three different outputs

TASK_2

Here the run script contains the data to run a calculation for a large Si cell There are 216 atoms corresponding to 3x3x3 of the conventional cell (8 atoms per cell in the conventional cell thus 3*3*3*8 atoms in total) used in the previous calculations

submit the calculation (it will take ~10 minutes to be completed) compare the total energy (THAT WE CALL E27)obtained in this calculation with the ones obtained in task_0,0b,0c,1
  • why the total energy obtained in TASK_1 is closer to E27/27 compared to the energies obtained in TASKS 0,0b,0c?
  • Compare the eigenvalues that you have now at the Gamma k-point with the eigenvalues you had on the different k-points for the calculation of TASK_1. All the eigenvalues obtained in TASK_1, that are subdivided in different k-points are now grouped in a single k-point.
  • How many k-points are used in the calculation of TASK_1 as listed in si.out? why not 27?

TASK_3

The script run performs an accurate calculation (Monkhorst-Pack grid 8x8x8) to obtain a accurate estimate of the charge density (thus the hamiltonian) of the system (si.out). We use here for the simulation the primitive cell with two atoms per cell. The data obtained are used to compute the bandstructure of Si along the symmetry lines L-G and G-X. (the output is written in the file sibands.out, where you will find all the eigenvalues for the 100 k-points specified to sample the symmetry lines) In the input I specified in “crystal coordinates” (but units of the reciprocal lattice vectors not units of the unit cell vectors) the 100 k-points used to sample the L-G and G-X symmetry lines. The k-points in sibands.out are given in cartesian coordinates in units of 2pi/a.(as will be used in TASK_5)

submit the calculation
qsub run

once THE CALCULATION IS COMPLETED plot the bands

grep "Fermi" si.out
python bands.py

you will obtain the png file bands.png

TASK_4 TASK_5

The aim of tasks 4 and 5 is to get familiar with what happens to the representation of bandsturctures if we change the simulation cell. In task 4 I assign to the conventional cell of Si a large lattice parameter, the 8 Si atoms of the cell will then be quite far one each other and will almost not interact This is of course not a correct representation of Bulk Si, it is instructive to see that the bands will reduce to flat lines corresponding to the s and p orbitals of the isolated Si atoms

following the procedure of TASK_3 submit the calculation and plot the bandstructure
qsub run

wait for all calculations to be cmpleted and

grep "Fermi" si.out
python bands.py

In TASK_5, instead, we use a correct conventional cell (8 atoms in fcc positions with a=5.43A) to compute the bandstructure. In order to be able to compare the bandstructure of TASK_5 with the one obtained in TASK_3 (where the primitive cell with only two atoms per cell was used) here i specify in the input the k-points of the path in BZ directly in cartesian coordinates.(in units of 1*pi/a) This is the simplest way to be sure that, despite the shape of the BZ in TASK_3 will be different from the one in TASK_5 we are computing the bandstructure in an equivalent region of the reciprocal space.

run the calculation, plot the bands and compare with the bands obtained in TASK_3: how many filled bands do you have now (number of bands below fermi level) and why?

Compare the vectors of the simulation cell and the vectors of the reciprocal cell as printed in the output (si.out) with the same quantities present in the output of TASK_3