Average Error: 0.0 → 0.0
Time: 20.9s
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{mu - \left(\left(Ec - Vef\right) - EDonor\right)}{KbT}}} + \frac{NaChar}{1 + \sqrt[3]{e^{\frac{\left(Ev + \left(Vef + EAccept\right)\right) - mu}{KbT}} \cdot \left(e^{\frac{\left(Ev + \left(Vef + EAccept\right)\right) - mu}{KbT}} \cdot e^{\frac{\left(Ev + \left(Vef + EAccept\right)\right) - mu}{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{mu - \left(\left(Ec - Vef\right) - EDonor\right)}{KbT}}} + \frac{NaChar}{1 + \sqrt[3]{e^{\frac{\left(Ev + \left(Vef + EAccept\right)\right) - mu}{KbT}} \cdot \left(e^{\frac{\left(Ev + \left(Vef + EAccept\right)\right) - mu}{KbT}} \cdot e^{\frac{\left(Ev + \left(Vef + EAccept\right)\right) - mu}{KbT}}\right)}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r7035285 = NdChar;
        double r7035286 = 1.0;
        double r7035287 = Ec;
        double r7035288 = Vef;
        double r7035289 = r7035287 - r7035288;
        double r7035290 = EDonor;
        double r7035291 = r7035289 - r7035290;
        double r7035292 = mu;
        double r7035293 = r7035291 - r7035292;
        double r7035294 = -r7035293;
        double r7035295 = KbT;
        double r7035296 = r7035294 / r7035295;
        double r7035297 = exp(r7035296);
        double r7035298 = r7035286 + r7035297;
        double r7035299 = r7035285 / r7035298;
        double r7035300 = NaChar;
        double r7035301 = Ev;
        double r7035302 = r7035301 + r7035288;
        double r7035303 = EAccept;
        double r7035304 = r7035302 + r7035303;
        double r7035305 = -r7035292;
        double r7035306 = r7035304 + r7035305;
        double r7035307 = r7035306 / r7035295;
        double r7035308 = exp(r7035307);
        double r7035309 = r7035286 + r7035308;
        double r7035310 = r7035300 / r7035309;
        double r7035311 = r7035299 + r7035310;
        return r7035311;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r7035312 = NdChar;
        double r7035313 = 1.0;
        double r7035314 = mu;
        double r7035315 = Ec;
        double r7035316 = Vef;
        double r7035317 = r7035315 - r7035316;
        double r7035318 = EDonor;
        double r7035319 = r7035317 - r7035318;
        double r7035320 = r7035314 - r7035319;
        double r7035321 = KbT;
        double r7035322 = r7035320 / r7035321;
        double r7035323 = exp(r7035322);
        double r7035324 = r7035313 + r7035323;
        double r7035325 = r7035312 / r7035324;
        double r7035326 = NaChar;
        double r7035327 = Ev;
        double r7035328 = EAccept;
        double r7035329 = r7035316 + r7035328;
        double r7035330 = r7035327 + r7035329;
        double r7035331 = r7035330 - r7035314;
        double r7035332 = r7035331 / r7035321;
        double r7035333 = exp(r7035332);
        double r7035334 = r7035333 * r7035333;
        double r7035335 = r7035333 * r7035334;
        double r7035336 = cbrt(r7035335);
        double r7035337 = r7035313 + r7035336;
        double r7035338 = r7035326 / r7035337;
        double r7035339 = r7035325 + r7035338;
        return r7035339;
}

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{NaChar}{1 + e^{\frac{\left(\left(EAccept + Vef\right) + Ev\right) - mu}{KbT}}} + \frac{NdChar}{e^{\frac{mu - \left(\left(Ec - Vef\right) - EDonor\right)}{KbT}} + 1}}\]
  3. Using strategy rm
  4. Applied add-cbrt-cube0.0

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

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

Reproduce

herbie shell --seed 2019132 
(FPCore (NdChar Ec Vef EDonor mu KbT NaChar Ev EAccept)
  :name "Bulmash initializePoisson"
  (+ (/ NdChar (+ 1 (exp (/ (- (- (- (- Ec Vef) EDonor) mu)) KbT)))) (/ NaChar (+ 1 (exp (/ (+ (+ (+ Ev Vef) EAccept) (- mu)) KbT))))))