Average Error: 0.0 → 0.0
Time: 19.3s
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^{\log \left(\sqrt{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}}\right) + \log \left(\sqrt{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}}\right)}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\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{NdChar}{e^{\log \left(\sqrt{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}}\right) + \log \left(\sqrt{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}}\right)}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r220902 = NdChar;
        double r220903 = 1.0;
        double r220904 = Ec;
        double r220905 = Vef;
        double r220906 = r220904 - r220905;
        double r220907 = EDonor;
        double r220908 = r220906 - r220907;
        double r220909 = mu;
        double r220910 = r220908 - r220909;
        double r220911 = -r220910;
        double r220912 = KbT;
        double r220913 = r220911 / r220912;
        double r220914 = exp(r220913);
        double r220915 = r220903 + r220914;
        double r220916 = r220902 / r220915;
        double r220917 = NaChar;
        double r220918 = Ev;
        double r220919 = r220918 + r220905;
        double r220920 = EAccept;
        double r220921 = r220919 + r220920;
        double r220922 = -r220909;
        double r220923 = r220921 + r220922;
        double r220924 = r220923 / r220912;
        double r220925 = exp(r220924);
        double r220926 = r220903 + r220925;
        double r220927 = r220917 / r220926;
        double r220928 = r220916 + r220927;
        return r220928;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r220929 = NdChar;
        double r220930 = 1.0;
        double r220931 = Ec;
        double r220932 = Vef;
        double r220933 = r220931 - r220932;
        double r220934 = EDonor;
        double r220935 = r220933 - r220934;
        double r220936 = mu;
        double r220937 = r220935 - r220936;
        double r220938 = -r220937;
        double r220939 = KbT;
        double r220940 = r220938 / r220939;
        double r220941 = exp(r220940);
        double r220942 = r220930 + r220941;
        double r220943 = sqrt(r220942);
        double r220944 = log(r220943);
        double r220945 = r220944 + r220944;
        double r220946 = exp(r220945);
        double r220947 = r220929 / r220946;
        double r220948 = NaChar;
        double r220949 = Ev;
        double r220950 = r220949 + r220932;
        double r220951 = EAccept;
        double r220952 = r220950 + r220951;
        double r220953 = -r220936;
        double r220954 = r220952 + r220953;
        double r220955 = r220954 / r220939;
        double r220956 = exp(r220955);
        double r220957 = r220930 + r220956;
        double r220958 = r220948 / r220957;
        double r220959 = r220947 + r220958;
        return r220959;
}

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. Using strategy rm
  3. Applied add-exp-log0.0

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

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

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

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

Reproduce

herbie shell --seed 2020042 
(FPCore (NdChar Ec Vef EDonor mu KbT NaChar Ev EAccept)
  :name "Bulmash initializePoisson"
  :precision binary64
  (+ (/ NdChar (+ 1 (exp (/ (- (- (- (- Ec Vef) EDonor) mu)) KbT)))) (/ NaChar (+ 1 (exp (/ (+ (+ (+ Ev Vef) EAccept) (- mu)) KbT))))))