Average Error: 0.0 → 0.0
Time: 23.0s
Precision: 64
\[\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(EAccept + \left(Vef + Ev\right)\right) - mu}{KbT}} + 1} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}\]
\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(EAccept + \left(Vef + Ev\right)\right) - mu}{KbT}} + 1} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r5599537 = NdChar;
        double r5599538 = 1.0;
        double r5599539 = Ec;
        double r5599540 = Vef;
        double r5599541 = r5599539 - r5599540;
        double r5599542 = EDonor;
        double r5599543 = r5599541 - r5599542;
        double r5599544 = mu;
        double r5599545 = r5599543 - r5599544;
        double r5599546 = -r5599545;
        double r5599547 = KbT;
        double r5599548 = r5599546 / r5599547;
        double r5599549 = exp(r5599548);
        double r5599550 = r5599538 + r5599549;
        double r5599551 = r5599537 / r5599550;
        double r5599552 = NaChar;
        double r5599553 = Ev;
        double r5599554 = r5599553 + r5599540;
        double r5599555 = EAccept;
        double r5599556 = r5599554 + r5599555;
        double r5599557 = -r5599544;
        double r5599558 = r5599556 + r5599557;
        double r5599559 = r5599558 / r5599547;
        double r5599560 = exp(r5599559);
        double r5599561 = r5599538 + r5599560;
        double r5599562 = r5599552 / r5599561;
        double r5599563 = r5599551 + r5599562;
        return r5599563;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r5599564 = NaChar;
        double r5599565 = EAccept;
        double r5599566 = Vef;
        double r5599567 = Ev;
        double r5599568 = r5599566 + r5599567;
        double r5599569 = r5599565 + r5599568;
        double r5599570 = mu;
        double r5599571 = r5599569 - r5599570;
        double r5599572 = KbT;
        double r5599573 = r5599571 / r5599572;
        double r5599574 = exp(r5599573);
        double r5599575 = 1.0;
        double r5599576 = r5599574 + r5599575;
        double r5599577 = r5599564 / r5599576;
        double r5599578 = NdChar;
        double r5599579 = EDonor;
        double r5599580 = Ec;
        double r5599581 = r5599580 - r5599570;
        double r5599582 = r5599581 - r5599566;
        double r5599583 = r5599579 - r5599582;
        double r5599584 = r5599583 / r5599572;
        double r5599585 = exp(r5599584);
        double r5599586 = r5599585 + r5599575;
        double r5599587 = r5599578 / r5599586;
        double r5599588 = r5599577 + r5599587;
        return r5599588;
}

Error

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

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\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}}}\]
  2. Simplified0.0

    \[\leadsto \color{blue}{\frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}}\]
  3. Final simplification0.0

    \[\leadsto \frac{NaChar}{e^{\frac{\left(EAccept + \left(Vef + Ev\right)\right) - mu}{KbT}} + 1} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}\]

Reproduce

herbie shell --seed 2019163 +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))))))