Class fermi_dirac_integ_bf (o2scl)¶
-
template<class fp_t, size_t max1, size_t max2, size_t max3, class fp1_t, class fp2_t, class fp3_t>
class fermi_dirac_integ_bf¶ Fermi-Dirac integral by brute force.
This class seems to work well, and can produce results at high-precision, but has difficulty with large arguments.
Todo
In class fermi_dirac_integ_bf: implement degenerate and nondegenerate expansions.
Public Types
-
typedef boost::multiprecision::cpp_dec_float_50 cpp_dec_float_50¶
-
typedef inte_transform<funct_cdf50, inte_adapt_cern<funct_cdf50, inte_gauss56_cern<funct_cdf50, cpp_dec_float_50, inte_gauss56_coeffs_float_50<cpp_dec_float_50>>, 2000, cpp_dec_float_50>, cpp_dec_float_50> inte_t¶
Public Functions
-
inline fermi_dirac_integ_bf()¶
-
inline int calc_1o2_ret_full(fp_t y, fp_t &res, fp_t &err, int &method)¶
Fermi-Dirac integral of order \( 1/2 \).
-
inline int calc_m1o2_ret_full(fp_t y, fp_t &res, fp_t &err, int &method)¶
Fermi-Dirac integral of order \( -1/2 \).
-
inline int calc_3o2_ret_full(fp_t y, fp_t &res, fp_t &err, int &method)¶
Fermi-Dirac integral of order \( 3/2 \).
-
inline int calc_2_ret_full(fp_t y, fp_t &res, fp_t &err, int &method)¶
Fermi-Dirac integral of order \( 2 \).
Public Members
-
fermi_dirac_integ_direct<fp_t, std::function<fp1_t(fp1_t)>, max1, fp1_t> fdi1¶
Lowest precision integrator.
-
fermi_dirac_integ_direct<fp_t, std::function<fp2_t(fp2_t)>, max2, fp2_t> fdi2¶
Medium precision integrator.
-
fermi_dirac_integ_direct<fp_t, std::function<fp3_t(fp3_t)>, max3, fp3_t> fdi3¶
Highest precision integrator.
-
bool err_nonconv¶
If true, then convergence failures call the error handler (default true)