\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}}}NdChar \cdot \frac{1}{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}}}double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
double r401702 = NdChar;
double r401703 = 1.0;
double r401704 = Ec;
double r401705 = Vef;
double r401706 = r401704 - r401705;
double r401707 = EDonor;
double r401708 = r401706 - r401707;
double r401709 = mu;
double r401710 = r401708 - r401709;
double r401711 = -r401710;
double r401712 = KbT;
double r401713 = r401711 / r401712;
double r401714 = exp(r401713);
double r401715 = r401703 + r401714;
double r401716 = r401702 / r401715;
double r401717 = NaChar;
double r401718 = Ev;
double r401719 = r401718 + r401705;
double r401720 = EAccept;
double r401721 = r401719 + r401720;
double r401722 = -r401709;
double r401723 = r401721 + r401722;
double r401724 = r401723 / r401712;
double r401725 = exp(r401724);
double r401726 = r401703 + r401725;
double r401727 = r401717 / r401726;
double r401728 = r401716 + r401727;
return r401728;
}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
double r401729 = NdChar;
double r401730 = 1.0;
double r401731 = 1.0;
double r401732 = Ec;
double r401733 = Vef;
double r401734 = r401732 - r401733;
double r401735 = EDonor;
double r401736 = r401734 - r401735;
double r401737 = mu;
double r401738 = r401736 - r401737;
double r401739 = -r401738;
double r401740 = KbT;
double r401741 = r401739 / r401740;
double r401742 = exp(r401741);
double r401743 = r401731 + r401742;
double r401744 = r401730 / r401743;
double r401745 = r401729 * r401744;
double r401746 = NaChar;
double r401747 = Ev;
double r401748 = r401747 + r401733;
double r401749 = EAccept;
double r401750 = r401748 + r401749;
double r401751 = -r401737;
double r401752 = r401750 + r401751;
double r401753 = r401752 / r401740;
double r401754 = exp(r401753);
double r401755 = r401731 + r401754;
double r401756 = r401746 / r401755;
double r401757 = r401745 + r401756;
return r401757;
}



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 div-inv0.0
Final simplification0.0
herbie shell --seed 2020046
(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))))))