Average Error: 0.0 → 0.0
Time: 12.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{NdChar}{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}}\]
\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{NdChar}{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r206096 = NdChar;
        double r206097 = 1.0;
        double r206098 = Ec;
        double r206099 = Vef;
        double r206100 = r206098 - r206099;
        double r206101 = EDonor;
        double r206102 = r206100 - r206101;
        double r206103 = mu;
        double r206104 = r206102 - r206103;
        double r206105 = -r206104;
        double r206106 = KbT;
        double r206107 = r206105 / r206106;
        double r206108 = exp(r206107);
        double r206109 = r206097 + r206108;
        double r206110 = r206096 / r206109;
        double r206111 = NaChar;
        double r206112 = Ev;
        double r206113 = r206112 + r206099;
        double r206114 = EAccept;
        double r206115 = r206113 + r206114;
        double r206116 = -r206103;
        double r206117 = r206115 + r206116;
        double r206118 = r206117 / r206106;
        double r206119 = exp(r206118);
        double r206120 = r206097 + r206119;
        double r206121 = r206111 / r206120;
        double r206122 = r206110 + r206121;
        return r206122;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r206123 = NdChar;
        double r206124 = mu;
        double r206125 = EDonor;
        double r206126 = Ec;
        double r206127 = Vef;
        double r206128 = r206126 - r206127;
        double r206129 = r206125 - r206128;
        double r206130 = r206124 + r206129;
        double r206131 = KbT;
        double r206132 = r206130 / r206131;
        double r206133 = exp(r206132);
        double r206134 = 1.0;
        double r206135 = r206133 + r206134;
        double r206136 = r206123 / r206135;
        double r206137 = NaChar;
        double r206138 = Ev;
        double r206139 = r206138 + r206127;
        double r206140 = EAccept;
        double r206141 = r206139 + r206140;
        double r206142 = r206141 - r206124;
        double r206143 = r206142 / r206131;
        double r206144 = exp(r206143);
        double r206145 = r206134 + r206144;
        double r206146 = r206137 / r206145;
        double r206147 = r206136 + r206146;
        return r206147;
}

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

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

Reproduce

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