Average Error: 0.0 → 0.0
Time: 10.1s
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{NaChar}{e^{\frac{\left(EAccept + \left(Vef + Ev\right)\right) - mu}{KbT}} + 1} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}\]
\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{NaChar}{e^{\frac{\left(EAccept + \left(Vef + Ev\right)\right) - mu}{KbT}} + 1} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r7187708 = NdChar;
        double r7187709 = 1.0;
        double r7187710 = Ec;
        double r7187711 = Vef;
        double r7187712 = r7187710 - r7187711;
        double r7187713 = EDonor;
        double r7187714 = r7187712 - r7187713;
        double r7187715 = mu;
        double r7187716 = r7187714 - r7187715;
        double r7187717 = -r7187716;
        double r7187718 = KbT;
        double r7187719 = r7187717 / r7187718;
        double r7187720 = exp(r7187719);
        double r7187721 = r7187709 + r7187720;
        double r7187722 = r7187708 / r7187721;
        double r7187723 = NaChar;
        double r7187724 = Ev;
        double r7187725 = r7187724 + r7187711;
        double r7187726 = EAccept;
        double r7187727 = r7187725 + r7187726;
        double r7187728 = -r7187715;
        double r7187729 = r7187727 + r7187728;
        double r7187730 = r7187729 / r7187718;
        double r7187731 = exp(r7187730);
        double r7187732 = r7187709 + r7187731;
        double r7187733 = r7187723 / r7187732;
        double r7187734 = r7187722 + r7187733;
        return r7187734;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r7187735 = NaChar;
        double r7187736 = EAccept;
        double r7187737 = Vef;
        double r7187738 = Ev;
        double r7187739 = r7187737 + r7187738;
        double r7187740 = r7187736 + r7187739;
        double r7187741 = mu;
        double r7187742 = r7187740 - r7187741;
        double r7187743 = KbT;
        double r7187744 = r7187742 / r7187743;
        double r7187745 = exp(r7187744);
        double r7187746 = 1.0;
        double r7187747 = r7187745 + r7187746;
        double r7187748 = r7187735 / r7187747;
        double r7187749 = NdChar;
        double r7187750 = EDonor;
        double r7187751 = Ec;
        double r7187752 = r7187751 - r7187741;
        double r7187753 = r7187752 - r7187737;
        double r7187754 = r7187750 - r7187753;
        double r7187755 = r7187754 / r7187743;
        double r7187756 = exp(r7187755);
        double r7187757 = r7187756 + r7187746;
        double r7187758 = r7187749 / r7187757;
        double r7187759 = r7187748 + r7187758;
        return r7187759;
}

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{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) - mu}{KbT}}} + \frac{NdChar}{e^{\frac{EDonor - \left(\left(Ec - mu\right) - Vef\right)}{KbT}} + 1}}\]
  3. Final simplification0.0

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

Reproduce

herbie shell --seed 2019162 +o rules:numerics
(FPCore (NdChar Ec Vef EDonor mu KbT NaChar Ev EAccept)
  :name "Bulmash initializePoisson"
  (+ (/ NdChar (+ 1 (exp (/ (- (- (- (- Ec Vef) EDonor) mu)) KbT)))) (/ NaChar (+ 1 (exp (/ (+ (+ (+ Ev Vef) EAccept) (- mu)) KbT))))))