?

Average Error: 13.3 → 13.1
Time: 56.1s
Precision: binary64
Cost: 72196

?

\[\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \left(\sin \phi_1 \cdot \cos \phi_2\right) \cdot \cos \left(\lambda_1 - \lambda_2\right)} \]
\[\begin{array}{l} t_0 := \cos \phi_1 \cdot \sin \phi_2\\ t_1 := \cos \left(\lambda_1 - \lambda_2\right)\\ \mathbf{if}\;\lambda_1 \leq 4.1 \cdot 10^{+111}:\\ \;\;\;\;\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{t_0 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot t_1\right)}\\ \mathbf{else}:\\ \;\;\;\;\tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + {\lambda_2}^{2} \cdot \left(-0.5 \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{t_0 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot t_1\right)}\\ \end{array} \]
(FPCore (lambda1 lambda2 phi1 phi2)
 :precision binary64
 (atan2
  (* (sin (- lambda1 lambda2)) (cos phi2))
  (-
   (* (cos phi1) (sin phi2))
   (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))))
(FPCore (lambda1 lambda2 phi1 phi2)
 :precision binary64
 (let* ((t_0 (* (cos phi1) (sin phi2))) (t_1 (cos (- lambda1 lambda2))))
   (if (<= lambda1 4.1e+111)
     (atan2
      (* (sin (- lambda1 lambda2)) (cos phi2))
      (- t_0 (* (cos phi2) (* (sin phi1) t_1))))
     (atan2
      (*
       (+
        (sin lambda1)
        (+
         (* (- lambda2) (cos lambda1))
         (* (pow lambda2 2.0) (* -0.5 (sin lambda1)))))
       (cos phi2))
      (- t_0 (* (sin phi1) (* (cos phi2) t_1)))))))
double code(double lambda1, double lambda2, double phi1, double phi2) {
	return atan2((sin((lambda1 - lambda2)) * cos(phi2)), ((cos(phi1) * sin(phi2)) - ((sin(phi1) * cos(phi2)) * cos((lambda1 - lambda2)))));
}
double code(double lambda1, double lambda2, double phi1, double phi2) {
	double t_0 = cos(phi1) * sin(phi2);
	double t_1 = cos((lambda1 - lambda2));
	double tmp;
	if (lambda1 <= 4.1e+111) {
		tmp = atan2((sin((lambda1 - lambda2)) * cos(phi2)), (t_0 - (cos(phi2) * (sin(phi1) * t_1))));
	} else {
		tmp = atan2(((sin(lambda1) + ((-lambda2 * cos(lambda1)) + (pow(lambda2, 2.0) * (-0.5 * sin(lambda1))))) * cos(phi2)), (t_0 - (sin(phi1) * (cos(phi2) * t_1))));
	}
	return tmp;
}
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 = atan2((sin((lambda1 - lambda2)) * cos(phi2)), ((cos(phi1) * sin(phi2)) - ((sin(phi1) * cos(phi2)) * cos((lambda1 - lambda2)))))
end function
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
    real(8) :: t_0
    real(8) :: t_1
    real(8) :: tmp
    t_0 = cos(phi1) * sin(phi2)
    t_1 = cos((lambda1 - lambda2))
    if (lambda1 <= 4.1d+111) then
        tmp = atan2((sin((lambda1 - lambda2)) * cos(phi2)), (t_0 - (cos(phi2) * (sin(phi1) * t_1))))
    else
        tmp = atan2(((sin(lambda1) + ((-lambda2 * cos(lambda1)) + ((lambda2 ** 2.0d0) * ((-0.5d0) * sin(lambda1))))) * cos(phi2)), (t_0 - (sin(phi1) * (cos(phi2) * t_1))))
    end if
    code = tmp
