Average Error: 0.0 → 0.0
Time: 27.8s
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}}}\]
\[NaChar \cdot \frac{1}{1 + e^{\frac{\left(Vef + EAccept\right) + \left(Ev - mu\right)}{KbT}}} + \frac{NdChar}{e^{\frac{mu - \left(\left(Ec - EDonor\right) - Vef\right)}{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}}}
NaChar \cdot \frac{1}{1 + e^{\frac{\left(Vef + EAccept\right) + \left(Ev - mu\right)}{KbT}}} + \frac{NdChar}{e^{\frac{mu - \left(\left(Ec - EDonor\right) - Vef\right)}{KbT}} + 1}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r172831 = NdChar;
        double r172832 = 1.0;
        double r172833 = Ec;
        double r172834 = Vef;
        double r172835 = r172833 - r172834;
        double r172836 = EDonor;
        double r172837 = r172835 - r172836;
        double r172838 = mu;
        double r172839 = r172837 - r172838;
        double r172840 = -r172839;
        double r172841 = KbT;
        double r172842 = r172840 / r172841;
        double r172843 = exp(r172842);
        double r172844 = r172832 + r172843;
        double r172845 = r172831 / r172844;
        double r172846 = NaChar;
        double r172847 = Ev;
        double r172848 = r172847 + r172834;
        double r172849 = EAccept;
        double r172850 = r172848 + r172849;
        double r172851 = -r172838;
        double r172852 = r172850 + r172851;
        double r172853 = r172852 / r172841;
        double r172854 = exp(r172853);
        double r172855 = r172832 + r172854;
        double r172856 = r172846 / r172855;
        double r172857 = r172845 + r172856;
        return r172857;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r172858 = NaChar;
        double r172859 = 1.0;
        double r172860 = 1.0;
        double r172861 = Vef;
        double r172862 = EAccept;
        double r172863 = r172861 + r172862;
        double r172864 = Ev;
        double r172865 = mu;
        double r172866 = r172864 - r172865;
        double r172867 = r172863 + r172866;
        double r172868 = KbT;
        double r172869 = r172867 / r172868;
        double r172870 = exp(r172869);
        double r172871 = r172860 + r172870;
        double r172872 = r172859 / r172871;
        double r172873 = r172858 * r172872;
        double r172874 = NdChar;
        double r172875 = Ec;
        double r172876 = EDonor;
        double r172877 = r172875 - r172876;
        double r172878 = r172877 - r172861;
        double r172879 = r172865 - r172878;
        double r172880 = r172879 / r172868;
        double r172881 = exp(r172880);
        double r172882 = r172881 + r172860;
        double r172883 = r172874 / r172882;
        double r172884 = r172873 + r172883;
        return r172884;
}

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

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

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

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

Reproduce

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