Average Error: 0.0 → 0.1
Time: 25.4s
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{1}{\frac{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}{NdChar}} + \frac{NaChar}{e^{\frac{\left(EAccept + \left(Vef + Ev\right)\right) - mu}{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{1}{\frac{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}{NdChar}} + \frac{NaChar}{e^{\frac{\left(EAccept + \left(Vef + Ev\right)\right) - mu}{KbT}} + 1}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r7582368 = NdChar;
        double r7582369 = 1.0;
        double r7582370 = Ec;
        double r7582371 = Vef;
        double r7582372 = r7582370 - r7582371;
        double r7582373 = EDonor;
        double r7582374 = r7582372 - r7582373;
        double r7582375 = mu;
        double r7582376 = r7582374 - r7582375;
        double r7582377 = -r7582376;
        double r7582378 = KbT;
        double r7582379 = r7582377 / r7582378;
        double r7582380 = exp(r7582379);
        double r7582381 = r7582369 + r7582380;
        double r7582382 = r7582368 / r7582381;
        double r7582383 = NaChar;
        double r7582384 = Ev;
        double r7582385 = r7582384 + r7582371;
        double r7582386 = EAccept;
        double r7582387 = r7582385 + r7582386;
        double r7582388 = -r7582375;
        double r7582389 = r7582387 + r7582388;
        double r7582390 = r7582389 / r7582378;
        double r7582391 = exp(r7582390);
        double r7582392 = r7582369 + r7582391;
        double r7582393 = r7582383 / r7582392;
        double r7582394 = r7582382 + r7582393;
        return r7582394;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r7582395 = 1.0;
        double r7582396 = EDonor;
        double r7582397 = Ec;
        double r7582398 = mu;
        double r7582399 = r7582397 - r7582398;
        double r7582400 = Vef;
        double r7582401 = r7582399 - r7582400;
        double r7582402 = r7582396 - r7582401;
        double r7582403 = KbT;
        double r7582404 = r7582402 / r7582403;
        double r7582405 = exp(r7582404);
        double r7582406 = r7582405 + r7582395;
        double r7582407 = NdChar;
        double r7582408 = r7582406 / r7582407;
        double r7582409 = r7582395 / r7582408;
        double r7582410 = NaChar;
        double r7582411 = EAccept;
        double r7582412 = Ev;
        double r7582413 = r7582400 + r7582412;
        double r7582414 = r7582411 + r7582413;
        double r7582415 = r7582414 - r7582398;
        double r7582416 = r7582415 / r7582403;
        double r7582417 = exp(r7582416);
        double r7582418 = r7582417 + r7582395;
        double r7582419 = r7582410 / r7582418;
        double r7582420 = r7582409 + r7582419;
        return r7582420;
}

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. Using strategy rm
  4. Applied clear-num0.1

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

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

Reproduce

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