Average Error: 0.0 → 0.0
Time: 10.3s
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}{\sqrt[3]{\sqrt[3]{{\left({\left(1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}\right)}^{3}\right)}^{3}}}} + \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}{\sqrt[3]{\sqrt[3]{{\left({\left(1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}\right)}^{3}\right)}^{3}}}} + \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 r239976 = NdChar;
        double r239977 = 1.0;
        double r239978 = Ec;
        double r239979 = Vef;
        double r239980 = r239978 - r239979;
        double r239981 = EDonor;
        double r239982 = r239980 - r239981;
        double r239983 = mu;
        double r239984 = r239982 - r239983;
        double r239985 = -r239984;
        double r239986 = KbT;
        double r239987 = r239985 / r239986;
        double r239988 = exp(r239987);
        double r239989 = r239977 + r239988;
        double r239990 = r239976 / r239989;
        double r239991 = NaChar;
        double r239992 = Ev;
        double r239993 = r239992 + r239979;
        double r239994 = EAccept;
        double r239995 = r239993 + r239994;
        double r239996 = -r239983;
        double r239997 = r239995 + r239996;
        double r239998 = r239997 / r239986;
        double r239999 = exp(r239998);
        double r240000 = r239977 + r239999;
        double r240001 = r239991 / r240000;
        double r240002 = r239990 + r240001;
        return r240002;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r240003 = NdChar;
        double r240004 = 1.0;
        double r240005 = Ec;
        double r240006 = Vef;
        double r240007 = r240005 - r240006;
        double r240008 = EDonor;
        double r240009 = r240007 - r240008;
        double r240010 = mu;
        double r240011 = r240009 - r240010;
        double r240012 = -r240011;
        double r240013 = KbT;
        double r240014 = r240012 / r240013;
        double r240015 = exp(r240014);
        double r240016 = r240004 + r240015;
        double r240017 = 3.0;
        double r240018 = pow(r240016, r240017);
        double r240019 = pow(r240018, r240017);
        double r240020 = cbrt(r240019);
        double r240021 = cbrt(r240020);
        double r240022 = r240003 / r240021;
        double r240023 = NaChar;
        double r240024 = Ev;
        double r240025 = r240024 + r240006;
        double r240026 = EAccept;
        double r240027 = r240025 + r240026;
        double r240028 = -r240010;
        double r240029 = r240027 + r240028;
        double r240030 = r240029 / r240013;
        double r240031 = exp(r240030);
        double r240032 = r240004 + r240031;
        double r240033 = r240023 / r240032;
        double r240034 = r240022 + r240033;
        return r240034;
}

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-cbrt-cube0.0

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

    \[\leadsto \frac{NdChar}{\sqrt[3]{\color{blue}{{\left(1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}\right)}^{3}}}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}\]
  5. Using strategy rm
  6. Applied add-cbrt-cube0.0

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

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

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

Reproduce

herbie shell --seed 2020036 +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))))))