Average Error: 0.0 → 0.0
Time: 14.5s
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}^{\left(\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}\right)}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{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}{1 + {e}^{\left(\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}\right)}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r143537 = NdChar;
        double r143538 = 1.0;
        double r143539 = Ec;
        double r143540 = Vef;
        double r143541 = r143539 - r143540;
        double r143542 = EDonor;
        double r143543 = r143541 - r143542;
        double r143544 = mu;
        double r143545 = r143543 - r143544;
        double r143546 = -r143545;
        double r143547 = KbT;
        double r143548 = r143546 / r143547;
        double r143549 = exp(r143548);
        double r143550 = r143538 + r143549;
        double r143551 = r143537 / r143550;
        double r143552 = NaChar;
        double r143553 = Ev;
        double r143554 = r143553 + r143540;
        double r143555 = EAccept;
        double r143556 = r143554 + r143555;
        double r143557 = -r143544;
        double r143558 = r143556 + r143557;
        double r143559 = r143558 / r143547;
        double r143560 = exp(r143559);
        double r143561 = r143538 + r143560;
        double r143562 = r143552 / r143561;
        double r143563 = r143551 + r143562;
        return r143563;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r143564 = NdChar;
        double r143565 = 1.0;
        double r143566 = exp(1.0);
        double r143567 = Ec;
        double r143568 = Vef;
        double r143569 = r143567 - r143568;
        double r143570 = EDonor;
        double r143571 = r143569 - r143570;
        double r143572 = mu;
        double r143573 = r143571 - r143572;
        double r143574 = -r143573;
        double r143575 = KbT;
        double r143576 = r143574 / r143575;
        double r143577 = pow(r143566, r143576);
        double r143578 = r143565 + r143577;
        double r143579 = r143564 / r143578;
        double r143580 = NaChar;
        double r143581 = Ev;
        double r143582 = r143581 + r143568;
        double r143583 = EAccept;
        double r143584 = r143582 + r143583;
        double r143585 = -r143572;
        double r143586 = r143584 + r143585;
        double r143587 = r143586 / r143575;
        double r143588 = exp(r143587);
        double r143589 = r143565 + r143588;
        double r143590 = r143580 / r143589;
        double r143591 = r143579 + r143590;
        return r143591;
}

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. Using strategy rm
  3. Applied *-un-lft-identity0.0

    \[\leadsto \frac{NdChar}{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{\color{blue}{1 \cdot KbT}}}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}\]
  4. Applied *-un-lft-identity0.0

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

    \[\leadsto \frac{NdChar}{1 + e^{\color{blue}{\frac{1}{1} \cdot \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}}}\]
  6. Applied exp-prod0.0

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

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

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

Reproduce

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