Average Error: 0.0 → 0.2
Time: 25.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{NdChar}{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1} \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}} + 1} \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 r295425 = NdChar;
        double r295426 = 1.0;
        double r295427 = Ec;
        double r295428 = Vef;
        double r295429 = r295427 - r295428;
        double r295430 = EDonor;
        double r295431 = r295429 - r295430;
        double r295432 = mu;
        double r295433 = r295431 - r295432;
        double r295434 = -r295433;
        double r295435 = KbT;
        double r295436 = r295434 / r295435;
        double r295437 = exp(r295436);
        double r295438 = r295426 + r295437;
        double r295439 = r295425 / r295438;
        double r295440 = NaChar;
        double r295441 = Ev;
        double r295442 = r295441 + r295428;
        double r295443 = EAccept;
        double r295444 = r295442 + r295443;
        double r295445 = -r295432;
        double r295446 = r295444 + r295445;
        double r295447 = r295446 / r295435;
        double r295448 = exp(r295447);
        double r295449 = r295426 + r295448;
        double r295450 = r295440 / r295449;
        double r295451 = r295439 + r295450;
        return r295451;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r295452 = NdChar;
        double r295453 = mu;
        double r295454 = EDonor;
        double r295455 = Ec;
        double r295456 = Vef;
        double r295457 = r295455 - r295456;
        double r295458 = r295454 - r295457;
        double r295459 = r295453 + r295458;
        double r295460 = KbT;
        double r295461 = r295459 / r295460;
        double r295462 = exp(r295461);
        double r295463 = 1.0;
        double r295464 = r295462 + r295463;
        double r295465 = sqrt(r295464);
        double r295466 = r295465 * r295465;
        double r295467 = r295452 / r295466;
        double r295468 = NaChar;
        double r295469 = Ev;
        double r295470 = r295469 + r295456;
        double r295471 = EAccept;
        double r295472 = r295470 + r295471;
        double r295473 = r295472 - r295453;
        double r295474 = r295473 / r295460;
        double r295475 = exp(r295474);
        double r295476 = r295463 + r295475;
        double r295477 = r295468 / r295476;
        double r295478 = r295467 + r295477;
        return r295478;
}

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.2

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

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