I have probably asked this question twice and my follow-up comment was deleted by the moderator, claiming that it is not an answer to the question. I will ask it once more, trying to be as clear as possible this time. The function I am dealing with is the local density of states (LDOS) [Please see below]. It is the first diagonal element of a matrix; this matrix is the famous Green function. The definition of the LDOS is the Lim (x->0+) (Im[Gll]), where Gll represents the diagonal elements of the matrix. In these kinds of calculations, they usually add an infinitesimal imaginary part to the frequency (call this part 'x') and take the limit. Obviously performing this limit will give 0 for all values of the frequency. @thorimur and @LukasLang have suggested : Limit[Rationalize[expr] /. Solve[0 == (Rationalize[expr] /. x -> 0 // Denominator)], x -> 0, Direction -> "FromAbove"] // N
. However, this also gave a zero, which is not very surprising.
I have tried taking x to be very small but not exactly 0. It obviously works, but then how small should x be? Taking different 'small' values leads to different results: for example, results corresponding to x=0.0001 are different from those corresponding to x=0.0000001. My question is how to perform such an operation in Mathematica? Any help would be highly appreciated. The expression is: (Omega is the frequency. I have already changed Omega to omega + I *x):
(3449.6 - 5568.21 (I x + Ω) +
3674.52 (I x + Ω)^2 -
1269.68 (I x + Ω)^3 +
242.537 (I x + Ω)^4 -
24.3112 (I x + Ω)^5 + (I x + \
Ω)^6)/(-23904.9 + 45528.9 (I x + Ω) -
35519.1 (I x + Ω)^2 +
14741.9 (I x + Ω)^3 -
3515.16 (I x + Ω)^4 +
480.263 (I x + Ω)^5 -
34.5886 (I x + Ω)^6 + (I x + Ω)^7)
Edit
the question so that anyone interested in the question will see the clarification. $\endgroup$