I'm working on a special algorithm to implement a more accurate effective mass calculation for hole carriers in silicon in Mathematica. This rather involved algorithm uses incomplete Fermi-Dirac Integrals of the form:
$$\mathscr F_j(x,b)=\frac1{\Gamma(j+1)}\int_b^\infty \frac{t^j}{e^{t-x}+1}\mathrm dt$$
Fincomplete[j_, x_, b_] :=1/Gamma[j + 1] Integrate[t^j/(E^(t - x) + 1), {t, b, ∞},
Assumptions -> j > 0]
A call to this function with $b=0$ yields the complete Fermi-Dirac integral representation by the nicely implemented PolyLog
function within Mathematica:
In[1]:= Fincomplete[j, x, 0]
Out[1]:= -PolyLog[1 + j, -E^x]
However, if one wants to evaluate the incomplete Fermi-Dirac integral, the expression stays unevaluated, indicating that there is no straightforward solution available.
In[2]:= Fincomplete[j,x,b]
Out[2]:= Integrate[t^j/(1 + E^(t - x)), {t, b, ∞}, Assumptions -> j > 0]/Gamma[1 + j]
Now, my question(s):
Any idea which of the multitude of mathematical functions within Mathematica could be leveraged to implement the incomplete Fermi-Dirac integral? Could the Nielsen generalized polylogarithm function mentioned within the Mathematica help system be of any service?
Does anybody have this integral already implemented? There are some series expansions quoted on the web, e.g. Computation of the complete and incomplete Fermi-Dirac integral. However, the reference quotes that the series expansions converge rather slowly, and I would like to leave the implementation of the reference above as last resort, since this would take some time and maybe there is an easier way in Mathematica?
Thanks in advance for all of your help!
NIntegrate[]
for the purpose.Method -> "DoubleExponential"
is particularly convenient for the task. $\endgroup$