Average Error: 0.0 → 0.0
Time: 5.8s
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}}} + NaChar \cdot \frac{1}{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^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}} + NaChar \cdot \frac{1}{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 r249234 = NdChar;
        double r249235 = 1.0;
        double r249236 = Ec;
        double r249237 = Vef;
        double r249238 = r249236 - r249237;
        double r249239 = EDonor;
        double r249240 = r249238 - r249239;
        double r249241 = mu;
        double r249242 = r249240 - r249241;
        double r249243 = -r249242;
        double r249244 = KbT;
        double r249245 = r249243 / r249244;
        double r249246 = exp(r249245);
        double r249247 = r249235 + r249246;
        double r249248 = r249234 / r249247;
        double r249249 = NaChar;
        double r249250 = Ev;
        double r249251 = r249250 + r249237;
        double r249252 = EAccept;
        double r249253 = r249251 + r249252;
        double r249254 = -r249241;
        double r249255 = r249253 + r249254;
        double r249256 = r249255 / r249244;
        double r249257 = exp(r249256);
        double r249258 = r249235 + r249257;
        double r249259 = r249249 / r249258;
        double r249260 = r249248 + r249259;
        return r249260;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r249261 = NdChar;
        double r249262 = 1.0;
        double r249263 = Ec;
        double r249264 = Vef;
        double r249265 = r249263 - r249264;
        double r249266 = EDonor;
        double r249267 = r249265 - r249266;
        double r249268 = mu;
        double r249269 = r249267 - r249268;
        double r249270 = -r249269;
        double r249271 = KbT;
        double r249272 = r249270 / r249271;
        double r249273 = exp(r249272);
        double r249274 = r249262 + r249273;
        double r249275 = r249261 / r249274;
        double r249276 = NaChar;
        double r249277 = 1.0;
        double r249278 = Ev;
        double r249279 = r249278 + r249264;
        double r249280 = EAccept;
        double r249281 = r249279 + r249280;
        double r249282 = -r249268;
        double r249283 = r249281 + r249282;
        double r249284 = r249283 / r249271;
        double r249285 = exp(r249284);
        double r249286 = r249262 + r249285;
        double r249287 = r249277 / r249286;
        double r249288 = r249276 * r249287;
        double r249289 = r249275 + r249288;
        return r249289;
}

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

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

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

Reproduce

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