About me

Thursday, February 11, 2016

Matlab code to calculate silicon band structure using empirical pseudopotential method

This study note and matlab code are totally followed the file from
(1) https://nanohub.org/resources/8405
(2) https://www.ece.nus.edu.sg/stfpage/eleadj/pseudopotential.htm

Also, another great document about this topic can be found at
http://www.scientificpython.net/uploads/1/1/5/9/11598566/epm.pdf

To get the bandstructure start from schrodinger equation


And simplify the Hamiltonian to the following form


Two problem pop up here. How to represent reciprocal lattice vector G and potential V.
For reciprocal lattice vector G, please refer to REF(2).
For potential V, use empirical pseudopotential method and can simplify it to


The final result is not very accurate. Still need works on it.

Tuesday, February 9, 2016

Converge test in Quantum Espresso

Several parameters (like ecutwfc, kpoints and also a reasonable pseudopotential) need to be determined before running ultimate model. To determine these, we need to make convergence test.

1. Energy cutoff 
ecutwfc (Kinetic energy cutoff for wavefunctions) and ecutrho (Kinetic energy cutoff for charge density and potential) are set according to the pseudopotential. When using ultrasoft PP, ecutrho should be 8~12*ecutwfc. Under norm-conserving PP, ecutrho don't need to be assigned. Just use the default value = 4*ecutwfc. 
To get ecutwfc, do a convergence test by input different value of ecutwfc. Or by a loop, like the following. Don't forget the last "done".
 for cutoff in 16 20 24 28 32 ; do  
  cat > scf.$cutoff.in <<EOF  
  ! Your other code  
   ecutwfc=$cutoff  
  ! ...  
 EOF  
 pw.x < scf.$cutoff.in > scf.$cutoff.out  
 Done  

Here shows a result use Si model


2. kpoints
You can write you own kpoints or generate a list of it by kpoints.x or use "automatic" to make a kpoints mesh. Again, to decide how dense the mesh should be, use the loop above to do convergence test.
Here shows a test result use Si model.


Some other good answers about kpts and ecutwfc
(1) https://www.researchgate.net/post/Anyone_have_experience_with_K-point_sampling_for_electronic_and_phonon_structure_calculations
(2) http://qe-forge.org/pipermail/pw_forum/2013-February/101122.html

3. degauss/smearing
Smearing method and deguess will affect converge speed.
For DOS calculation, use occupation='tetrahedra'

4. Problem about convergence (screenshot form pwscf manual)

5. mixing_beta
This is answered by Prof Nicola Marzari
http://qe-forge.org/pipermail/pw_forum/2014-January/103176.html
For problem on relax a model about force
http://qe-forge.org/pipermail/pw_forum/2009-March/086638.html

Reference:
(1) http://www.tcl.t.u-tokyo.ac.jp/pdf/2014_lm/1st_day_pm.pdf
(2) http://www.quantum-espresso.org/wp-content/uploads/Doc/pw_user_guide.pdf