Average Error: 0.0 → 0.0
Time: 15.7s
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}}}\]
\[NdChar \cdot \frac{1}{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}}}
NdChar \cdot \frac{1}{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 r277210 = NdChar;
        double r277211 = 1.0;
        double r277212 = Ec;
        double r277213 = Vef;
        double r277214 = r277212 - r277213;
        double r277215 = EDonor;
        double r277216 = r277214 - r277215;
        double r277217 = mu;
        double r277218 = r277216 - r277217;
        double r277219 = -r277218;
        double r277220 = KbT;
        double r277221 = r277219 / r277220;
        double r277222 = exp(r277221);
        double r277223 = r277211 + r277222;
        double r277224 = r277210 / r277223;
        double r277225 = NaChar;
        double r277226 = Ev;
        double r277227 = r277226 + r277213;
        double r277228 = EAccept;
        double r277229 = r277227 + r277228;
        double r277230 = -r277217;
        double r277231 = r277229 + r277230;
        double r277232 = r277231 / r277220;
        double r277233 = exp(r277232);
        double r277234 = r277211 + r277233;
        double r277235 = r277225 / r277234;
        double r277236 = r277224 + r277235;
        return r277236;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r277237 = NdChar;
        double r277238 = 1.0;
        double r277239 = mu;
        double r277240 = EDonor;
        double r277241 = Ec;
        double r277242 = Vef;
        double r277243 = r277241 - r277242;
        double r277244 = r277240 - r277243;
        double r277245 = r277239 + r277244;
        double r277246 = KbT;
        double r277247 = r277245 / r277246;
        double r277248 = exp(r277247);
        double r277249 = 1.0;
        double r277250 = r277248 + r277249;
        double r277251 = r277238 / r277250;
        double r277252 = r277237 * r277251;
        double r277253 = NaChar;
        double r277254 = Ev;
        double r277255 = r277254 + r277242;
        double r277256 = EAccept;
        double r277257 = r277255 + r277256;
        double r277258 = r277257 - r277239;
        double r277259 = r277258 / r277246;
        double r277260 = exp(r277259);
        double r277261 = r277249 + r277260;
        double r277262 = r277253 / r277261;
        double r277263 = r277252 + r277262;
        return r277263;
}

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 div-inv0.0

    \[\leadsto \color{blue}{NdChar \cdot \frac{1}{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 NdChar \cdot \frac{1}{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 2020046 +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))))))