Average Error: 3.6 → 3.6
Time: 2.3s
Precision: binary64
\[\left(\left(297.85036000000002 + 445267.111480000021 \cdot \frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right) - 0.0019142 \cdot {\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{2}\right) + \frac{{\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{3}}{189474}\]
\[\left(\left(297.85036000000002 + 445267.111480000021 \cdot \frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right) - 0.0019142 \cdot {\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{2}\right) + \frac{{\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{3}}{189474}\]
\left(\left(297.85036000000002 + 445267.111480000021 \cdot \frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right) - 0.0019142 \cdot {\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{2}\right) + \frac{{\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{3}}{189474}
\left(\left(297.85036000000002 + 445267.111480000021 \cdot \frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right) - 0.0019142 \cdot {\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{2}\right) + \frac{{\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{3}}{189474}
double code(double t) {
	return ((double) (((double) (((double) (297.85036 + ((double) (445267.11148 * ((double) (((double) (((double) (((double) (((double) (t + 32.184)) / 86400.0)) + 2400000.5)) - 2451545.0)) / 36525.0)))))) - ((double) (0.0019142 * ((double) pow(((double) (((double) (((double) (((double) (((double) (t + 32.184)) / 86400.0)) + 2400000.5)) - 2451545.0)) / 36525.0)), 2.0)))))) + ((double) (((double) pow(((double) (((double) (((double) (((double) (((double) (t + 32.184)) / 86400.0)) + 2400000.5)) - 2451545.0)) / 36525.0)), 3.0)) / 189474.0))));
}
double code(double t) {
	return ((double) (((double) (((double) (297.85036 + ((double) (445267.11148 * ((double) (((double) (((double) (((double) (((double) (t + 32.184)) / 86400.0)) + 2400000.5)) - 2451545.0)) / 36525.0)))))) - ((double) (0.0019142 * ((double) pow(((double) (((double) (((double) (((double) (((double) (t + 32.184)) / 86400.0)) + 2400000.5)) - 2451545.0)) / 36525.0)), 2.0)))))) + ((double) (((double) pow(((double) (((double) (((double) (((double) (((double) (t + 32.184)) / 86400.0)) + 2400000.5)) - 2451545.0)) / 36525.0)), 3.0)) / 189474.0))));
}

Error

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 3.6

    \[\left(\left(297.85036000000002 + 445267.111480000021 \cdot \frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right) - 0.0019142 \cdot {\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{2}\right) + \frac{{\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{3}}{189474}\]
  2. Final simplification3.6

    \[\leadsto \left(\left(297.85036000000002 + 445267.111480000021 \cdot \frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right) - 0.0019142 \cdot {\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{2}\right) + \frac{{\left(\frac{\left(\frac{t + 32.183999999999997}{86400} + 2400000.5\right) - 2451545}{36525}\right)}^{3}}{189474}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (t)
  :name "(+ (- (+ 297.85036 (* 445267.11148 (/ (- (+ (/ (+ t 32.184) 86400) 2400000.5) 2451545) 36525))) (* 0.0019142 (pow (/ (- (+ (/ (+ t 32.184) 86400) 2400000.5) 2451545) 36525) 2))) (/ (pow (/ (- (+ (/ (+ t 32.184) 86400) 2400000.5) 2451545) 36525) 3) 189474))"
  :precision binary64
  (+ (- (+ 297.85036 (* 445267.11148 (/ (- (+ (/ (+ t 32.184) 86400.0) 2400000.5) 2451545.0) 36525.0))) (* 0.0019142 (pow (/ (- (+ (/ (+ t 32.184) 86400.0) 2400000.5) 2451545.0) 36525.0) 2.0))) (/ (pow (/ (- (+ (/ (+ t 32.184) 86400.0) 2400000.5) 2451545.0) 36525.0) 3.0) 189474.0)))