Header Ads Widget

Ab initio Calculations Using Q-Espresso Code

Last Posts

10/recent/ticker-posts

How to calculate the Fermi Surface

 In this tutorial, we will calculate the fermi surface of copper Cu. We need to do some calculations as follows:

pw.scf.cu.in

&control
calculation = "scf",
prefix = "cu",
pseudo_dir = "./",
outdir = "/tmp/cu/"
/

&system
ibrav = 2,
celldm(1) = 6.678,
nat = 1,
ntyp = 1,
ecutwfc = 40,
ecutrho = 300,
occupations = "smearing",
smearing = "mp",
degauss = 0.01,
nbnd = 16
/

&electrons
conv_thr = 1e-9,
/

ATOMIC_SPECIES
Cu 63.546 cu_pbe_v1.2.uspp.F.UPF

ATOMIC_POSITIONS alat
Cu 0.00 0.00 0.00

K_POINTS automatic
8 8 8 1 1 1

 

You can download the pseudopotential from here cu_pbe_v1.2.uspp.F.UPF

Do the scf calculation

pw.x -in pw.scf.cu.in > pw.scf.cu.out      # for serial calculation
mpirun -np 4 pw.x -in pw.scf.cu.in > pw.scf.cu.out    # for parallel calculation 

 

 Next we perform bands calculation over dense uniform k-grid:

 pw.bands.cu.in

&control
calculation = "bands",
prefix = "cu",
pseudo_dir = "./",
outdir = "/tmp/cu/"
/

&system
ibrav = 2,
celldm(1) = 6.678,
nat = 1,
ntyp = 1,
ecutwfc = 40,
ecutrho = 300,
occupations = "smearing",
smearing = "mp",
degauss = 0.01,
nbnd = 16
/

&electrons
conv_thr = 1e-9,
/

ATOMIC_SPECIES
Cu 63.546 Cu_ONCV_PBE-1.0.oncvpsp.upf

ATOMIC_POSITIONS alat
Cu 0.00 0.00 0.00

K_POINTS automatic
30 30 30 0 0 0

 

pw.x -in pw.bands.cu.in > pw.bands.cu.out    #  for serial calculation
mpirun -np 4 pw.x -in pw.bands.cu.in > pw.bands.cu.out   # for parallel calculation

 

Finally, we process the data with fs.x post processing tool. Below is the input file:  

fs.cu.in

&fermi
outdir = "/tmp/cu/"
prefix = "cu"
/
 
fs.x -in fs.cu.in > fs.cu.out      # for serial calculation
mpirun -np 4 fs.x -in fs.cu.in > fs.cu.out  # for parallel calculation

 

 We can visualize the output file cu_fs.bxsf using xcrysdens program:

xcrysden --bxsf cu_fs.bxsf

 

We get the following picture:



 

Post a Comment

0 Comments