To calculate the absorption spectra of a structure using Quantum Espresso, you have some options.
The simplest approximation is Independent Particle Approximation (IPA) which allows us to describe single-particle excitations. For this purpose, first, perform a self-consistent field ground-state calculation for your structure using the pw.x code. Next, perform a calculation of the absorption spectrum using the epsilon.x code.
***************************************
comands:
1- pw.x < scf.in > scf.out
2- epsilon.x < epsilon.in > epsilon.out
***************************************
The code epsilon.x produces four files:
epsr.dat – Real part of the dielectric function
epsi.dat – Imaginary part of the dielectric function
eels.dat – Electron energy loss spectrum
ieps.dat – Response computed on the imaginary axis of frequency
Finally, you can calculate the absorption spectrum of your structure with the Real and Imaginary parts of the dielectric function.
There is also another method. The turbo_davidson.x program allows us to calculate the absorption spectra of molecules using time-dependent density functional perturbation theory (TDDFPT). For more information visit the website below.
So far as I know, we can calculate the electron density, band structure, Fermi Energy, magnetic properties, phonon density etc can be calculated using Quantum Espresso.
I don't know if optical properties like refractive index, absorption, scattering etc can be calculated by Quantum Espresso.
You neec to get your correct input file then run scf calculations followed by epsilon.x calculations. Make sure all calculations are within the same directory
Nice explanation Sir, Does the same method is applicable for the calculations of optical properties for metallic systems. Could you give any useful reference to get absorption coefficient from the real and imaginary part.
Dear sir, I want to run the epsilon.x calculation to observe the optical properties of my sample. but when it run it shows an energy_grid error. Did you know how to fix that error ? Thank you.
In your scf calculations, you should disable the usage of k => -k symmetry (time reversal) in your k-point generation and do not use symmetry. To do these, set nosym and noinv to .true.
If these don't work, you can reoptimize your system while setting nosym and noinv to .true....I hope this helps.
I want to calculate dielectric function, refractive index, conductivity, absorption, reflectivity and loss function. I read that epsilon.x dont work with Ultrasoft PPs (that I'm using in my calculations).
There are other functions incan use to calculate these properties? What can I do to get them?
To calculate the optical properties of a material with Quantum Espresso using the epsilon.x input, you need to follow these steps:
Perform a ground state calculation: Before calculating the optical properties, you need to perform a ground state calculation using the pw.x input to obtain the wave functions and eigenvalues.
Generate the dielectric matrix: Use the epsilon.x input to generate the dielectric matrix for the material. The input file should contain the same k-point mesh as the ground state calculation.
Calculate the optical properties: Use the dielectric matrix to calculate the optical properties of the material. The optical properties that can be calculated using epsilon.x include the real and imaginary parts of the dielectric function, absorption coefficient, refractive index, and reflectivity.
Here are the detailed computational details for the epsilon.x input:
Input file: Create a new input file for the epsilon.x calculation. The input file should contain the following information:
&input prefix='PREFIX', outdir='.', filplot='PREFIX.eps', / &epsil outdir='./' prefix='PREFIX' lsda=.true. noinv=.true. / CELL_PARAMETERS a1 x y z a2 x y z a3 x y z ATOMIC_SPECIES SYMBOL mass pseudo_file ATOMIC_POSITIONS (crystal) SYMBOL x y z SYMBOL x y z ...
Prefix: The prefix parameter specifies the prefix used for the file names generated by the calculation.
Outdir: The outdir parameter specifies the output directory for the calculation.
Filplot: The filplot parameter specifies the file name for the plot of the dielectric function.
Lsda: The lsda parameter specifies whether to perform a spin-polarized calculation. Set it to .true. for spin-polarized calculation and .false. for non-spin-polarized calculation.
Noinv: The noinv parameter specifies whether to include the local field effects. Set it to .true. to exclude the local field effects and .false. to include them.
Cell parameters: The CELL_PARAMETERS section specifies the lattice vectors of the unit cell in angstroms.
Atomic species: The ATOMIC_SPECIES section specifies the atomic species, their masses, and the pseudopotential files.
Atomic positions: The ATOMIC_POSITIONS section specifies the atomic positions in crystal coordinates.
Run the calculation: Run the epsilon.x calculation using the following command:
$ mpirun -np N epsilon.x < PREFIX.in > PREFIX.out
where N is the number of processors to use, PREFIX.in is the name of the input file, and PREFIX.out is the name of the output file.
Analyze the results: Once the calculation is complete, you can analyze the results to obtain the optical properties of the material.
I hope this helps! Let me know if you have any further questions.