Average Error: 0.0 → 0.0
Time: 15.3s
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 r8067021 = NdChar;
        double r8067022 = 1.0;
        double r8067023 = Ec;
        double r8067024 = Vef;
        double r8067025 = r8067023 - r8067024;
        double r8067026 = EDonor;
        double r8067027 = r8067025 - r8067026;
        double r8067028 = mu;
        double r8067029 = r8067027 - r8067028;
        double r8067030 = -r8067029;
        double r8067031 = KbT;
        double r8067032 = r8067030 / r8067031;
        double r8067033 = exp(r8067032);
        double r8067034 = r8067022 + r8067033;
        double r8067035 = r8067021 / r8067034;
        double r8067036 = NaChar;
        double r8067037 = Ev;
        double r8067038 = r8067037 + r8067024;
        double r8067039 = EAccept;
        double r8067040 = r8067038 + r8067039;
        double r8067041 = -r8067028;
        double r8067042 = r8067040 + r8067041;
        double r8067043 = r8067042 / r8067031;
        double r8067044 = exp(r8067043);
        double r8067045 = r8067022 + r8067044;
        double r8067046 = r8067036 / r8067045;
        double r8067047 = r8067035 + r8067046;
        return r8067047;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r8067048 = NaChar;
        double r8067049 = Vef;
        double r8067050 = Ev;
        double r8067051 = r8067049 + r8067050;
        double r8067052 = mu;
        double r8067053 = r8067051 - r8067052;
        double r8067054 = EAccept;
        double r8067055 = r8067053 + r8067054;
        double r8067056 = KbT;
        double r8067057 = r8067055 / r8067056;
        double r8067058 = exp(r8067057);
        double r8067059 = 1.0;
        double r8067060 = r8067058 + r8067059;
        double r8067061 = r8067048 / r8067060;
        double r8067062 = NdChar;
        double r8067063 = Ec;
        double r8067064 = r8067063 - r8067049;
        double r8067065 = EDonor;
        double r8067066 = r8067064 - r8067065;
        double r8067067 = r8067052 - r8067066;
        double r8067068 = r8067067 / r8067056;
        double r8067069 = exp(r8067068);
        double r8067070 = r8067069 + r8067059;
        double r8067071 = r8067062 / r8067070;
        double r8067072 = r8067061 + r8067071;
        return r8067072;
}

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 2019172 
(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))))))