Average Error: 0.0 → 0.0
Time: 13.6s
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{1}{\sqrt[3]{KbT} \cdot \sqrt[3]{KbT}} \cdot \frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{\sqrt[3]{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}}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}
\frac{NdChar}{1 + e^{\frac{1}{\sqrt[3]{KbT} \cdot \sqrt[3]{KbT}} \cdot \frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{\sqrt[3]{KbT}}}} + \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 r243938 = NdChar;
        double r243939 = 1.0;
        double r243940 = Ec;
        double r243941 = Vef;
        double r243942 = r243940 - r243941;
        double r243943 = EDonor;
        double r243944 = r243942 - r243943;
        double r243945 = mu;
        double r243946 = r243944 - r243945;
        double r243947 = -r243946;
        double r243948 = KbT;
        double r243949 = r243947 / r243948;
        double r243950 = exp(r243949);
        double r243951 = r243939 + r243950;
        double r243952 = r243938 / r243951;
        double r243953 = NaChar;
        double r243954 = Ev;
        double r243955 = r243954 + r243941;
        double r243956 = EAccept;
        double r243957 = r243955 + r243956;
        double r243958 = -r243945;
        double r243959 = r243957 + r243958;
        double r243960 = r243959 / r243948;
        double r243961 = exp(r243960);
        double r243962 = r243939 + r243961;
        double r243963 = r243953 / r243962;
        double r243964 = r243952 + r243963;
        return r243964;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r243965 = NdChar;
        double r243966 = 1.0;
        double r243967 = 1.0;
        double r243968 = KbT;
        double r243969 = cbrt(r243968);
        double r243970 = r243969 * r243969;
        double r243971 = r243967 / r243970;
        double r243972 = Ec;
        double r243973 = Vef;
        double r243974 = r243972 - r243973;
        double r243975 = EDonor;
        double r243976 = r243974 - r243975;
        double r243977 = mu;
        double r243978 = r243976 - r243977;
        double r243979 = -r243978;
        double r243980 = r243979 / r243969;
        double r243981 = r243971 * r243980;
        double r243982 = exp(r243981);
        double r243983 = r243966 + r243982;
        double r243984 = r243965 / r243983;
        double r243985 = NaChar;
        double r243986 = Ev;
        double r243987 = r243986 + r243973;
        double r243988 = EAccept;
        double r243989 = r243987 + r243988;
        double r243990 = -r243977;
        double r243991 = r243989 + r243990;
        double r243992 = r243991 / r243968;
        double r243993 = exp(r243992);
        double r243994 = r243966 + r243993;
        double r243995 = r243985 / r243994;
        double r243996 = r243984 + r243995;
        return r243996;
}

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-cube-cbrt0.0

    \[\leadsto \frac{NdChar}{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{\color{blue}{\left(\sqrt[3]{KbT} \cdot \sqrt[3]{KbT}\right) \cdot \sqrt[3]{KbT}}}}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}\]
  4. Applied *-un-lft-identity0.0

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

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

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

Reproduce

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