VA00 / Generalized-Fermi-Dirac-integrals

Provide reliable, accurate down to several ULP's and fast numerical framework to compute generalized Fermi-Dirac integrals aiming at full floating-point parameter coverage, generality, precision control and speed.
MIT License
0 stars 0 forks source link

Zero returned for _m_n dbl_exp derivatives #2

Closed VA00 closed 2 years ago

VA00 commented 2 years ago

For high-order individual _m_n derivatives dbl_exp integration never start and 0.0 is returned. In other versions error control was from F_k. Cause is unclear, possibly integrand is identically zero?

VA00 commented 2 years ago

This happens for eta>=64. Expected vs obtained output: eta=64.000000 Expected (from Ffermi_derivatives_matrix) 4.88197642904364557e+02, 5.97301187603986179e+01, -7.31869040622560263e+00, 2.69256003024778146e+00, 1.13566928211756721e+01, 1.40857769470013228e+00, -1.74706778602333634e-01, 8.80712635746036532e-02, 1.10943500121898526e-02, -6.83536522917722465e-04, We got this from Ffermi_derivatives_m_n: 4.88197642904364557e+02, 5.97301187603986179e+01, -7.31869040622560529e+00, 2.69256003024778146e+00, 0.00000000000000000e+00, 0.00000000000000000e+00, 0.00000000000000000e+00, 0.00000000000000000e+00, 0.00000000000000000e+00, 0.00000000000000000e+00

VA00 commented 2 years ago

Setting initial h=log(eta), i.e., approximate peak position of the integrand resolves problem.