double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
double r44458548 = NdChar;
double r44458549 = 1.0;
double r44458550 = Ec;
double r44458551 = Vef;
double r44458552 = r44458550 - r44458551;
double r44458553 = EDonor;
double r44458554 = r44458552 - r44458553;
double r44458555 = mu;
double r44458556 = r44458554 - r44458555;
double r44458557 = -r44458556;
double r44458558 = KbT;
double r44458559 = r44458557 / r44458558;
double r44458560 = exp(r44458559);
double r44458561 = r44458549 + r44458560;
double r44458562 = r44458548 / r44458561;
double r44458563 = NaChar;
double r44458564 = Ev;
double r44458565 = r44458564 + r44458551;
double r44458566 = EAccept;
double r44458567 = r44458565 + r44458566;
double r44458568 = -r44458555;
double r44458569 = r44458567 + r44458568;
double r44458570 = r44458569 / r44458558;
double r44458571 = exp(r44458570);
double r44458572 = r44458549 + r44458571;
double r44458573 = r44458563 / r44458572;
double r44458574 = r44458562 + r44458573;
return r44458574;
}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
double r44458575 = NaChar;
double r44458576 = Ev;
double r44458577 = Vef;
double r44458578 = r44458576 + r44458577;
double r44458579 = mu;
double r44458580 = r44458578 - r44458579;
double r44458581 = EAccept;
double r44458582 = r44458580 + r44458581;
double r44458583 = KbT;
double r44458584 = r44458582 / r44458583;
double r44458585 = exp(r44458584);
double r44458586 = 1.0;
double r44458587 = r44458585 + r44458586;
double r44458588 = r44458575 / r44458587;
double r44458589 = NdChar;
double r44458590 = Ec;
double r44458591 = EDonor;
double r44458592 = r44458579 + r44458577;
double r44458593 = r44458591 + r44458592;
double r44458594 = r44458590 - r44458593;
double r44458595 = r44458594 / r44458583;
double r44458596 = -r44458595;
double r44458597 = exp(r44458596);
double r44458598 = r44458586 + r44458597;
double r44458599 = r44458598 * r44458598;
double r44458600 = r44458599 * r44458598;
double r44458601 = cbrt(r44458600);
double r44458602 = r44458589 / r44458601;
double r44458603 = r44458588 + r44458602;
return r44458603;
}
\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}{e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1} + \frac{NdChar}{\sqrt[3]{\left(\left(1 + e^{-\frac{Ec - \left(EDonor + \left(mu + Vef\right)\right)}{KbT}}\right) \cdot \left(1 + e^{-\frac{Ec - \left(EDonor + \left(mu + Vef\right)\right)}{KbT}}\right)\right) \cdot \left(1 + e^{-\frac{Ec - \left(EDonor + \left(mu + Vef\right)\right)}{KbT}}\right)}}


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
Initial program 0.0
Simplified0.0
rmApplied add-cbrt-cube0.0
Final simplification0.0
herbie shell --seed 2019102
(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))))))