Average Error: 0.0 → 0.0
Time: 21.8s
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{NdChar}{1 + e^{\frac{1}{\frac{KbT}{mu - \left(\left(Ec - Vef\right) - EDonor\right)}}}} + \frac{NaChar}{e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{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{NdChar}{1 + e^{\frac{1}{\frac{KbT}{mu - \left(\left(Ec - Vef\right) - EDonor\right)}}}} + \frac{NaChar}{e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r4509568 = NdChar;
        double r4509569 = 1.0;
        double r4509570 = Ec;
        double r4509571 = Vef;
        double r4509572 = r4509570 - r4509571;
        double r4509573 = EDonor;
        double r4509574 = r4509572 - r4509573;
        double r4509575 = mu;
        double r4509576 = r4509574 - r4509575;
        double r4509577 = -r4509576;
        double r4509578 = KbT;
        double r4509579 = r4509577 / r4509578;
        double r4509580 = exp(r4509579);
        double r4509581 = r4509569 + r4509580;
        double r4509582 = r4509568 / r4509581;
        double r4509583 = NaChar;
        double r4509584 = Ev;
        double r4509585 = r4509584 + r4509571;
        double r4509586 = EAccept;
        double r4509587 = r4509585 + r4509586;
        double r4509588 = -r4509575;
        double r4509589 = r4509587 + r4509588;
        double r4509590 = r4509589 / r4509578;
        double r4509591 = exp(r4509590);
        double r4509592 = r4509569 + r4509591;
        double r4509593 = r4509583 / r4509592;
        double r4509594 = r4509582 + r4509593;
        return r4509594;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r4509595 = NdChar;
        double r4509596 = 1.0;
        double r4509597 = KbT;
        double r4509598 = mu;
        double r4509599 = Ec;
        double r4509600 = Vef;
        double r4509601 = r4509599 - r4509600;
        double r4509602 = EDonor;
        double r4509603 = r4509601 - r4509602;
        double r4509604 = r4509598 - r4509603;
        double r4509605 = r4509597 / r4509604;
        double r4509606 = r4509596 / r4509605;
        double r4509607 = exp(r4509606);
        double r4509608 = r4509596 + r4509607;
        double r4509609 = r4509595 / r4509608;
        double r4509610 = NaChar;
        double r4509611 = Ev;
        double r4509612 = r4509611 + r4509600;
        double r4509613 = r4509612 - r4509598;
        double r4509614 = EAccept;
        double r4509615 = r4509613 + r4509614;
        double r4509616 = r4509615 / r4509597;
        double r4509617 = exp(r4509616);
        double r4509618 = r4509617 + r4509596;
        double r4509619 = r4509610 / r4509618;
        double r4509620 = r4509609 + r4509619;
        return r4509620;
}

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{EAccept + \left(\left(Ev + Vef\right) - mu\right)}{KbT}}} + \frac{NdChar}{e^{\frac{mu - \left(\left(Ec - Vef\right) - EDonor\right)}{KbT}} + 1}}\]
  3. Using strategy rm
  4. Applied clear-num0.0

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

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

Reproduce

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