Average Error: 0.0 → 0.0
Time: 22.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{NaChar}{e^{\frac{\left(EAccept + \left(Vef + Ev\right)\right) - mu}{KbT}} + 1} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}\]
\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{NaChar}{e^{\frac{\left(EAccept + \left(Vef + Ev\right)\right) - mu}{KbT}} + 1} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r6717880 = NdChar;
        double r6717881 = 1.0;
        double r6717882 = Ec;
        double r6717883 = Vef;
        double r6717884 = r6717882 - r6717883;
        double r6717885 = EDonor;
        double r6717886 = r6717884 - r6717885;
        double r6717887 = mu;
        double r6717888 = r6717886 - r6717887;
        double r6717889 = -r6717888;
        double r6717890 = KbT;
        double r6717891 = r6717889 / r6717890;
        double r6717892 = exp(r6717891);
        double r6717893 = r6717881 + r6717892;
        double r6717894 = r6717880 / r6717893;
        double r6717895 = NaChar;
        double r6717896 = Ev;
        double r6717897 = r6717896 + r6717883;
        double r6717898 = EAccept;
        double r6717899 = r6717897 + r6717898;
        double r6717900 = -r6717887;
        double r6717901 = r6717899 + r6717900;
        double r6717902 = r6717901 / r6717890;
        double r6717903 = exp(r6717902);
        double r6717904 = r6717881 + r6717903;
        double r6717905 = r6717895 / r6717904;
        double r6717906 = r6717894 + r6717905;
        return r6717906;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r6717907 = NaChar;
        double r6717908 = EAccept;
        double r6717909 = Vef;
        double r6717910 = Ev;
        double r6717911 = r6717909 + r6717910;
        double r6717912 = r6717908 + r6717911;
        double r6717913 = mu;
        double r6717914 = r6717912 - r6717913;
        double r6717915 = KbT;
        double r6717916 = r6717914 / r6717915;
        double r6717917 = exp(r6717916);
        double r6717918 = 1.0;
        double r6717919 = r6717917 + r6717918;
        double r6717920 = r6717907 / r6717919;
        double r6717921 = NdChar;
        double r6717922 = EDonor;
        double r6717923 = Ec;
        double r6717924 = r6717923 - r6717913;
        double r6717925 = r6717924 - r6717909;
        double r6717926 = r6717922 - r6717925;
        double r6717927 = r6717926 / r6717915;
        double r6717928 = exp(r6717927);
        double r6717929 = r6717928 + r6717918;
        double r6717930 = r6717921 / r6717929;
        double r6717931 = r6717920 + r6717930;
        return r6717931;
}

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(Ev + Vef\right) + EAccept\right) - mu}{KbT}}} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}}\]
  3. Final simplification0.0

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

Reproduce

herbie shell --seed 2019168 +o rules:numerics
(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))))))