Average Error: 0.0 → 0.0
Time: 40.1s
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}}} + \frac{NaChar}{1 + \sqrt[3]{\mathsf{expm1}\left(\mathsf{log1p}\left({\left(e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}\right)}^{3}\right)\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{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}} + \frac{NaChar}{1 + \sqrt[3]{\mathsf{expm1}\left(\mathsf{log1p}\left({\left(e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}\right)}^{3}\right)\right)}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r241967 = NdChar;
        double r241968 = 1.0;
        double r241969 = Ec;
        double r241970 = Vef;
        double r241971 = r241969 - r241970;
        double r241972 = EDonor;
        double r241973 = r241971 - r241972;
        double r241974 = mu;
        double r241975 = r241973 - r241974;
        double r241976 = -r241975;
        double r241977 = KbT;
        double r241978 = r241976 / r241977;
        double r241979 = exp(r241978);
        double r241980 = r241968 + r241979;
        double r241981 = r241967 / r241980;
        double r241982 = NaChar;
        double r241983 = Ev;
        double r241984 = r241983 + r241970;
        double r241985 = EAccept;
        double r241986 = r241984 + r241985;
        double r241987 = -r241974;
        double r241988 = r241986 + r241987;
        double r241989 = r241988 / r241977;
        double r241990 = exp(r241989);
        double r241991 = r241968 + r241990;
        double r241992 = r241982 / r241991;
        double r241993 = r241981 + r241992;
        return r241993;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r241994 = NdChar;
        double r241995 = 1.0;
        double r241996 = Ec;
        double r241997 = Vef;
        double r241998 = r241996 - r241997;
        double r241999 = EDonor;
        double r242000 = r241998 - r241999;
        double r242001 = mu;
        double r242002 = r242000 - r242001;
        double r242003 = -r242002;
        double r242004 = KbT;
        double r242005 = r242003 / r242004;
        double r242006 = exp(r242005);
        double r242007 = r241995 + r242006;
        double r242008 = r241994 / r242007;
        double r242009 = NaChar;
        double r242010 = Ev;
        double r242011 = r242010 + r241997;
        double r242012 = EAccept;
        double r242013 = r242011 + r242012;
        double r242014 = r242013 - r242001;
        double r242015 = r242014 / r242004;
        double r242016 = exp(r242015);
        double r242017 = 3.0;
        double r242018 = pow(r242016, r242017);
        double r242019 = log1p(r242018);
        double r242020 = expm1(r242019);
        double r242021 = cbrt(r242020);
        double r242022 = r241995 + r242021;
        double r242023 = r242009 / r242022;
        double r242024 = r242008 + r242023;
        return r242024;
}

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

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

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

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

Reproduce

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