I would like to obtain the exciton Residuals values I get from ypp sort by using the methods in yambopy. For instance, in an E_sorted output file for a calculation on MoS2 monolayer, I read
so that, for example, the residual for exciton state 3 is Maximum Residual Value*Strength[3] = 0.02157817.# Maximum Residual Value = .10860E+00
#
# E [ev] Strength Index
#
1.9491466 0.28264236E-10 1.0000000
1.9498562 0.25957868E-10 2.0000000
1.97526753 0.198694035 3.00000000
However, if I read the residuals in yambopy and apply all the prefactors as in the get_chi method in excitondb.py, i.e.
where yexc is a YamboExcitonDB object, I get a very different value, 0.00186290.d3k_factor = yexc.lattice.rlat_vol/yexc.lattice.nkpoints
yexc.l_residual*yexc.r_residual*spin_degen/(2*np.pi)**3 * d3k_factor * (4*np.pi) / q0norm**2
I'm pretty sure I'm missing some factors, however I haven't been able to figure out what and where.
Could you please help me out? Thank you very very much for your attention!
Michele