end function
public static double code(double lambda1, double lambda2, double phi1, double phi2) {
	return Math.atan2((Math.sin((lambda1 - lambda2)) * Math.cos(phi2)), ((Math.cos(phi1) * Math.sin(phi2)) - ((Math.sin(phi1) * Math.cos(phi2)) * Math.cos((lambda1 - lambda2)))));
}
public static double code(double lambda1, double lambda2, double phi1, double phi2) {
	double t_0 = Math.cos(phi1) * Math.sin(phi2);
	double t_1 = Math.cos((lambda1 - lambda2));
	double tmp;
	if (lambda1 <= 4.1e+111) {
		tmp = Math.atan2((Math.sin((lambda1 - lambda2)) * Math.cos(phi2)), (t_0 - (Math.cos(phi2) * (Math.sin(phi1) * t_1))));
	} else {
		tmp = Math.atan2(((Math.sin(lambda1) + ((-lambda2 * Math.cos(lambda1)) + (Math.pow(lambda2, 2.0) * (-0.5 * Math.sin(lambda1))))) * Math.cos(phi2)), (t_0 - (Math.sin(phi1) * (Math.cos(phi2) * t_1))));
	}
	return tmp;
}
def code(lambda1, lambda2, phi1, phi2):
	return math.atan2((math.sin((lambda1 - lambda2)) * math.cos(phi2)), ((math.cos(phi1) * math.sin(phi2)) - ((math.sin(phi1) * math.cos(phi2)) * math.cos((lambda1 - lambda2)))))
def code(lambda1, lambda2, phi1, phi2):
	t_0 = math.cos(phi1) * math.sin(phi2)
	t_1 = math.cos((lambda1 - lambda2))
	tmp = 0
	if lambda1 <= 4.1e+111:
		tmp = math.atan2((math.sin((lambda1 - lambda2)) * math.cos(phi2)), (t_0 - (math.cos(phi2) * (math.sin(phi1) * t_1))))
	else:
		tmp = math.atan2(((math.sin(lambda1) + ((-lambda2 * math.cos(lambda1)) + (math.pow(lambda2, 2.0) * (-0.5 * math.sin(lambda1))))) * math.cos(phi2)), (t_0 - (math.sin(phi1) * (math.cos(phi2) * t_1))))
	return tmp
function code(lambda1, lambda2, phi1, phi2)
	return atan(Float64(sin(Float64(lambda1 - lambda2)) * cos(phi2)), Float64(Float64(cos(phi1) * sin(phi2)) - Float64(Float64(sin(phi1) * cos(phi2)) * cos(Float64(lambda1 - lambda2)))))
end
function code(lambda1, lambda2, phi1, phi2)
	t_0 = Float64(cos(phi1) * sin(phi2))
	t_1 = cos(Float64(lambda1 - lambda2))
	tmp = 0.0
	if (lambda1 <= 4.1e+111)
		tmp = atan(Float64(sin(Float64(lambda1 - lambda2)) * cos(phi2)), Float64(t_0 - Float64(cos(phi2) * Float64(sin(phi1) * t_1))));
	else
		tmp = atan(Float64(Float64(sin(lambda1) + Float64(Float64(Float64(-lambda2) * cos(lambda1)) + Float64((lambda2 ^ 2.0) * Float64(-0.5 * sin(lambda1))))) * cos(phi2)), Float64(t_0 - Float64(sin(phi1) * Float64(cos(phi2) * t_1))));
	end
	return tmp
end
function tmp = code(lambda1, lambda2, phi1, phi2)
	tmp = atan2((sin((lambda1 - lambda2)) * cos(phi2)), ((cos(phi1) * sin(phi2)) - ((sin(phi1) * cos(phi2)) * cos((lambda1 - lambda2)))));
end
function tmp_2 = code(lambda1, lambda2, phi1, phi2)
	t_0 = cos(phi1) * sin(phi2);
	t_1 = cos((lambda1 - lambda2));
	tmp = 0.0;
	if (lambda1 <= 4.1e+111)
		tmp = atan2((sin((lambda1 - lambda2)) * cos(phi2)), (t_0 - (cos(phi2) * (sin(phi1) * t_1))));
	else
		tmp = atan2(((sin(lambda1) + ((-lambda2 * cos(lambda1)) + ((lambda2 ^ 2.0) * (-0.5 * sin(lambda1))))) * cos(phi2)), (t_0 - (sin(phi1) * (cos(phi2) * t_1))));
	end
	tmp_2 = tmp;
