Average Error: 0.0 → 0.0
Time: 59.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{\frac{1}{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1}}}{\sqrt{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1}}} \cdot \frac{NdChar}{\sqrt{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1}}} + \frac{NaChar}{e^{\frac{\left(\left(Vef - mu\right) + Ev\right) + EAccept}{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{\frac{1}{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1}}}{\sqrt{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1}}} \cdot \frac{NdChar}{\sqrt{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}} + 1}}} + \frac{NaChar}{e^{\frac{\left(\left(Vef - mu\right) + Ev\right) + EAccept}{KbT}} + 1}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r7548636 = NdChar;
        double r7548637 = 1.0;
        double r7548638 = Ec;
        double r7548639 = Vef;
        double r7548640 = r7548638 - r7548639;
        double r7548641 = EDonor;
        double r7548642 = r7548640 - r7548641;
        double r7548643 = mu;
        double r7548644 = r7548642 - r7548643;
        double r7548645 = -r7548644;
        double r7548646 = KbT;
        double r7548647 = r7548645 / r7548646;
        double r7548648 = exp(r7548647);
        double r7548649 = r7548637 + r7548648;
        double r7548650 = r7548636 / r7548649;
        double r7548651 = NaChar;
        double r7548652 = Ev;
        double r7548653 = r7548652 + r7548639;
        double r7548654 = EAccept;
        double r7548655 = r7548653 + r7548654;
        double r7548656 = -r7548643;
        double r7548657 = r7548655 + r7548656;
        double r7548658 = r7548657 / r7548646;
        double r7548659 = exp(r7548658);
        double r7548660 = r7548637 + r7548659;
        double r7548661 = r7548651 / r7548660;
        double r7548662 = r7548650 + r7548661;
        return r7548662;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r7548663 = 1.0;
        double r7548664 = mu;
        double r7548665 = EDonor;
        double r7548666 = Ec;
        double r7548667 = Vef;
        double r7548668 = r7548666 - r7548667;
        double r7548669 = r7548665 - r7548668;
        double r7548670 = r7548664 + r7548669;
        double r7548671 = KbT;
        double r7548672 = r7548670 / r7548671;
        double r7548673 = exp(r7548672);
        double r7548674 = r7548673 + r7548663;
        double r7548675 = sqrt(r7548674);
        double r7548676 = r7548663 / r7548675;
        double r7548677 = sqrt(r7548675);
        double r7548678 = r7548676 / r7548677;
        double r7548679 = NdChar;
        double r7548680 = r7548679 / r7548677;
        double r7548681 = r7548678 * r7548680;
        double r7548682 = NaChar;
        double r7548683 = r7548667 - r7548664;
        double r7548684 = Ev;
        double r7548685 = r7548683 + r7548684;
        double r7548686 = EAccept;
        double r7548687 = r7548685 + r7548686;
        double r7548688 = r7548687 / r7548671;
        double r7548689 = exp(r7548688);
        double r7548690 = r7548689 + r7548663;
        double r7548691 = r7548682 / r7548690;
        double r7548692 = r7548681 + r7548691;
        return r7548692;
}

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

    \[\leadsto \frac{NaChar}{1 + e^{\frac{EAccept + \left(\left(Vef - mu\right) + Ev\right)}{KbT}}} + \frac{NdChar}{\color{blue}{\sqrt{e^{\frac{\left(EDonor - \left(Ec - Vef\right)\right) + mu}{KbT}} + 1} \cdot \sqrt{e^{\frac{\left(EDonor - \left(Ec - Vef\right)\right) + mu}{KbT}} + 1}}}\]
  5. Applied associate-/r*0.1

    \[\leadsto \frac{NaChar}{1 + e^{\frac{EAccept + \left(\left(Vef - mu\right) + Ev\right)}{KbT}}} + \color{blue}{\frac{\frac{NdChar}{\sqrt{e^{\frac{\left(EDonor - \left(Ec - Vef\right)\right) + mu}{KbT}} + 1}}}{\sqrt{e^{\frac{\left(EDonor - \left(Ec - Vef\right)\right) + mu}{KbT}} + 1}}}\]
  6. Using strategy rm
  7. Applied add-sqr-sqrt0.0

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

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

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

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

Reproduce

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