Average Error: 0.2 → 0.2
Time: 39.2s
Precision: 64
\[\lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\cos delta - \sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\sin \phi_1 \cdot \cos delta + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right)}\]
\[\lambda_1 + \tan^{-1}_* \frac{\cos \phi_1 \cdot \left(\sin delta \cdot \sin theta\right)}{\frac{\sqrt[3]{{\left({\left(\cos delta\right)}^{2} - \sin \left(\sqrt[3]{{\left(\sin^{-1} \left(\cos delta \cdot \sin \phi_1 + \sin delta \cdot \left(\cos theta \cdot \cos \phi_1\right)\right)\right)}^{3}}\right) \cdot \left(\sin \left(\sin^{-1} \left(\cos delta \cdot \sin \phi_1 + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right) \cdot {\left(\sin \phi_1\right)}^{2}\right)\right)}^{3}}}{\sin \left(\sin^{-1} \left(\cos delta \cdot \sin \phi_1 + \sin delta \cdot \left(\cos theta \cdot \cos \phi_1\right)\right)\right) \cdot \sin \phi_1 + \cos delta}}\]
\lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\cos delta - \sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\sin \phi_1 \cdot \cos delta + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right)}
\lambda_1 + \tan^{-1}_* \frac{\cos \phi_1 \cdot \left(\sin delta \cdot \sin theta\right)}{\frac{\sqrt[3]{{\left({\left(\cos delta\right)}^{2} - \sin \left(\sqrt[3]{{\left(\sin^{-1} \left(\cos delta \cdot \sin \phi_1 + \sin delta \cdot \left(\cos theta \cdot \cos \phi_1\right)\right)\right)}^{3}}\right) \cdot \left(\sin \left(\sin^{-1} \left(\cos delta \cdot \sin \phi_1 + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right) \cdot {\left(\sin \phi_1\right)}^{2}\right)\right)}^{3}}}{\sin \left(\sin^{-1} \left(\cos delta \cdot \sin \phi_1 + \sin delta \cdot \left(\cos theta \cdot \cos \phi_1\right)\right)\right) \cdot \sin \phi_1 + \cos delta}}
double f(double lambda1, double phi1, double __attribute__((unused)) phi2, double delta, double theta) {
        double r90084 = lambda1;
        double r90085 = theta;
        double r90086 = sin(r90085);
        double r90087 = delta;
        double r90088 = sin(r90087);
        double r90089 = r90086 * r90088;
        double r90090 = phi1;
        double r90091 = cos(r90090);
        double r90092 = r90089 * r90091;
        double r90093 = cos(r90087);
        double r90094 = sin(r90090);
        double r90095 = r90094 * r90093;
        double r90096 = r90091 * r90088;
        double r90097 = cos(r90085);
        double r90098 = r90096 * r90097;
        double r90099 = r90095 + r90098;
        double r90100 = asin(r90099);
        double r90101 = sin(r90100);
        double r90102 = r90094 * r90101;
        double r90103 = r90093 - r90102;
        double r90104 = atan2(r90092, r90103);
        double r90105 = r90084 + r90104;
        return r90105;
}

double f(double lambda1, double phi1, double __attribute__((unused)) phi2, double delta, double theta) {
        double r90106 = lambda1;
        double r90107 = phi1;
        double r90108 = cos(r90107);
        double r90109 = delta;
        double r90110 = sin(r90109);
        double r90111 = theta;
        double r90112 = sin(r90111);
        double r90113 = r90110 * r90112;
        double r90114 = r90108 * r90113;
        double r90115 = cos(r90109);
        double r90116 = 2.0;
        double r90117 = pow(r90115, r90116);
        double r90118 = sin(r90107);
        double r90119 = r90115 * r90118;
        double r90120 = cos(r90111);
        double r90121 = r90120 * r90108;
        double r90122 = r90110 * r90121;
        double r90123 = r90119 + r90122;
        double r90124 = asin(r90123);
        double r90125 = 3.0;
        double r90126 = pow(r90124, r90125);
        double r90127 = cbrt(r90126);
        double r90128 = sin(r90127);
        double r90129 = r90108 * r90110;
        double r90130 = r90129 * r90120;
        double r90131 = r90119 + r90130;
        double r90132 = asin(r90131);
        double r90133 = sin(r90132);
        double r90134 = pow(r90118, r90116);
        double r90135 = r90133 * r90134;
        double r90136 = r90128 * r90135;
        double r90137 = r90117 - r90136;
        double r90138 = pow(r90137, r90125);
        double r90139 = cbrt(r90138);
        double r90140 = sin(r90124);
        double r90141 = r90140 * r90118;
        double r90142 = r90141 + r90115;
        double r90143 = r90139 / r90142;
        double r90144 = atan2(r90114, r90143);
        double r90145 = r90106 + r90144;
        return r90145;
}

Error

Bits error versus lambda1

Bits error versus phi1

Bits error versus phi2

Bits error versus delta

Bits error versus theta

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.2

    \[\lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\cos delta - \sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\sin \phi_1 \cdot \cos delta + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right)}\]
  2. Using strategy rm
  3. Applied flip--0.2

    \[\leadsto \lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\color{blue}{\frac{\cos delta \cdot \cos delta - \left(\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\sin \phi_1 \cdot \cos delta + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right)\right) \cdot \left(\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\sin \phi_1 \cdot \cos delta + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right)\right)}{\cos delta + \sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\sin \phi_1 \cdot \cos delta + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right)}}}\]
  4. Simplified0.2

    \[\leadsto \lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\frac{\color{blue}{\cos delta \cdot \cos delta - \left({\left(\sin \phi_1\right)}^{2} \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)}}{\cos delta + \sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\sin \phi_1 \cdot \cos delta + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right)}}\]
  5. Simplified0.2

    \[\leadsto \lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\frac{\cos delta \cdot \cos delta - \left({\left(\sin \phi_1\right)}^{2} \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)}{\color{blue}{\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right) + \cos delta}}}\]
  6. Using strategy rm
  7. Applied add-cbrt-cube0.2

    \[\leadsto \lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\frac{\color{blue}{\sqrt[3]{\left(\left(\cos delta \cdot \cos delta - \left({\left(\sin \phi_1\right)}^{2} \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \left(\cos delta \cdot \cos delta - \left({\left(\sin \phi_1\right)}^{2} \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)\right)\right) \cdot \left(\cos delta \cdot \cos delta - \left({\left(\sin \phi_1\right)}^{2} \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)\right) \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right)\right)}}}{\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right) + \cos delta}}\]
  8. Simplified0.2

    \[\leadsto \lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\frac{\sqrt[3]{\color{blue}{{\left({\left(\cos delta\right)}^{2} - \left(\sin \left(\sin^{-1} \left(\cos theta \cdot \left(\sin delta \cdot \cos \phi_1\right) + \sin \phi_1 \cdot \cos delta\right)\right) \cdot {\left(\sin \phi_1\right)}^{2}\right) \cdot \sin \left(\sin^{-1} \left(\cos theta \cdot \left(\sin delta \cdot \cos \phi_1\right) + \sin \phi_1 \cdot \cos delta\right)\right)\right)}^{3}}}}{\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right) + \cos delta}}\]
  9. Using strategy rm
  10. Applied add-cbrt-cube0.2

    \[\leadsto \lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\frac{\sqrt[3]{{\left({\left(\cos delta\right)}^{2} - \left(\sin \left(\sin^{-1} \left(\cos theta \cdot \left(\sin delta \cdot \cos \phi_1\right) + \sin \phi_1 \cdot \cos delta\right)\right) \cdot {\left(\sin \phi_1\right)}^{2}\right) \cdot \sin \color{blue}{\left(\sqrt[3]{\left(\sin^{-1} \left(\cos theta \cdot \left(\sin delta \cdot \cos \phi_1\right) + \sin \phi_1 \cdot \cos delta\right) \cdot \sin^{-1} \left(\cos theta \cdot \left(\sin delta \cdot \cos \phi_1\right) + \sin \phi_1 \cdot \cos delta\right)\right) \cdot \sin^{-1} \left(\cos theta \cdot \left(\sin delta \cdot \cos \phi_1\right) + \sin \phi_1 \cdot \cos delta\right)}\right)}\right)}^{3}}}{\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right) + \cos delta}}\]
  11. Simplified0.2

    \[\leadsto \lambda_1 + \tan^{-1}_* \frac{\left(\sin theta \cdot \sin delta\right) \cdot \cos \phi_1}{\frac{\sqrt[3]{{\left({\left(\cos delta\right)}^{2} - \left(\sin \left(\sin^{-1} \left(\cos theta \cdot \left(\sin delta \cdot \cos \phi_1\right) + \sin \phi_1 \cdot \cos delta\right)\right) \cdot {\left(\sin \phi_1\right)}^{2}\right) \cdot \sin \left(\sqrt[3]{\color{blue}{{\left(\sin^{-1} \left(\sin \phi_1 \cdot \cos delta + \sin delta \cdot \left(\cos theta \cdot \cos \phi_1\right)\right)\right)}^{3}}}\right)\right)}^{3}}}{\sin \phi_1 \cdot \sin \left(\sin^{-1} \left(\left(\cos theta \cdot \cos \phi_1\right) \cdot \sin delta + \sin \phi_1 \cdot \cos delta\right)\right) + \cos delta}}\]
  12. Final simplification0.2

    \[\leadsto \lambda_1 + \tan^{-1}_* \frac{\cos \phi_1 \cdot \left(\sin delta \cdot \sin theta\right)}{\frac{\sqrt[3]{{\left({\left(\cos delta\right)}^{2} - \sin \left(\sqrt[3]{{\left(\sin^{-1} \left(\cos delta \cdot \sin \phi_1 + \sin delta \cdot \left(\cos theta \cdot \cos \phi_1\right)\right)\right)}^{3}}\right) \cdot \left(\sin \left(\sin^{-1} \left(\cos delta \cdot \sin \phi_1 + \left(\cos \phi_1 \cdot \sin delta\right) \cdot \cos theta\right)\right) \cdot {\left(\sin \phi_1\right)}^{2}\right)\right)}^{3}}}{\sin \left(\sin^{-1} \left(\cos delta \cdot \sin \phi_1 + \sin delta \cdot \left(\cos theta \cdot \cos \phi_1\right)\right)\right) \cdot \sin \phi_1 + \cos delta}}\]

Reproduce

herbie shell --seed 2019179 
(FPCore (lambda1 phi1 phi2 delta theta)
  :name "Destination given bearing on a great circle"
  (+ lambda1 (atan2 (* (* (sin theta) (sin delta)) (cos phi1)) (- (cos delta) (* (sin phi1) (sin (asin (+ (* (sin phi1) (cos delta)) (* (* (cos phi1) (sin delta)) (cos theta))))))))))