Dear friends,
In this blog, I will have posted about unitcell optimization. Let us go to the input file, as usual, we used to keep the calculation as ‘vc-relax’- which states that vary cell parameters. Previously we may found some files like “wfc” that. To avoid such interruption we are going to use the prefix and outdir controls. The outdir directory only meant for temporary file storage. Then etot_conv_thr and forc_conv_thr are the energy and force convergence threshold with respectively. Both are the accuracy controls for our calculation. The force convergence should be less than the energy convergence. Otherwise, our computation cost will drain.
In the system controls we are going to provide the cell dimension using celldm or a . Here we are using the simple cubic Si crystal structure. So I give a = 7 (unoptimized lattice parameter.) but the reference is we known as a = 5.4683 Å.
If you want to allow the atoms to move inside the unitcell you can use the &ions input. Mainly this used in the molecular dynamic case such as BFGS. Here we do not want such confusions. So let it be empty life make easy…!!
In the &cell input we have to implement the freedom of unitcell parameter. I used the unitcell can optimize according to the ibrav. So the degree of freedom is restricted no more many body problems. { cell_dofree = ‘ ibrav’ }
We have to implement the same thing in the movement of the atoms. So better we convert the atomic positions into ( alat ) atomic lattice from angstrom. The restriction for the movement of the atoms along the axis can be controlled by the last three digits of 0 0 0 in the atomic position.
Note: we are not treating and care of K_points but if you are using 8 8 8 0 0 0 points for scf calculation you must use as 4 4 4 0 0 0 points.
Now we can run the program following commands.
$ mpiexec –np 2 pw.exe < relax.in > relax.out
Here, the input file saved as in the name of relax.in. We can wait for the program has to run.
Suppose if you have WSL (windows system linux) you can see the output file by following command in WSL $ tail –f relax.out . Now our cell dimension can be seen in the output file as celldm(1) = 10.34723695.
If you are feel not well the use WSL cmd as $ grep “celldem(1) =” relax.out . I have used the command for searching the pressure variation $ grep “ P=” relax.out. if the pressure is in negative scale then our unitcell volume is large similarly for small volume of unitcell pressure will be high.
Now let us interpret our results to check the following figure. The calculated values obtained from the relax.out file.
I hope this blog may help you. Thank you for supporting my blog.....!!🥰