Average Error: 0.0 → 0.1
Time: 12.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{NdChar}{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}} + \frac{NaChar}{\log \left(e^{1} \cdot e^{e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}\right)}\]
\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^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}} + \frac{NaChar}{\log \left(e^{1} \cdot e^{e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}\right)}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r372219 = NdChar;
        double r372220 = 1.0;
        double r372221 = Ec;
        double r372222 = Vef;
        double r372223 = r372221 - r372222;
        double r372224 = EDonor;
        double r372225 = r372223 - r372224;
        double r372226 = mu;
        double r372227 = r372225 - r372226;
        double r372228 = -r372227;
        double r372229 = KbT;
        double r372230 = r372228 / r372229;
        double r372231 = exp(r372230);
        double r372232 = r372220 + r372231;
        double r372233 = r372219 / r372232;
        double r372234 = NaChar;
        double r372235 = Ev;
        double r372236 = r372235 + r372222;
        double r372237 = EAccept;
        double r372238 = r372236 + r372237;
        double r372239 = -r372226;
        double r372240 = r372238 + r372239;
        double r372241 = r372240 / r372229;
        double r372242 = exp(r372241);
        double r372243 = r372220 + r372242;
        double r372244 = r372234 / r372243;
        double r372245 = r372233 + r372244;
        return r372245;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r372246 = NdChar;
        double r372247 = 1.0;
        double r372248 = Ec;
        double r372249 = Vef;
        double r372250 = r372248 - r372249;
        double r372251 = EDonor;
        double r372252 = r372250 - r372251;
        double r372253 = mu;
        double r372254 = r372252 - r372253;
        double r372255 = -r372254;
        double r372256 = KbT;
        double r372257 = r372255 / r372256;
        double r372258 = exp(r372257);
        double r372259 = r372247 + r372258;
        double r372260 = r372246 / r372259;
        double r372261 = NaChar;
        double r372262 = exp(r372247);
        double r372263 = Ev;
        double r372264 = r372263 + r372249;
        double r372265 = EAccept;
        double r372266 = r372264 + r372265;
        double r372267 = -r372253;
        double r372268 = r372266 + r372267;
        double r372269 = r372268 / r372256;
        double r372270 = exp(r372269);
        double r372271 = exp(r372270);
        double r372272 = r372262 * r372271;
        double r372273 = log(r372272);
        double r372274 = r372261 / r372273;
        double r372275 = r372260 + r372274;
        return r372275;
}

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 add-sqr-sqrt0.2

    \[\leadsto \frac{NdChar}{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}} + \frac{NaChar}{\color{blue}{\sqrt{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}} \cdot \sqrt{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}}}\]
  4. Using strategy rm
  5. Applied add-log-exp0.2

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

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

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

Reproduce

herbie shell --seed 2019356 +o rules:numerics
(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))))))