5
$\begingroup$

I'm planning to use epsilon.x code of Quantum ESPRESSO to calculate the dielectric function. For converged results, it is said to find the optimal values for nband and k points.

My procedure for this is as follows:

  1. Run self consistent (scf) calculate and save the results in ./outdir/BP.save

  2. Perform 3 nscf calculations at nband =100, nband= 200 and nband=300. Each nscf should read orbitals from previous run of scf and produce or save results in different directories. In this ways outdir is not over written for 3 nscf runs.

  3. Provide 3 different outdir or directories to epsilon.x and see results.

I have completed 1st step. I'm not sure how to implement step 2.

If there is any mistake in my procedure, mention it.

$\endgroup$

1 Answer 1

3
$\begingroup$

Quantum ESPRESSO uses the scf generated ./outdir/PREFIX.save/charge-density.xml or .hdf5 in the nscf calculation. It also uses the same prefix and outdir to write the new files (it overwrites). So I guess the following method should work to perform what you described in step 2:

(Let's assume you set outdir='./outdir/' and prefix='BP' in your scf calculation.)

  1. First, create a copy of the outdir directory and name it as SCF_outdir. Now, perform a regular nscf calculation setting nbnd=100 (it's nbnd, not nband). Leave the prefix and outdir as it is.
  2. After the calculation finishes, rename the outdir as nscf1_outdir and make a copy of the SCF_outdir as outdir. Perform another regular nscf calculation with nbnd=200.
  3. Similar to step 2, rename outdir as nscf2_outdir and make a copy of the SCF_outdir as outdir. Perform your 3rd nscf calculation with nbnd=300
  4. After the calculation finishes, rename outdir as nscf3_outdir.

In this way, you will have 4 different directories: one for the scf calculation and other 3 for the 3 different nscf calculations. For the epsilon.x, you will then leave the outdir='./outdir/' and prefix='BP' but just change the name of the corresponding nscf*_outdir to outdir.

After running epsilon.x, you will have four different output files: epsr_BP.dat, epsi_BP.dat, eels_BP.dat, and ieps_BP.dat. Copy them in a directory according to the nscf outdir you used. Then rerun epsilon.x with another nscf outdir and so on.

Apart from manually setting things in the input file, the workflow is like this:

pw.x < scf.in > scf.out
cp outdir SCF_outdir

pw.x < nscf_nbnd100.in > nscf_nbnd100.out
mv outdir nscf1_outdir
cp SCF_outdir outdir

pw.x < nscf_nbnd200.in > nscf_nbnd200.out
mv outdir nscf2_outdir
cp SCF_outdir outdir

pw.x < nscf_nbnd300.in > nscf_nbnd300.out
mv outdir nscf3_outdir

mv nscf1_outdir outdir
epsilon.x < epsilon.in > epsilon100.out
mkdir nbnd100
mv epsilon.out nbnd100/
mv *dat nbnd100/
mv outdir nscf1_outdir

mv nscf2_outdir outdir
epsilon.x < epsilon.in > epsilon200.out
mkdir nbnd200
mv epsilon.out nbnd200/
mv *dat nbnd200/
mv outdir nscf2_outdir

mv nscf3_outdir outdir
epsilon.x < epsilon.in > epsilon300.out
mkdir nbnd300
mv epsilon.out nbnd300/
mv *dat nbnd300/
mv outdir nscf3_outdir

$\endgroup$
9
  • $\begingroup$ @Rafi Ullah Do you know why we have to do convergence test for nbnd? Normally what I do, For example, silicon has four valance electrons, I select nbnd= 5, that means include only 1 empty band. I don't do convergence test for it (nbnd) $\endgroup$ Commented 2 days ago
  • $\begingroup$ @ Abdul Muhaymin, if you know about convergence issue for nbnd, you can also explain regarding that. $\endgroup$ Commented 2 days ago
  • $\begingroup$ @MuhammadHasan I don't know this. I know that k-point can heavily change the results so convergence is must. Sometimes the energy is converged but if you plot the dos figure, you will notice the dos figure is not converged and increasing k-point changes the shape. I am not sure why nbnd needs to be converged. At least in the scf output, it will just generate eigenvalue for higher and higher unoccupied states. Anyway, I choose 20% more than valence electron. In fact, I don't explicitly specify it. I use smearing, and when you use smearing, the default of nbnd is 20% more than valence electron $\endgroup$ Commented 2 days ago
  • 2
    $\begingroup$ The mathematical expression of Dielectric function also contains sum over excited states, in our case unoccupied Kohn sham orbitals. That's why we have to use converged nbnd value $\endgroup$
    – Rafi Ullah
    Commented 2 days ago
  • 1
    $\begingroup$ RafiUllah Thanks for the information. @MuhammadHasan, I found an example of what Rafi Ullah is talking about, here. I am not saying you have to do k-point convergence test against DOS. But after running SCF calculation, you may want to increase k-point little by little to see some converged shape. See this figure for an example of what I meant. $\endgroup$ Commented 2 days ago

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .