Average Error: 0.0 → 0.0
Time: 19.4s
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^{\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}{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 r237733 = NdChar;
        double r237734 = 1.0;
        double r237735 = Ec;
        double r237736 = Vef;
        double r237737 = r237735 - r237736;
        double r237738 = EDonor;
        double r237739 = r237737 - r237738;
        double r237740 = mu;
        double r237741 = r237739 - r237740;
        double r237742 = -r237741;
        double r237743 = KbT;
        double r237744 = r237742 / r237743;
        double r237745 = exp(r237744);
        double r237746 = r237734 + r237745;
        double r237747 = r237733 / r237746;
        double r237748 = NaChar;
        double r237749 = Ev;
        double r237750 = r237749 + r237736;
        double r237751 = EAccept;
        double r237752 = r237750 + r237751;
        double r237753 = -r237740;
        double r237754 = r237752 + r237753;
        double r237755 = r237754 / r237743;
        double r237756 = exp(r237755);
        double r237757 = r237734 + r237756;
        double r237758 = r237748 / r237757;
        double r237759 = r237747 + r237758;
        return r237759;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r237760 = NdChar;
        double r237761 = mu;
        double r237762 = EDonor;
        double r237763 = Ec;
        double r237764 = Vef;
        double r237765 = r237763 - r237764;
        double r237766 = r237762 - r237765;
        double r237767 = r237761 + r237766;
        double r237768 = KbT;
        double r237769 = r237767 / r237768;
        double r237770 = exp(r237769);
        double r237771 = 1.0;
        double r237772 = r237770 + r237771;
        double r237773 = r237760 / r237772;
        double r237774 = NaChar;
        double r237775 = Ev;
        double r237776 = r237775 + r237764;
        double r237777 = EAccept;
        double r237778 = r237776 + r237777;
        double r237779 = r237778 - r237761;
        double r237780 = r237779 / r237768;
        double r237781 = exp(r237780);
        double r237782 = r237771 + r237781;
        double r237783 = r237774 / r237782;
        double r237784 = r237773 + r237783;
        return r237784;
}

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. Final simplification0.0

    \[\leadsto \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}}}\]

Reproduce

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