Average Error: 0.0 → 0.0
Time: 11.7s
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}{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}}\]
\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}{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r174596 = NdChar;
        double r174597 = 1.0;
        double r174598 = Ec;
        double r174599 = Vef;
        double r174600 = r174598 - r174599;
        double r174601 = EDonor;
        double r174602 = r174600 - r174601;
        double r174603 = mu;
        double r174604 = r174602 - r174603;
        double r174605 = -r174604;
        double r174606 = KbT;
        double r174607 = r174605 / r174606;
        double r174608 = exp(r174607);
        double r174609 = r174597 + r174608;
        double r174610 = r174596 / r174609;
        double r174611 = NaChar;
        double r174612 = Ev;
        double r174613 = r174612 + r174599;
        double r174614 = EAccept;
        double r174615 = r174613 + r174614;
        double r174616 = -r174603;
        double r174617 = r174615 + r174616;
        double r174618 = r174617 / r174606;
        double r174619 = exp(r174618);
        double r174620 = r174597 + r174619;
        double r174621 = r174611 / r174620;
        double r174622 = r174610 + r174621;
        return r174622;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r174623 = NdChar;
        double r174624 = mu;
        double r174625 = EDonor;
        double r174626 = Ec;
        double r174627 = Vef;
        double r174628 = r174626 - r174627;
        double r174629 = r174625 - r174628;
        double r174630 = r174624 + r174629;
        double r174631 = KbT;
        double r174632 = r174630 / r174631;
        double r174633 = exp(r174632);
        double r174634 = 1.0;
        double r174635 = r174633 + r174634;
        double r174636 = r174623 / r174635;
        double r174637 = NaChar;
        double r174638 = Ev;
        double r174639 = r174638 + r174627;
        double r174640 = EAccept;
        double r174641 = r174639 + r174640;
        double r174642 = r174641 - r174624;
        double r174643 = r174642 / r174631;
        double r174644 = exp(r174643);
        double r174645 = r174634 + r174644;
        double r174646 = r174637 / r174645;
        double r174647 = r174636 + r174646;
        return r174647;
}

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{NdChar}{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}}}\]
  3. Final simplification0.0

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

Reproduce

herbie shell --seed 2019209 
(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))))))