Average Error: 0.0 → 0.0
Time: 17.5s
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{Vef + \left(\left(Ev - mu\right) + EAccept\right)}{KbT}} + 1} + \frac{NdChar}{e^{\frac{EDonor - \left(Ec - \left(Vef + mu\right)\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{Vef + \left(\left(Ev - mu\right) + EAccept\right)}{KbT}} + 1} + \frac{NdChar}{e^{\frac{EDonor - \left(Ec - \left(Vef + mu\right)\right)}{KbT}} + 1}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r8007901 = NdChar;
        double r8007902 = 1.0;
        double r8007903 = Ec;
        double r8007904 = Vef;
        double r8007905 = r8007903 - r8007904;
        double r8007906 = EDonor;
        double r8007907 = r8007905 - r8007906;
        double r8007908 = mu;
        double r8007909 = r8007907 - r8007908;
        double r8007910 = -r8007909;
        double r8007911 = KbT;
        double r8007912 = r8007910 / r8007911;
        double r8007913 = exp(r8007912);
        double r8007914 = r8007902 + r8007913;
        double r8007915 = r8007901 / r8007914;
        double r8007916 = NaChar;
        double r8007917 = Ev;
        double r8007918 = r8007917 + r8007904;
        double r8007919 = EAccept;
        double r8007920 = r8007918 + r8007919;
        double r8007921 = -r8007908;
        double r8007922 = r8007920 + r8007921;
        double r8007923 = r8007922 / r8007911;
        double r8007924 = exp(r8007923);
        double r8007925 = r8007902 + r8007924;
        double r8007926 = r8007916 / r8007925;
        double r8007927 = r8007915 + r8007926;
        return r8007927;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r8007928 = NaChar;
        double r8007929 = Vef;
        double r8007930 = Ev;
        double r8007931 = mu;
        double r8007932 = r8007930 - r8007931;
        double r8007933 = EAccept;
        double r8007934 = r8007932 + r8007933;
        double r8007935 = r8007929 + r8007934;
        double r8007936 = KbT;
        double r8007937 = r8007935 / r8007936;
        double r8007938 = exp(r8007937);
        double r8007939 = 1.0;
        double r8007940 = r8007938 + r8007939;
        double r8007941 = r8007928 / r8007940;
        double r8007942 = NdChar;
        double r8007943 = EDonor;
        double r8007944 = Ec;
        double r8007945 = r8007929 + r8007931;
        double r8007946 = r8007944 - r8007945;
        double r8007947 = r8007943 - r8007946;
        double r8007948 = r8007947 / r8007936;
        double r8007949 = exp(r8007948);
        double r8007950 = r8007949 + r8007939;
        double r8007951 = r8007942 / r8007950;
        double r8007952 = r8007941 + r8007951;
        return r8007952;
}

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

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

Reproduce

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