Average Error: 0.0 → 0.0
Time: 30.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}}}\]
\[\frac{NdChar}{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}}} \cdot \sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}}} + 1} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{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}{\sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}}} \cdot \sqrt{e^{\frac{mu + \left(EDonor - \left(Ec - Vef\right)\right)}{KbT}}} + 1} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r127950 = NdChar;
        double r127951 = 1.0;
        double r127952 = Ec;
        double r127953 = Vef;
        double r127954 = r127952 - r127953;
        double r127955 = EDonor;
        double r127956 = r127954 - r127955;
        double r127957 = mu;
        double r127958 = r127956 - r127957;
        double r127959 = -r127958;
        double r127960 = KbT;
        double r127961 = r127959 / r127960;
        double r127962 = exp(r127961);
        double r127963 = r127951 + r127962;
        double r127964 = r127950 / r127963;
        double r127965 = NaChar;
        double r127966 = Ev;
        double r127967 = r127966 + r127953;
        double r127968 = EAccept;
        double r127969 = r127967 + r127968;
        double r127970 = -r127957;
        double r127971 = r127969 + r127970;
        double r127972 = r127971 / r127960;
        double r127973 = exp(r127972);
        double r127974 = r127951 + r127973;
        double r127975 = r127965 / r127974;
        double r127976 = r127964 + r127975;
        return r127976;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r127977 = NdChar;
        double r127978 = mu;
        double r127979 = EDonor;
        double r127980 = Ec;
        double r127981 = Vef;
        double r127982 = r127980 - r127981;
        double r127983 = r127979 - r127982;
        double r127984 = r127978 + r127983;
        double r127985 = KbT;
        double r127986 = r127984 / r127985;
        double r127987 = exp(r127986);
        double r127988 = sqrt(r127987);
        double r127989 = r127988 * r127988;
        double r127990 = 1.0;
        double r127991 = r127989 + r127990;
        double r127992 = r127977 / r127991;
        double r127993 = NaChar;
        double r127994 = Ev;
        double r127995 = r127994 + r127981;
        double r127996 = EAccept;
        double r127997 = r127995 + r127996;
        double r127998 = r127997 - r127978;
        double r127999 = r127998 / r127985;
        double r128000 = exp(r127999);
        double r128001 = r127990 + r128000;
        double r128002 = r127993 / r128001;
        double r128003 = r127992 + r128002;
        return r128003;
}

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

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

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

Reproduce

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