Average Error: 0.0 → 0.1
Time: 3.5m
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{Ec - \left(\left(Vef + mu\right) + EDonor\right)}{KbT}} + 1} + \frac{1}{\frac{1 + e^{\frac{EAccept + \left(\left(Vef + Ev\right) - mu\right)}{KbT}}}{NaChar}}\]
\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{Ec - \left(\left(Vef + mu\right) + EDonor\right)}{KbT}} + 1} + \frac{1}{\frac{1 + e^{\frac{EAccept + \left(\left(Vef + Ev\right) - mu\right)}{KbT}}}{NaChar}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r92389094 = NdChar;
        double r92389095 = 1.0;
        double r92389096 = Ec;
        double r92389097 = Vef;
        double r92389098 = r92389096 - r92389097;
        double r92389099 = EDonor;
        double r92389100 = r92389098 - r92389099;
        double r92389101 = mu;
        double r92389102 = r92389100 - r92389101;
        double r92389103 = -r92389102;
        double r92389104 = KbT;
        double r92389105 = r92389103 / r92389104;
        double r92389106 = exp(r92389105);
        double r92389107 = r92389095 + r92389106;
        double r92389108 = r92389094 / r92389107;
        double r92389109 = NaChar;
        double r92389110 = Ev;
        double r92389111 = r92389110 + r92389097;
        double r92389112 = EAccept;
        double r92389113 = r92389111 + r92389112;
        double r92389114 = -r92389101;
        double r92389115 = r92389113 + r92389114;
        double r92389116 = r92389115 / r92389104;
        double r92389117 = exp(r92389116);
        double r92389118 = r92389095 + r92389117;
        double r92389119 = r92389109 / r92389118;
        double r92389120 = r92389108 + r92389119;
        return r92389120;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r92389121 = NdChar;
        double r92389122 = Ec;
        double r92389123 = Vef;
        double r92389124 = mu;
        double r92389125 = r92389123 + r92389124;
        double r92389126 = EDonor;
        double r92389127 = r92389125 + r92389126;
        double r92389128 = r92389122 - r92389127;
        double r92389129 = KbT;
        double r92389130 = r92389128 / r92389129;
        double r92389131 = -r92389130;
        double r92389132 = exp(r92389131);
        double r92389133 = 1.0;
        double r92389134 = r92389132 + r92389133;
        double r92389135 = r92389121 / r92389134;
        double r92389136 = EAccept;
        double r92389137 = Ev;
        double r92389138 = r92389123 + r92389137;
        double r92389139 = r92389138 - r92389124;
        double r92389140 = r92389136 + r92389139;
        double r92389141 = r92389140 / r92389129;
        double r92389142 = exp(r92389141);
        double r92389143 = r92389133 + r92389142;
        double r92389144 = NaChar;
        double r92389145 = r92389143 / r92389144;
        double r92389146 = r92389133 / r92389145;
        double r92389147 = r92389135 + r92389146;
        return r92389147;
}

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(Ev + Vef\right) - mu\right)}{KbT}}} + \frac{NdChar}{e^{\frac{-\left(Ec - \left(\left(Vef + mu\right) + EDonor\right)\right)}{KbT}} + 1}}\]
  3. Using strategy rm
  4. Applied clear-num0.1

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

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

Reproduce

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