Average Error: 0.0 → 0.0
Time: 13.3s
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}}}\]
\[NdChar \cdot \frac{1}{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}}} + \frac{NaChar}{1 + e^{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}
NdChar \cdot \frac{1}{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}}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r401702 = NdChar;
        double r401703 = 1.0;
        double r401704 = Ec;
        double r401705 = Vef;
        double r401706 = r401704 - r401705;
        double r401707 = EDonor;
        double r401708 = r401706 - r401707;
        double r401709 = mu;
        double r401710 = r401708 - r401709;
        double r401711 = -r401710;
        double r401712 = KbT;
        double r401713 = r401711 / r401712;
        double r401714 = exp(r401713);
        double r401715 = r401703 + r401714;
        double r401716 = r401702 / r401715;
        double r401717 = NaChar;
        double r401718 = Ev;
        double r401719 = r401718 + r401705;
        double r401720 = EAccept;
        double r401721 = r401719 + r401720;
        double r401722 = -r401709;
        double r401723 = r401721 + r401722;
        double r401724 = r401723 / r401712;
        double r401725 = exp(r401724);
        double r401726 = r401703 + r401725;
        double r401727 = r401717 / r401726;
        double r401728 = r401716 + r401727;
        return r401728;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r401729 = NdChar;
        double r401730 = 1.0;
        double r401731 = 1.0;
        double r401732 = Ec;
        double r401733 = Vef;
        double r401734 = r401732 - r401733;
        double r401735 = EDonor;
        double r401736 = r401734 - r401735;
        double r401737 = mu;
        double r401738 = r401736 - r401737;
        double r401739 = -r401738;
        double r401740 = KbT;
        double r401741 = r401739 / r401740;
        double r401742 = exp(r401741);
        double r401743 = r401731 + r401742;
        double r401744 = r401730 / r401743;
        double r401745 = r401729 * r401744;
        double r401746 = NaChar;
        double r401747 = Ev;
        double r401748 = r401747 + r401733;
        double r401749 = EAccept;
        double r401750 = r401748 + r401749;
        double r401751 = -r401737;
        double r401752 = r401750 + r401751;
        double r401753 = r401752 / r401740;
        double r401754 = exp(r401753);
        double r401755 = r401731 + r401754;
        double r401756 = r401746 / r401755;
        double r401757 = r401745 + r401756;
        return r401757;
}

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 \color{blue}{NdChar \cdot \frac{1}{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}}}\]
  4. Final simplification0.0

    \[\leadsto NdChar \cdot \frac{1}{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}}}\]

Reproduce

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