Average Error: 0.0 → 0.0
Time: 35.1s
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}{\sqrt{e^{\frac{Vef + \left(\left(Ev - mu\right) + EAccept\right)}{KbT}}} \cdot \sqrt{e^{\frac{Vef + \left(\left(Ev - mu\right) + EAccept\right)}{KbT}}} + 1} + \frac{NdChar}{1 + e^{\frac{mu - \left(\left(Ec - Vef\right) - EDonor\right)}{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{NaChar}{\sqrt{e^{\frac{Vef + \left(\left(Ev - mu\right) + EAccept\right)}{KbT}}} \cdot \sqrt{e^{\frac{Vef + \left(\left(Ev - mu\right) + EAccept\right)}{KbT}}} + 1} + \frac{NdChar}{1 + e^{\frac{mu - \left(\left(Ec - Vef\right) - EDonor\right)}{KbT}}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r3083167 = NdChar;
        double r3083168 = 1.0;
        double r3083169 = Ec;
        double r3083170 = Vef;
        double r3083171 = r3083169 - r3083170;
        double r3083172 = EDonor;
        double r3083173 = r3083171 - r3083172;
        double r3083174 = mu;
        double r3083175 = r3083173 - r3083174;
        double r3083176 = -r3083175;
        double r3083177 = KbT;
        double r3083178 = r3083176 / r3083177;
        double r3083179 = exp(r3083178);
        double r3083180 = r3083168 + r3083179;
        double r3083181 = r3083167 / r3083180;
        double r3083182 = NaChar;
        double r3083183 = Ev;
        double r3083184 = r3083183 + r3083170;
        double r3083185 = EAccept;
        double r3083186 = r3083184 + r3083185;
        double r3083187 = -r3083174;
        double r3083188 = r3083186 + r3083187;
        double r3083189 = r3083188 / r3083177;
        double r3083190 = exp(r3083189);
        double r3083191 = r3083168 + r3083190;
        double r3083192 = r3083182 / r3083191;
        double r3083193 = r3083181 + r3083192;
        return r3083193;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r3083194 = NaChar;
        double r3083195 = Vef;
        double r3083196 = Ev;
        double r3083197 = mu;
        double r3083198 = r3083196 - r3083197;
        double r3083199 = EAccept;
        double r3083200 = r3083198 + r3083199;
        double r3083201 = r3083195 + r3083200;
        double r3083202 = KbT;
        double r3083203 = r3083201 / r3083202;
        double r3083204 = exp(r3083203);
        double r3083205 = sqrt(r3083204);
        double r3083206 = r3083205 * r3083205;
        double r3083207 = 1.0;
        double r3083208 = r3083206 + r3083207;
        double r3083209 = r3083194 / r3083208;
        double r3083210 = NdChar;
        double r3083211 = Ec;
        double r3083212 = r3083211 - r3083195;
        double r3083213 = EDonor;
        double r3083214 = r3083212 - r3083213;
        double r3083215 = r3083197 - r3083214;
        double r3083216 = r3083215 / r3083202;
        double r3083217 = exp(r3083216);
        double r3083218 = r3083207 + r3083217;
        double r3083219 = r3083210 / r3083218;
        double r3083220 = r3083209 + r3083219;
        return r3083220;
}

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

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

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

Reproduce

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