Average Error: 0.0 → 0.0
Time: 3.4m
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[3]{\left(\left(e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1\right) \cdot \left(e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1\right)\right) \cdot \left(e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1\right)}} + \frac{NdChar}{1 + e^{\frac{-\left(Ec - \left(EDonor + \left(mu + Vef\right)\right)\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[3]{\left(\left(e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1\right) \cdot \left(e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1\right)\right) \cdot \left(e^{\frac{\left(\left(Ev + Vef\right) - mu\right) + EAccept}{KbT}} + 1\right)}} + \frac{NdChar}{1 + e^{\frac{-\left(Ec - \left(EDonor + \left(mu + Vef\right)\right)\right)}{KbT}}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r65825781 = NdChar;
        double r65825782 = 1.0;
        double r65825783 = Ec;
        double r65825784 = Vef;
        double r65825785 = r65825783 - r65825784;
        double r65825786 = EDonor;
        double r65825787 = r65825785 - r65825786;
        double r65825788 = mu;
        double r65825789 = r65825787 - r65825788;
        double r65825790 = -r65825789;
        double r65825791 = KbT;
        double r65825792 = r65825790 / r65825791;
        double r65825793 = exp(r65825792);
        double r65825794 = r65825782 + r65825793;
        double r65825795 = r65825781 / r65825794;
        double r65825796 = NaChar;
        double r65825797 = Ev;
        double r65825798 = r65825797 + r65825784;
        double r65825799 = EAccept;
        double r65825800 = r65825798 + r65825799;
        double r65825801 = -r65825788;
        double r65825802 = r65825800 + r65825801;
        double r65825803 = r65825802 / r65825791;
        double r65825804 = exp(r65825803);
        double r65825805 = r65825782 + r65825804;
        double r65825806 = r65825796 / r65825805;
        double r65825807 = r65825795 + r65825806;
        return r65825807;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r65825808 = NaChar;
        double r65825809 = Ev;
        double r65825810 = Vef;
        double r65825811 = r65825809 + r65825810;
        double r65825812 = mu;
        double r65825813 = r65825811 - r65825812;
        double r65825814 = EAccept;
        double r65825815 = r65825813 + r65825814;
        double r65825816 = KbT;
        double r65825817 = r65825815 / r65825816;
        double r65825818 = exp(r65825817);
        double r65825819 = 1.0;
        double r65825820 = r65825818 + r65825819;
        double r65825821 = r65825820 * r65825820;
        double r65825822 = r65825821 * r65825820;
        double r65825823 = cbrt(r65825822);
        double r65825824 = r65825808 / r65825823;
        double r65825825 = NdChar;
        double r65825826 = Ec;
        double r65825827 = EDonor;
        double r65825828 = r65825812 + r65825810;
        double r65825829 = r65825827 + r65825828;
        double r65825830 = r65825826 - r65825829;
        double r65825831 = -r65825830;
        double r65825832 = r65825831 / r65825816;
        double r65825833 = exp(r65825832);
        double r65825834 = r65825819 + r65825833;
        double r65825835 = r65825825 / r65825834;
        double r65825836 = r65825824 + r65825835;
        return r65825836;
}

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 add-cbrt-cube0.0

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

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

Reproduce

herbie shell --seed 2019124 +o rules:numerics
(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))))))