\frac{NdChar}{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}\frac{NdChar}{1 + e^{\frac{1}{\sqrt[3]{KbT} \cdot \sqrt[3]{KbT}} \cdot \frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{\sqrt[3]{KbT}}}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
double r243938 = NdChar;
double r243939 = 1.0;
double r243940 = Ec;
double r243941 = Vef;
double r243942 = r243940 - r243941;
double r243943 = EDonor;
double r243944 = r243942 - r243943;
double r243945 = mu;
double r243946 = r243944 - r243945;
double r243947 = -r243946;
double r243948 = KbT;
double r243949 = r243947 / r243948;
double r243950 = exp(r243949);
double r243951 = r243939 + r243950;
double r243952 = r243938 / r243951;
double r243953 = NaChar;
double r243954 = Ev;
double r243955 = r243954 + r243941;
double r243956 = EAccept;
double r243957 = r243955 + r243956;
double r243958 = -r243945;
double r243959 = r243957 + r243958;
double r243960 = r243959 / r243948;
double r243961 = exp(r243960);
double r243962 = r243939 + r243961;
double r243963 = r243953 / r243962;
double r243964 = r243952 + r243963;
return r243964;
}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
double r243965 = NdChar;
double r243966 = 1.0;
double r243967 = 1.0;
double r243968 = KbT;
double r243969 = cbrt(r243968);
double r243970 = r243969 * r243969;
double r243971 = r243967 / r243970;
double r243972 = Ec;
double r243973 = Vef;
double r243974 = r243972 - r243973;
double r243975 = EDonor;
double r243976 = r243974 - r243975;
double r243977 = mu;
double r243978 = r243976 - r243977;
double r243979 = -r243978;
double r243980 = r243979 / r243969;
double r243981 = r243971 * r243980;
double r243982 = exp(r243981);
double r243983 = r243966 + r243982;
double r243984 = r243965 / r243983;
double r243985 = NaChar;
double r243986 = Ev;
double r243987 = r243986 + r243973;
double r243988 = EAccept;
double r243989 = r243987 + r243988;
double r243990 = -r243977;
double r243991 = r243989 + r243990;
double r243992 = r243991 / r243968;
double r243993 = exp(r243992);
double r243994 = r243966 + r243993;
double r243995 = r243985 / r243994;
double r243996 = r243984 + r243995;
return r243996;
}



Bits error versus NdChar



Bits error versus Ec



Bits error versus Vef



Bits error versus EDonor



Bits error versus mu



Bits error versus KbT



Bits error versus NaChar



Bits error versus Ev



Bits error versus EAccept
Results
Initial program 0.0
rmApplied add-cube-cbrt0.0
Applied *-un-lft-identity0.0
Applied times-frac0.0
Final simplification0.0
herbie shell --seed 2020089 +o rules:numerics
(FPCore (NdChar Ec Vef EDonor mu KbT NaChar Ev EAccept)
:name "Bulmash initializePoisson"
:precision binary64
(+ (/ NdChar (+ 1 (exp (/ (- (- (- (- Ec Vef) EDonor) mu)) KbT)))) (/ NaChar (+ 1 (exp (/ (+ (+ (+ Ev Vef) EAccept) (- mu)) KbT))))))