Average Error: 0.0 → 0.0
Time: 35.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}}}\]
\[\frac{NdChar}{1 + e^{\frac{-\left(\left(\left(Ec - Vef\right) - EDonor\right) - mu\right)}{KbT}}} + \frac{NaChar}{1 + {\left(e^{\sqrt[3]{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}} \cdot \sqrt[3]{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}\right)}^{\left(\sqrt[3]{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}\right)}}\]
\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}}} + \frac{NaChar}{1 + {\left(e^{\sqrt[3]{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}} \cdot \sqrt[3]{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}\right)}^{\left(\sqrt[3]{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}\right)}}
double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r210536 = NdChar;
        double r210537 = 1.0;
        double r210538 = Ec;
        double r210539 = Vef;
        double r210540 = r210538 - r210539;
        double r210541 = EDonor;
        double r210542 = r210540 - r210541;
        double r210543 = mu;
        double r210544 = r210542 - r210543;
        double r210545 = -r210544;
        double r210546 = KbT;
        double r210547 = r210545 / r210546;
        double r210548 = exp(r210547);
        double r210549 = r210537 + r210548;
        double r210550 = r210536 / r210549;
        double r210551 = NaChar;
        double r210552 = Ev;
        double r210553 = r210552 + r210539;
        double r210554 = EAccept;
        double r210555 = r210553 + r210554;
        double r210556 = -r210543;
        double r210557 = r210555 + r210556;
        double r210558 = r210557 / r210546;
        double r210559 = exp(r210558);
        double r210560 = r210537 + r210559;
        double r210561 = r210551 / r210560;
        double r210562 = r210550 + r210561;
        return r210562;
}

double f(double NdChar, double Ec, double Vef, double EDonor, double mu, double KbT, double NaChar, double Ev, double EAccept) {
        double r210563 = NdChar;
        double r210564 = 1.0;
        double r210565 = Ec;
        double r210566 = Vef;
        double r210567 = r210565 - r210566;
        double r210568 = EDonor;
        double r210569 = r210567 - r210568;
        double r210570 = mu;
        double r210571 = r210569 - r210570;
        double r210572 = -r210571;
        double r210573 = KbT;
        double r210574 = r210572 / r210573;
        double r210575 = exp(r210574);
        double r210576 = r210564 + r210575;
        double r210577 = r210563 / r210576;
        double r210578 = NaChar;
        double r210579 = Ev;
        double r210580 = r210579 + r210566;
        double r210581 = EAccept;
        double r210582 = r210580 + r210581;
        double r210583 = -r210570;
        double r210584 = r210582 + r210583;
        double r210585 = r210584 / r210573;
        double r210586 = cbrt(r210585);
        double r210587 = r210586 * r210586;
        double r210588 = exp(r210587);
        double r210589 = pow(r210588, r210586);
        double r210590 = r210564 + r210589;
        double r210591 = r210578 / r210590;
        double r210592 = r210577 + r210591;
        return r210592;
}

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)}{KbT}}} + \frac{NaChar}{1 + e^{\color{blue}{\left(\sqrt[3]{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}} \cdot \sqrt[3]{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}\right) \cdot \sqrt[3]{\frac{\left(\left(Ev + Vef\right) + EAccept\right) + \left(-mu\right)}{KbT}}}}}\]
  4. Applied exp-prod0.0

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

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

Reproduce

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