Average Error: 0.0 → 0.0
Time: 26.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(Vef - mu\right) + \left(Ev + EAccept\right)}{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(Vef - mu\right) + \left(Ev + EAccept\right)}{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 r7387982 = NdChar;
        double r7387983 = 1.0;
        double r7387984 = Ec;
        double r7387985 = Vef;
        double r7387986 = r7387984 - r7387985;
        double r7387987 = EDonor;
        double r7387988 = r7387986 - r7387987;
        double r7387989 = mu;
        double r7387990 = r7387988 - r7387989;
        double r7387991 = -r7387990;
        double r7387992 = KbT;
        double r7387993 = r7387991 / r7387992;
        double r7387994 = exp(r7387993);
        double r7387995 = r7387983 + r7387994;
        double r7387996 = r7387982 / r7387995;
        double r7387997 = NaChar;
        double r7387998 = Ev;
        double r7387999 = r7387998 + r7387985;
        double r7388000 = EAccept;
        double r7388001 = r7387999 + r7388000;
        double r7388002 = -r7387989;
        double r7388003 = r7388001 + r7388002;
        double r7388004 = r7388003 / r7387992;
        double r7388005 = exp(r7388004);
        double r7388006 = r7387983 + r7388005;
        double r7388007 = r7387997 / r7388006;
        double r7388008 = r7387996 + r7388007;
        return r7388008;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r7388009 = NaChar;
        double r7388010 = Vef;
        double r7388011 = mu;
        double r7388012 = r7388010 - r7388011;
        double r7388013 = Ev;
        double r7388014 = EAccept;
        double r7388015 = r7388013 + r7388014;
        double r7388016 = r7388012 + r7388015;
        double r7388017 = KbT;
        double r7388018 = r7388016 / r7388017;
        double r7388019 = exp(r7388018);
        double r7388020 = 1.0;
        double r7388021 = r7388019 + r7388020;
        double r7388022 = r7388009 / r7388021;
        double r7388023 = NdChar;
        double r7388024 = Ec;
        double r7388025 = r7388024 - r7388010;
        double r7388026 = EDonor;
        double r7388027 = r7388025 - r7388026;
        double r7388028 = r7388011 - r7388027;
        double r7388029 = r7388028 / r7388017;
        double r7388030 = exp(r7388029);
        double r7388031 = r7388030 + r7388020;
        double r7388032 = r7388023 / r7388031;
        double r7388033 = r7388022 + r7388032;
        return r7388033;
}

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

Reproduce

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