Average Error: 0.0 → 0.0
Time: 13.9s
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}{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}} + NaChar \cdot \frac{1}{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}{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}} + NaChar \cdot \frac{1}{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 r152947 = NdChar;
        double r152948 = 1.0;
        double r152949 = Ec;
        double r152950 = Vef;
        double r152951 = r152949 - r152950;
        double r152952 = EDonor;
        double r152953 = r152951 - r152952;
        double r152954 = mu;
        double r152955 = r152953 - r152954;
        double r152956 = -r152955;
        double r152957 = KbT;
        double r152958 = r152956 / r152957;
        double r152959 = exp(r152958);
        double r152960 = r152948 + r152959;
        double r152961 = r152947 / r152960;
        double r152962 = NaChar;
        double r152963 = Ev;
        double r152964 = r152963 + r152950;
        double r152965 = EAccept;
        double r152966 = r152964 + r152965;
        double r152967 = -r152954;
        double r152968 = r152966 + r152967;
        double r152969 = r152968 / r152957;
        double r152970 = exp(r152969);
        double r152971 = r152948 + r152970;
        double r152972 = r152962 / r152971;
        double r152973 = r152961 + r152972;
        return r152973;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r152974 = NdChar;
        double r152975 = 1.0;
        double r152976 = Ec;
        double r152977 = Vef;
        double r152978 = r152976 - r152977;
        double r152979 = EDonor;
        double r152980 = r152978 - r152979;
        double r152981 = mu;
        double r152982 = r152980 - r152981;
        double r152983 = -r152982;
        double r152984 = KbT;
        double r152985 = r152983 / r152984;
        double r152986 = exp(r152985);
        double r152987 = r152975 + r152986;
        double r152988 = r152974 / r152987;
        double r152989 = NaChar;
        double r152990 = 1.0;
        double r152991 = Ev;
        double r152992 = r152991 + r152977;
        double r152993 = EAccept;
        double r152994 = r152992 + r152993;
        double r152995 = -r152981;
        double r152996 = r152994 + r152995;
        double r152997 = r152996 / r152984;
        double r152998 = exp(r152997);
        double r152999 = r152975 + r152998;
        double r153000 = r152990 / r152999;
        double r153001 = r152989 * r153000;
        double r153002 = r152988 + r153001;
        return r153002;
}

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 div-inv0.0

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

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

Reproduce

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