Average Error: 0.0 → 0.0
Time: 30.9s
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}{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}}} \cdot \sqrt{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}{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}}} \cdot \sqrt{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 r195507 = NdChar;
        double r195508 = 1.0;
        double r195509 = Ec;
        double r195510 = Vef;
        double r195511 = r195509 - r195510;
        double r195512 = EDonor;
        double r195513 = r195511 - r195512;
        double r195514 = mu;
        double r195515 = r195513 - r195514;
        double r195516 = -r195515;
        double r195517 = KbT;
        double r195518 = r195516 / r195517;
        double r195519 = exp(r195518);
        double r195520 = r195508 + r195519;
        double r195521 = r195507 / r195520;
        double r195522 = NaChar;
        double r195523 = Ev;
        double r195524 = r195523 + r195510;
        double r195525 = EAccept;
        double r195526 = r195524 + r195525;
        double r195527 = -r195514;
        double r195528 = r195526 + r195527;
        double r195529 = r195528 / r195517;
        double r195530 = exp(r195529);
        double r195531 = r195508 + r195530;
        double r195532 = r195522 / r195531;
        double r195533 = r195521 + r195532;
        return r195533;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r195534 = NdChar;
        double r195535 = mu;
        double r195536 = EDonor;
        double r195537 = Ec;
        double r195538 = Vef;
        double r195539 = r195537 - r195538;
        double r195540 = r195536 - r195539;
        double r195541 = r195535 + r195540;
        double r195542 = KbT;
        double r195543 = r195541 / r195542;
        double r195544 = exp(r195543);
        double r195545 = sqrt(r195544);
        double r195546 = r195545 * r195545;
        double r195547 = 1.0;
        double r195548 = r195546 + r195547;
        double r195549 = r195534 / r195548;
        double r195550 = NaChar;
        double r195551 = Ev;
        double r195552 = r195551 + r195538;
        double r195553 = EAccept;
        double r195554 = r195552 + r195553;
        double r195555 = r195554 - r195535;
        double r195556 = r195555 / r195542;
        double r195557 = exp(r195556);
        double r195558 = r195547 + r195557;
        double r195559 = r195550 / r195558;
        double r195560 = r195549 + r195559;
        return r195560;
}

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. Using strategy rm
  4. Applied add-sqr-sqrt0.0

    \[\leadsto \frac{NdChar}{\color{blue}{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}}} \cdot \sqrt{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}}}\]
  5. Final simplification0.0

    \[\leadsto \frac{NdChar}{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}}} \cdot \sqrt{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 2019323 
(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))))))