end
code[lambda1_, lambda2_, phi1_, phi2_] := N[ArcTan[N[(N[Sin[N[(lambda1 - lambda2), $MachinePrecision]], $MachinePrecision] * N[Cos[phi2], $MachinePrecision]), $MachinePrecision] / N[(N[(N[Cos[phi1], $MachinePrecision] * N[Sin[phi2], $MachinePrecision]), $MachinePrecision] - N[(N[(N[Sin[phi1], $MachinePrecision] * N[Cos[phi2], $MachinePrecision]), $MachinePrecision] * N[Cos[N[(lambda1 - lambda2), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]
code[lambda1_, lambda2_, phi1_, phi2_] := Block[{t$95$0 = N[(N[Cos[phi1], $MachinePrecision] * N[Sin[phi2], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[Cos[N[(lambda1 - lambda2), $MachinePrecision]], $MachinePrecision]}, If[LessEqual[lambda1, 4.1e+111], N[ArcTan[N[(N[Sin[N[(lambda1 - lambda2), $MachinePrecision]], $MachinePrecision] * N[Cos[phi2], $MachinePrecision]), $MachinePrecision] / N[(t$95$0 - N[(N[Cos[phi2], $MachinePrecision] * N[(N[Sin[phi1], $MachinePrecision] * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision], N[ArcTan[N[(N[(N[Sin[lambda1], $MachinePrecision] + N[(N[((-lambda2) * N[Cos[lambda1], $MachinePrecision]), $MachinePrecision] + N[(N[Power[lambda2, 2.0], $MachinePrecision] * N[(-0.5 * N[Sin[lambda1], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[Cos[phi2], $MachinePrecision]), $MachinePrecision] / N[(t$95$0 - N[(N[Sin[phi1], $MachinePrecision] * N[(N[Cos[phi2], $MachinePrecision] * t$95$1), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]]]]
\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \left(\sin \phi_1 \cdot \cos \phi_2\right) \cdot \cos \left(\lambda_1 - \lambda_2\right)}
\begin{array}{l}
t_0 := \cos \phi_1 \cdot \sin \phi_2\\
t_1 := \cos \left(\lambda_1 - \lambda_2\right)\\
\mathbf{if}\;\lambda_1 \leq 4.1 \cdot 10^{+111}:\\
\;\;\;\;\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{t_0 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot t_1\right)}\\

\mathbf{else}:\\
\;\;\;\;\tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + {\lambda_2}^{2} \cdot \left(-0.5 \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{t_0 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot t_1\right)}\\


\end{array}

Error?

Try it out?

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation?

  1. Split input into 2 regimes
  2. if lambda1 < 4.09999999999999986e111

    1. Initial program 10.7

      \[\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \left(\sin \phi_1 \cdot \cos \phi_2\right) \cdot \cos \left(\lambda_1 - \lambda_2\right)} \]
    2. Simplified10.7

      \[\leadsto \color{blue}{\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}} \]
      Proof

      [Start]10.7

      \[ \tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \left(\sin \phi_1 \cdot \cos \phi_2\right) \cdot \cos \left(\lambda_1 - \lambda_2\right)} \]

      rational.json-simplify-2 [=>]10.7

      \[ \tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \color{blue}{\cos \left(\lambda_1 - \lambda_2\right) \cdot \left(\sin \phi_1 \cdot \cos \phi_2\right)}} \]

      rational.json-simplify-2 [=>]10.7

      \[ \tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \cos \left(\lambda_1 - \lambda_2\right) \cdot \color{blue}{\left(\cos \phi_2 \cdot \sin \phi_1\right)}} \]

      rational.json-simplify-43 [=>]10.7

      \[ \tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \color{blue}{\cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}} \]

    if 4.09999999999999986e111 < lambda1

    1. Initial program 26.6

      \[\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \left(\sin \phi_1 \cdot \cos \phi_2\right) \cdot \cos \left(\lambda_1 - \lambda_2\right)} \]
    2. Simplified26.6

      \[\leadsto \color{blue}{\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}} \]
      Proof

      [Start]26.6

      \[ \tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \left(\sin \phi_1 \cdot \cos \phi_2\right) \cdot \cos \left(\lambda_1 - \lambda_2\right)} \]

      rational.json-simplify-2 [=>]26.6

      \[ \tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \color{blue}{\cos \left(\lambda_1 - \lambda_2\right) \cdot \left(\sin \phi_1 \cdot \cos \phi_2\right)}} \]

      rational.json-simplify-43 [=>]26.6

      \[ \tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \color{blue}{\sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}} \]
    3. Taylor expanded in lambda2 around 0 25.5

      \[\leadsto \tan^{-1}_* \frac{\color{blue}{\left(-1 \cdot \left(\lambda_2 \cdot \cos \lambda_1\right) + \left(\sin \lambda_1 + -0.5 \cdot \left({\lambda_2}^{2} \cdot \sin \lambda_1\right)\right)\right)} \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]
    4. Simplified25.5

      \[\leadsto \tan^{-1}_* \frac{\color{blue}{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + {\lambda_2}^{2} \cdot \left(-0.5 \cdot \sin \lambda_1\right)\right)\right)} \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]
      Proof

      [Start]25.5

      \[ \tan^{-1}_* \frac{\left(-1 \cdot \left(\lambda_2 \cdot \cos \lambda_1\right) + \left(\sin \lambda_1 + -0.5 \cdot \left({\lambda_2}^{2} \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]

      rational.json-simplify-41 [=>]25.5

      \[ \tan^{-1}_* \frac{\color{blue}{\left(\sin \lambda_1 + \left(-0.5 \cdot \left({\lambda_2}^{2} \cdot \sin \lambda_1\right) + -1 \cdot \left(\lambda_2 \cdot \cos \lambda_1\right)\right)\right)} \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]

      rational.json-simplify-1 [=>]25.5

      \[ \tan^{-1}_* \frac{\left(\sin \lambda_1 + \color{blue}{\left(-1 \cdot \left(\lambda_2 \cdot \cos \lambda_1\right) + -0.5 \cdot \left({\lambda_2}^{2} \cdot \sin \lambda_1\right)\right)}\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]

      rational.json-simplify-2 [=>]25.5

      \[ \tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(-1 \cdot \color{blue}{\left(\cos \lambda_1 \cdot \lambda_2\right)} + -0.5 \cdot \left({\lambda_2}^{2} \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]

      rational.json-simplify-43 [=>]25.5

      \[ \tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\color{blue}{\cos \lambda_1 \cdot \left(\lambda_2 \cdot -1\right)} + -0.5 \cdot \left({\lambda_2}^{2} \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]

      rational.json-simplify-8 [<=]25.5

      \[ \tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\cos \lambda_1 \cdot \color{blue}{\left(-\lambda_2\right)} + -0.5 \cdot \left({\lambda_2}^{2} \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]

      rational.json-simplify-2 [=>]25.5

      \[ \tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\color{blue}{\left(-\lambda_2\right) \cdot \cos \lambda_1} + -0.5 \cdot \left({\lambda_2}^{2} \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]

      rational.json-simplify-43 [=>]25.5

      \[ \tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + \color{blue}{{\lambda_2}^{2} \cdot \left(\sin \lambda_1 \cdot -0.5\right)}\right)\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]

      rational.json-simplify-2 [=>]25.5

      \[ \tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + {\lambda_2}^{2} \cdot \color{blue}{\left(-0.5 \cdot \sin \lambda_1\right)}\right)\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)} \]
  3. Recombined 2 regimes into one program.
  4. Final simplification13.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;\lambda_1 \leq 4.1 \cdot 10^{+111}:\\ \;\;\;\;\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + {\lambda_2}^{2} \cdot \left(-0.5 \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}\\ \end{array} \]

Alternatives

Alternative 1
Error13.7
Cost65800
\[\begin{array}{l} t_0 := \cos \phi_1 \cdot \sin \phi_2\\ t_1 := \cos \left(\lambda_1 - \lambda_2\right)\\ t_2 := \sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2\\ t_3 := \cos \phi_2 \cdot \left(\sin \phi_1 \cdot t_1\right)\\ \mathbf{if}\;\phi_2 \leq 5.4 \cdot 10^{-201}:\\ \;\;\;\;\tan^{-1}_* \frac{t_2}{t_0 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot t_1\right)}\\ \mathbf{elif}\;\phi_2 \leq 10^{-142}:\\ \;\;\;\;\tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + {\lambda_2}^{2} \cdot \left(-0.5 \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\sin \phi_2 - t_3}\\ \mathbf{else}:\\ \;\;\;\;\tan^{-1}_* \frac{t_2}{t_0 - t_3}\\ \end{array} \]
Alternative 2
Error19.8
Cost52888
\[\begin{array}{l} t_0 := \sin \phi_1 \cdot \cos \lambda_2\\ t_1 := \sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2\\ t_2 := \cos \phi_1 \cdot \sin \phi_2\\ t_3 := \tan^{-1}_* \frac{\sin \left(-\lambda_2\right) \cdot \cos \phi_2}{t_2 - \cos \phi_2 \cdot t_0}\\ t_4 := \tan^{-1}_* \frac{\sin \lambda_1 \cdot \cos \phi_2}{t_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}\\ \mathbf{if}\;\lambda_1 \leq -760000000000:\\ \;\;\;\;t_4\\ \mathbf{elif}\;\lambda_1 \leq -1.1 \cdot 10^{-98}:\\ \;\;\;\;\tan^{-1}_* \frac{t_1}{\sin \phi_2 \cdot \cos \phi_1 - t_0}\\ \mathbf{elif}\;\lambda_1 \leq 3.7 \cdot 10^{-143}:\\ \;\;\;\;t_3\\ \mathbf{elif}\;\lambda_1 \leq 1.9 \cdot 10^{-73}:\\ \;\;\;\;\tan^{-1}_* \frac{t_1}{t_2 - \sin \phi_1 \cdot \cos \phi_2}\\ \mathbf{elif}\;\lambda_1 \leq 2.2 \cdot 10^{-8}:\\ \;\;\;\;t_3\\ \mathbf{elif}\;\lambda_1 \leq 5.5 \cdot 10^{+187}:\\ \;\;\;\;t_4\\ \mathbf{else}:\\ \;\;\;\;\tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + {\lambda_2}^{2} \cdot \left(-0.5 \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\sin \phi_2}\\ \end{array} \]
Alternative 3
Error20.4
Cost52628
\[\begin{array}{l} t_0 := \cos \phi_1 \cdot \sin \phi_2\\ t_1 := \tan^{-1}_* \frac{\sin \lambda_1 \cdot \cos \phi_2}{t_0 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \lambda_1\right)}\\ t_2 := \tan^{-1}_* \frac{\sin \left(-\lambda_2\right) \cdot \cos \phi_2}{t_0 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \lambda_2\right)}\\ \mathbf{if}\;\lambda_1 \leq -4.2 \cdot 10^{-33}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\lambda_1 \leq 6 \cdot 10^{-143}:\\ \;\;\;\;t_2\\ \mathbf{elif}\;\lambda_1 \leq 4.5 \cdot 10^{-73}:\\ \;\;\;\;\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{t_0 - \sin \phi_1 \cdot \cos \phi_2}\\ \mathbf{elif}\;\lambda_1 \leq 0.000215:\\ \;\;\;\;t_2\\ \mathbf{elif}\;\lambda_1 \leq 2.75 \cdot 10^{+187}:\\ \;\;\;\;t_1\\ \mathbf{else}:\\ \;\;\;\;\tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + {\lambda_2}^{2} \cdot \left(-0.5 \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\sin \phi_2}\\ \end{array} \]
Alternative 4
Error13.8
Cost52488
\[\begin{array}{l} t_0 := \tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}\\ \mathbf{if}\;\phi_2 \leq 1.96 \cdot 10^{-197}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;\phi_2 \leq 10^{-142}:\\ \;\;\;\;\tan^{-1}_* \frac{\left(\left(-\sin \lambda_2\right) + \lambda_1\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \phi_2 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \lambda_2\right)}\\ \mathbf{else}:\\ \;\;\;\;t_0\\ \end{array} \]
Alternative 5
Error13.8
Cost52488
\[\begin{array}{l} t_0 := \cos \phi_1 \cdot \sin \phi_2\\ t_1 := \cos \left(\lambda_1 - \lambda_2\right)\\ t_2 := \sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2\\ \mathbf{if}\;\phi_2 \leq 8.8 \cdot 10^{-197}:\\ \;\;\;\;\tan^{-1}_* \frac{t_2}{t_0 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot t_1\right)}\\ \mathbf{elif}\;\phi_2 \leq 1.05 \cdot 10^{-142}:\\ \;\;\;\;\tan^{-1}_* \frac{\left(\left(-\sin \lambda_2\right) + \lambda_1\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \phi_2 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \lambda_2\right)}\\ \mathbf{else}:\\ \;\;\;\;\tan^{-1}_* \frac{t_2}{t_0 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot t_1\right)}\\ \end{array} \]
Alternative 6
Error13.5
Cost52424
\[\begin{array}{l} t_0 := \sin \left(-\lambda_2\right) \cdot \cos \phi_2\\ t_1 := \cos \phi_1 \cdot \sin \phi_2\\ \mathbf{if}\;\lambda_2 \leq -0.98:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{t_1 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \lambda_2\right)}\\ \mathbf{elif}\;\lambda_2 \leq 4.8 \cdot 10^{+23}:\\ \;\;\;\;\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{t_1 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \lambda_1\right)}\\ \mathbf{else}:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{t_1 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}\\ \end{array} \]
Alternative 7
Error20.2
Cost52364
\[\begin{array}{l} t_0 := \tan^{-1}_* \frac{\sin \lambda_1 \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \lambda_1\right)}\\ \mathbf{if}\;\lambda_1 \leq -1.4 \cdot 10^{+15}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;\lambda_1 \leq 0.0023:\\ \;\;\;\;\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\sin \phi_2 \cdot \cos \phi_1 - \sin \phi_1 \cdot \cos \lambda_2}\\ \mathbf{elif}\;\lambda_1 \leq 6 \cdot 10^{+187}:\\ \;\;\;\;t_0\\ \mathbf{else}:\\ \;\;\;\;\tan^{-1}_* \frac{\left(\sin \lambda_1 + \left(\left(-\lambda_2\right) \cdot \cos \lambda_1 + {\lambda_2}^{2} \cdot \left(-0.5 \cdot \sin \lambda_1\right)\right)\right) \cdot \cos \phi_2}{\sin \phi_2}\\ \end{array} \]
Alternative 8
Error13.5
Cost52360
\[\begin{array}{l} t_0 := \cos \phi_1 \cdot \sin \phi_2\\ t_1 := \tan^{-1}_* \frac{\sin \left(-\lambda_2\right) \cdot \cos \phi_2}{t_0 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \lambda_2\right)}\\ \mathbf{if}\;\lambda_2 \leq -0.86:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\lambda_2 \leq 4.8 \cdot 10^{+23}:\\ \;\;\;\;\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{t_0 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \lambda_1\right)}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 9
Error13.5
Cost52360
\[\begin{array}{l} t_0 := \cos \phi_1 \cdot \sin \phi_2\\ t_1 := \tan^{-1}_* \frac{\sin \left(-\lambda_2\right) \cdot \cos \phi_2}{t_0 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \lambda_2\right)}\\ \mathbf{if}\;\lambda_2 \leq -1.4:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\lambda_2 \leq 4.8 \cdot 10^{+23}:\\ \;\;\;\;\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{t_0 - \sin \phi_1 \cdot \left(\cos \phi_2 \cdot \cos \lambda_1\right)}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 10
Error20.1
Cost46216
\[\begin{array}{l} t_0 := \sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2\\ t_1 := \tan^{-1}_* \frac{t_0}{\sin \phi_2 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}\\ \mathbf{if}\;\lambda_1 - \lambda_2 \leq -4 \cdot 10^{+23}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\lambda_1 - \lambda_2 \leq 2000:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \cos \phi_2}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 11
Error22.4
Cost46024
\[\begin{array}{l} t_0 := \tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \cos \left(\lambda_1 - \lambda_2\right) \cdot \sin \phi_1}\\ \mathbf{if}\;\phi_2 \leq 7.5 \cdot 10^{-197}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;\phi_2 \leq 10^{-142}:\\ \;\;\;\;\tan^{-1}_* \frac{\left(\left(-\sin \lambda_2\right) + \lambda_1\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \phi_2 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \lambda_2\right)}\\ \mathbf{else}:\\ \;\;\;\;t_0\\ \end{array} \]
Alternative 12
Error19.8
Cost45832
\[\begin{array}{l} t_0 := \sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2\\ t_1 := \tan^{-1}_* \frac{t_0}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1 \cdot \cos \phi_2}\\ \mathbf{if}\;\phi_2 \leq -8.2 \cdot 10^{-5}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\phi_2 \leq 850000:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{\sin \phi_1 \cdot \left(-\cos \left(\lambda_1 - \lambda_2\right)\right) + \phi_2 \cdot \cos \phi_1}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 13
Error21.9
Cost45696
\[\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \cos \left(\lambda_1 - \lambda_2\right) \cdot \sin \phi_1} \]
Alternative 14
Error22.3
Cost39624
\[\begin{array}{l} t_0 := \sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2\\ t_1 := \tan^{-1}_* \frac{t_0}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1}\\ \mathbf{if}\;\phi_2 \leq -7.8 \cdot 10^{-5}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\phi_2 \leq 2.8 \cdot 10^{-11}:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{\sin \phi_1 \cdot \left(-\cos \left(\lambda_1 - \lambda_2\right)\right) + \phi_2 \cdot \cos \phi_1}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 15
Error22.3
Cost39432
\[\begin{array}{l} t_0 := \sin \left(\lambda_1 - \lambda_2\right)\\ t_1 := \tan^{-1}_* \frac{t_0 \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1}\\ \mathbf{if}\;\phi_2 \leq -9.4 \cdot 10^{-5}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\phi_2 \leq 7.3:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{\sin \phi_2 - \cos \phi_2 \cdot \left(\sin \phi_1 \cdot \cos \left(\lambda_1 - \lambda_2\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 16
Error22.3
Cost39304
\[\begin{array}{l} t_0 := \sin \left(\lambda_1 - \lambda_2\right)\\ t_1 := \tan^{-1}_* \frac{t_0 \cdot \cos \phi_2}{\cos \phi_1 \cdot \sin \phi_2 - \sin \phi_1}\\ \mathbf{if}\;\phi_2 \leq -1.25 \cdot 10^{-5}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\phi_2 \leq 7.3:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{\sin \phi_2 - \cos \left(\lambda_1 - \lambda_2\right) \cdot \sin \phi_1}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 17
Error23.1
Cost33096
\[\begin{array}{l} t_0 := \cos \left(\lambda_1 - \lambda_2\right)\\ t_1 := \sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2\\ t_2 := \tan^{-1}_* \frac{t_1}{\sin \phi_1 \cdot \left(-t_0\right)}\\ \mathbf{if}\;\phi_1 \leq -0.0088:\\ \;\;\;\;t_2\\ \mathbf{elif}\;\phi_1 \leq 2.7 \cdot 10^{-28}:\\ \;\;\;\;\tan^{-1}_* \frac{t_1}{\sin \phi_2 + t_0 \cdot \left(-\phi_1\right)}\\ \mathbf{else}:\\ \;\;\;\;t_2\\ \end{array} \]
Alternative 18
Error23.9
Cost32968
\[\begin{array}{l} t_0 := \sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2\\ t_1 := \tan^{-1}_* \frac{t_0}{\sin \phi_1 \cdot \left(-\cos \left(\lambda_1 - \lambda_2\right)\right)}\\ \mathbf{if}\;\phi_1 \leq -0.0012:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\phi_1 \leq 2.7 \cdot 10^{-28}:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{\sin \phi_2}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 19
Error22.8
Cost32904
\[\begin{array}{l} t_0 := \sin \left(\lambda_1 - \lambda_2\right)\\ t_1 := \tan^{-1}_* \frac{t_0 \cdot \cos \phi_2}{\sin \phi_2}\\ \mathbf{if}\;\phi_2 \leq -0.000112:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\phi_2 \leq 7.3:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{\sin \phi_2 - \cos \left(\lambda_1 - \lambda_2\right) \cdot \sin \phi_1}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 20
Error29.6
Cost32776
\[\begin{array}{l} t_0 := \sin \left(\lambda_1 - \lambda_2\right)\\ t_1 := \tan^{-1}_* \frac{t_0 \cdot \cos \phi_2}{\sin \phi_2}\\ \mathbf{if}\;\phi_2 \leq -4.2 \cdot 10^{-75}:\\ \;\;\;\;t_1\\ \mathbf{elif}\;\phi_2 \leq 1.15 \cdot 10^{+29}:\\ \;\;\;\;\tan^{-1}_* \frac{t_0}{\sin \phi_2 \cdot \cos \phi_1 - \sin \phi_1}\\ \mathbf{else}:\\ \;\;\;\;t_1\\ \end{array} \]
Alternative 21
Error35.6
Cost26184
\[\begin{array}{l} t_0 := \tan^{-1}_* \frac{\sin \left(-\lambda_2\right) \cdot \cos \phi_2}{\sin \phi_2}\\ \mathbf{if}\;\lambda_2 \leq -8.5 \cdot 10^{-10}:\\ \;\;\;\;t_0\\ \mathbf{elif}\;\lambda_2 \leq 4.8 \cdot 10^{+23}:\\ \;\;\;\;\tan^{-1}_* \frac{\sin \lambda_1 \cdot \cos \phi_2}{\sin \phi_2}\\ \mathbf{else}:\\ \;\;\;\;t_0\\ \end{array} \]
Alternative 22
Error38.8
Cost26120
\[\begin{array}{l} t_0 := \tan^{-1}_* \frac{\sin \lambda_1 \cdot \cos \phi_2}{\sin \phi_2}\\ \mathbf{if}\;\phi_2 \leq -0.0044:\\ \;\;\;\;t_0\\ \mathbf{elif}\;\phi_2 \leq 1.15 \cdot 10^{+29}:\\ \;\;\;\;\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right)}{\sin \phi_2}\\ \mathbf{else}:\\ \;\;\;\;t_0\\ \end{array} \]
Alternative 23
Error32.7
Cost25984
\[\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right) \cdot \cos \phi_2}{\sin \phi_2} \]
Alternative 24
Error43.4
Cost19456
\[\tan^{-1}_* \frac{\sin \left(\lambda_1 - \lambda_2\right)}{\sin \phi_2} \]

Error

Reproduce?

herbie shell --seed 2023064 
(FPCore (lambda1 lambda2 phi1 phi2)
  :name "Bearing on a great circle"
  :precision binary64
  (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (- (* (cos phi1) (sin phi2)) (* (* (sin phi1) (cos phi2)) (cos (- lambda1 lambda2))))))