\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{NaChar}{\sqrt[3]{\left(\left(e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1\right) \cdot \left(e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1\right)\right) \cdot \left(e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1\right)}} + \frac{NdChar}{1 + e^{\frac{-\left(Ec - \left(EDonor + \left(mu + Vef\right)\right)\right)}{KbT}}}double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
double r65825781 = NdChar;
double r65825782 = 1.0;
double r65825783 = Ec;
double r65825784 = Vef;
double r65825785 = r65825783 - r65825784;
double r65825786 = EDonor;
double r65825787 = r65825785 - r65825786;
double r65825788 = mu;
double r65825789 = r65825787 - r65825788;
double r65825790 = -r65825789;
double r65825791 = KbT;
double r65825792 = r65825790 / r65825791;
double r65825793 = exp(r65825792);
double r65825794 = r65825782 + r65825793;
double r65825795 = r65825781 / r65825794;
double r65825796 = NaChar;
double r65825797 = Ev;
double r65825798 = r65825797 + r65825784;
double r65825799 = EAccept;
double r65825800 = r65825798 + r65825799;
double r65825801 = -r65825788;
double r65825802 = r65825800 + r65825801;
double r65825803 = r65825802 / r65825791;
double r65825804 = exp(r65825803);
double r65825805 = r65825782 + r65825804;
double r65825806 = r65825796 / r65825805;
double r65825807 = r65825795 + r65825806;
return r65825807;
}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
double r65825808 = NaChar;
double r65825809 = Ev;
double r65825810 = Vef;
double r65825811 = r65825809 + r65825810;
double r65825812 = mu;
double r65825813 = r65825811 - r65825812;
double r65825814 = EAccept;
double r65825815 = r65825813 + r65825814;
double r65825816 = KbT;
double r65825817 = r65825815 / r65825816;
double r65825818 = exp(r65825817);
double r65825819 = 1.0;
double r65825820 = r65825818 + r65825819;
double r65825821 = r65825820 * r65825820;
double r65825822 = r65825821 * r65825820;
double r65825823 = cbrt(r65825822);
double r65825824 = r65825808 / r65825823;
double r65825825 = NdChar;
double r65825826 = Ec;
double r65825827 = EDonor;
double r65825828 = r65825812 + r65825810;
double r65825829 = r65825827 + r65825828;
double r65825830 = r65825826 - r65825829;
double r65825831 = -r65825830;
double r65825832 = r65825831 / r65825816;
double r65825833 = exp(r65825832);
double r65825834 = r65825819 + r65825833;
double r65825835 = r65825825 / r65825834;
double r65825836 = r65825824 + r65825835;
return r65825836;
}



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
Simplified0.0
rmApplied add-cbrt-cube0.0
Final simplification0.0
herbie shell --seed 2019124 +o rules:numerics
(FPCore (NdChar Ec Vef EDonor mu KbT NaChar Ev EAccept)
:name "Bulmash initializePoisson"
(+ (/ NdChar (+ 1 (exp (/ (- (- (- (- Ec Vef) EDonor) mu)) KbT)))) (/ NaChar (+ 1 (exp (/ (+ (+ (+ Ev Vef) EAccept) (- mu)) KbT))))))