Average Error: 0.0 → 0.0
Time: 18.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{\left(\left(Vef + Ev\right) - mu\right) + EAccept}{KbT}} + 1} + \frac{NdChar}{e^{\frac{mu - \left(\left(Ec - Vef\right) - EDonor\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(\left(Vef + Ev\right) - mu\right) + EAccept}{KbT}} + 1} + \frac{NdChar}{e^{\frac{mu - \left(\left(Ec - Vef\right) - EDonor\right)}{KbT}} + 1}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r155969 = NdChar;
        double r155970 = 1.0;
        double r155971 = Ec;
        double r155972 = Vef;
        double r155973 = r155971 - r155972;
        double r155974 = EDonor;
        double r155975 = r155973 - r155974;
        double r155976 = mu;
        double r155977 = r155975 - r155976;
        double r155978 = -r155977;
        double r155979 = KbT;
        double r155980 = r155978 / r155979;
        double r155981 = exp(r155980);
        double r155982 = r155970 + r155981;
        double r155983 = r155969 / r155982;
        double r155984 = NaChar;
        double r155985 = Ev;
        double r155986 = r155985 + r155972;
        double r155987 = EAccept;
        double r155988 = r155986 + r155987;
        double r155989 = -r155976;
        double r155990 = r155988 + r155989;
        double r155991 = r155990 / r155979;
        double r155992 = exp(r155991);
        double r155993 = r155970 + r155992;
        double r155994 = r155984 / r155993;
        double r155995 = r155983 + r155994;
        return r155995;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r155996 = NaChar;
        double r155997 = Vef;
        double r155998 = Ev;
        double r155999 = r155997 + r155998;
        double r156000 = mu;
        double r156001 = r155999 - r156000;
        double r156002 = EAccept;
        double r156003 = r156001 + r156002;
        double r156004 = KbT;
        double r156005 = r156003 / r156004;
        double r156006 = exp(r156005);
        double r156007 = 1.0;
        double r156008 = r156006 + r156007;
        double r156009 = r155996 / r156008;
        double r156010 = NdChar;
        double r156011 = Ec;
        double r156012 = r156011 - r155997;
        double r156013 = EDonor;
        double r156014 = r156012 - r156013;
        double r156015 = r156000 - r156014;
        double r156016 = r156015 / r156004;
        double r156017 = exp(r156016);
        double r156018 = r156017 + r156007;
        double r156019 = r156010 / r156018;
        double r156020 = r156009 + r156019;
        return r156020;
}

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

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

Reproduce

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