Average Error: 0.0 → 0.0
Time: 8.6s
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 + {\left(\frac{1}{e}\right)}^{\left(\frac{\left(\left(Ec - Vef\right) - EDonor\right) - mu}{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 + {\left(\frac{1}{e}\right)}^{\left(\frac{\left(\left(Ec - Vef\right) - EDonor\right) - mu}{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 r344264 = NdChar;
        double r344265 = 1.0;
        double r344266 = Ec;
        double r344267 = Vef;
        double r344268 = r344266 - r344267;
        double r344269 = EDonor;
        double r344270 = r344268 - r344269;
        double r344271 = mu;
        double r344272 = r344270 - r344271;
        double r344273 = -r344272;
        double r344274 = KbT;
        double r344275 = r344273 / r344274;
        double r344276 = exp(r344275);
        double r344277 = r344265 + r344276;
        double r344278 = r344264 / r344277;
        double r344279 = NaChar;
        double r344280 = Ev;
        double r344281 = r344280 + r344267;
        double r344282 = EAccept;
        double r344283 = r344281 + r344282;
        double r344284 = -r344271;
        double r344285 = r344283 + r344284;
        double r344286 = r344285 / r344274;
        double r344287 = exp(r344286);
        double r344288 = r344265 + r344287;
        double r344289 = r344279 / r344288;
        double r344290 = r344278 + r344289;
        return r344290;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r344291 = NdChar;
        double r344292 = 1.0;
        double r344293 = 1.0;
        double r344294 = exp(1.0);
        double r344295 = r344293 / r344294;
        double r344296 = Ec;
        double r344297 = Vef;
        double r344298 = r344296 - r344297;
        double r344299 = EDonor;
        double r344300 = r344298 - r344299;
        double r344301 = mu;
        double r344302 = r344300 - r344301;
        double r344303 = KbT;
        double r344304 = r344302 / r344303;
        double r344305 = pow(r344295, r344304);
        double r344306 = r344292 + r344305;
        double r344307 = r344291 / r344306;
        double r344308 = NaChar;
        double r344309 = Ev;
        double r344310 = r344309 + r344297;
        double r344311 = EAccept;
        double r344312 = r344310 + r344311;
        double r344313 = -r344301;
        double r344314 = r344312 + r344313;
        double r344315 = r344314 / r344303;
        double r344316 = exp(r344315);
        double r344317 = r344292 + r344316;
        double r344318 = r344308 / r344317;
        double r344319 = r344307 + r344318;
        return r344319;
}

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 neg-mul-10.0

    \[\leadsto \frac{NdChar}{1 + e^{\frac{\color{blue}{-1 \cdot \left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\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(Ec - Vef\right) - EDonor\right) - mu}{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(Ec - Vef\right) - EDonor\right) - mu}{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}{\left(\frac{1}{e}\right)}}^{\left(\frac{\left(\left(Ec - Vef\right) - EDonor\right) - mu}{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 + {\left(\frac{1}{e}\right)}^{\left(\frac{\left(\left(Ec - Vef\right) - EDonor\right) - mu}{KbT}\right)}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}\]

Reproduce

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