
(FPCore (lambda1 lambda2 phi1 phi2) :precision binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
double code(double lambda1, double lambda2, double phi1, double phi2) {
return lambda1 + atan2((cos(phi2) * sin((lambda1 - lambda2))), (cos(phi1) + (cos(phi2) * cos((lambda1 - lambda2)))));
}
real(8) function code(lambda1, lambda2, phi1, phi2)
real(8), intent (in) :: lambda1
real(8), intent (in) :: lambda2
real(8), intent (in) :: phi1
real(8), intent (in) :: phi2
code = lambda1 + atan2((cos(phi2) * sin((lambda1 - lambda2))), (cos(phi1) + (cos(phi2) * cos((lambda1 - lambda2)))))
end function
public static double code(double lambda1, double lambda2, double phi1, double phi2) {
return lambda1 + Math.atan2((Math.cos(phi2) * Math.sin((lambda1 - lambda2))), (Math.cos(phi1) + (Math.cos(phi2) * Math.cos((lambda1 - lambda2)))));
}
def code(lambda1, lambda2, phi1, phi2): return lambda1 + math.atan2((math.cos(phi2) * math.sin((lambda1 - lambda2))), (math.cos(phi1) + (math.cos(phi2) * math.cos((lambda1 - lambda2)))))
function code(lambda1, lambda2, phi1, phi2) return Float64(lambda1 + atan(Float64(cos(phi2) * sin(Float64(lambda1 - lambda2))), Float64(cos(phi1) + Float64(cos(phi2) * cos(Float64(lambda1 - lambda2)))))) end
function tmp = code(lambda1, lambda2, phi1, phi2) tmp = lambda1 + atan2((cos(phi2) * sin((lambda1 - lambda2))), (cos(phi1) + (cos(phi2) * cos((lambda1 - lambda2))))); end
code[lambda1_, lambda2_, phi1_, phi2_] := N[(lambda1 + N[ArcTan[N[(N[Cos[phi2], $MachinePrecision] * N[Sin[N[(lambda1 - lambda2), $MachinePrecision]], $MachinePrecision]), $MachinePrecision] / N[(N[Cos[phi1], $MachinePrecision] + N[(N[Cos[phi2], $MachinePrecision] * N[Cos[N[(lambda1 - lambda2), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]
\begin{array}{l}
\\
\lambda_1 + \tan^{-1}_* \frac{\cos \phi_2 \cdot \sin \left(\lambda_1 - \lambda_2\right)}{\cos \phi_1 + \cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)}
\end{array}
herbie shell --seed 2024035
(FPCore (lambda1 lambda2 phi1 phi2)
:name "Midpoint on a great circle"
:precision binary64
(+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
Please file a bug report with this information.
| list-ref: index too large for list index: 256 in: '(#f #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t #t... | L | C | |
|---|---|---|---|
| valid-splitindices? | /home/nightlies/herbie/zane-regimes-2/src/core/regimes.rkt | 170 | 0 |
| (unnamed) | .../private/arr-i.rkt | 961 | 8 |
| option-on-expr | /home/nightlies/herbie/zane-regimes-2/src/core/regimes.rkt | 106 | 0 |
| infer-splitpoints | /home/nightlies/herbie/zane-regimes-2/src/core/regimes.rkt | 39 | 0 |
| loop | /home/nightlies/herbie/zane-regimes-2/src/core/regimes.rkt | 27 | 2 |
| loop | /home/nightlies/herbie/zane-regimes-2/src/core/regimes.rkt | 27 | 2 |
| loop | /home/nightlies/herbie/zane-regimes-2/src/core/regimes.rkt | 27 | 2 |
| loop | /home/nightlies/herbie/zane-regimes-2/src/core/regimes.rkt | 27 | 2 |
| loop | /home/nightlies/herbie/zane-regimes-2/src/core/regimes.rkt | 27 | 2 |
| loop | /home/nightlies/herbie/zane-regimes-2/src/core/regimes.rkt | 27 | 2 |
| extract! | /home/nightlies/herbie/zane-regimes-2/src/mainloop.rkt | 365 | 0 |
| run-improve! | /home/nightlies/herbie/zane-regimes-2/src/mainloop.rkt | 339 | 0 |
| get-alternatives/report | /home/nightlies/herbie/zane-regimes-2/src/sandbox.rkt | 169 | 0 |
| (unnamed) | /home/nightlies/herbie/zane-regimes-2/src/sandbox.rkt | 262 | 6 |
| (unnamed) | /usr/local/racket/share/pkgs/profile-lib/main.rkt | 40 | 10 |
| profile-thunk | /usr/local/racket/share/pkgs/profile-lib/main.rkt | 9 | 0 |
| (unnamed) | /usr/local/racket/collects/racket/engine.rkt | 42 | 24 |