\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)}double f(double lambda1, double phi1, double __attribute__((unused)) phi2, double delta, double theta) {
double r8198 = lambda1;
double r8199 = theta;
double r8200 = sin(r8199);
double r8201 = delta;
double r8202 = sin(r8201);
double r8203 = r8200 * r8202;
double r8204 = phi1;
double r8205 = cos(r8204);
double r8206 = r8203 * r8205;
double r8207 = cos(r8201);
double r8208 = sin(r8204);
double r8209 = r8208 * r8207;
double r8210 = r8205 * r8202;
double r8211 = cos(r8199);
double r8212 = r8210 * r8211;
double r8213 = r8209 + r8212;
double r8214 = asin(r8213);
double r8215 = sin(r8214);
double r8216 = r8208 * r8215;
double r8217 = r8207 - r8216;
double r8218 = atan2(r8206, r8217);
double r8219 = r8198 + r8218;
return r8219;
}
Please include this information when filing a bug report:
herbie shell --seed 2019173
(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))))))))))
| atab-pick-alt: contract violation expected: alt? given: '(#<alt (λ (lambda1 phi1 phi2 delta theta) (+ (atan2 (* (sin delta) (* (cos phi1) (sin theta))) (- (cos delta) (* (sin phi1) (sin (asin (+ (* (cos delta) (sin phi1)) (* (cos theta) (* (cos phi1) (sin delta))))))))) lambda1))>) in: the range of the #:picking-func argument of (-> alt-table? #:only-fresh boolean? #:picking-func (-> (listof alt?) alt?) (values alt? alt-table?)) contract from: /data/pavpan/nightlies/herbie/no-costs-2/src/core/alt-table.rkt blaming: /data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt (assuming the contract is correct) at: /data/pavpan/nightlies/herbie/no-costs-2/src/core/alt-table.rkt:13.3 | L | C | |
|---|---|---|---|
| raise-blame-error16 | /opt/racket-7.0/collects/racket/contract/private/blame.rkt | 347 | 0 |
| (unnamed) | /data/pavpan/nightlies/herbie/no-costs-2/src/core/alt-table.rkt | 59 | 0 |
| (unnamed) | /opt/racket-7.0/collects/racket/contract/private/arrow-val-first.rkt | 388 | 18 |
| choose-best-alt! | /data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt | 110 | 0 |
| run-iter! | /data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt | 319 | 0 |
| for-loop | /data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt | 353 | 4 |
| run-improve43 | /data/pavpan/nightlies/herbie/no-costs-2/src/mainloop.rkt | 338 | 0 |
| (unnamed) | /opt/racket-7.0/collects/racket/private/more-scheme.rkt | 261 | 28 |
| run | /opt/racket-7.0/share/pkgs/profile-lib/main.rkt | 39 | 2 |
| profile-thunk16 | /opt/racket-7.0/share/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /opt/racket-7.0/collects/racket/private/more-scheme.rkt | 261 | 28 |