Vincenty法
2 σ m = 2 σ 1 + σ {\displaystyle 2\sigma _{m}=2\sigma _{1}+\sigma \,} Δ σ = B sin  σ { cos  ( 2 σ m ) + 1 4 B [ cos  σ ( − 1 + 2 cos 2  ( 2 σ m ) ) − 1 6 B cos  ( 2 σ m ) ( − 3 + 4 sin 2  σ ) ( − 3 + 4 cos 2  ( 2 σ m ) ) ] } {\displaystyle \Delta \sigma =B\sin \sigma {\Big \{}\cos(2\sigma _{m})+{\tfrac {1}{4}}B{\big [}\cos \sigma {\big (}-1+2\cos ^{2}(2\sigma _{m}){\big )}-{\tfrac {1}{6}}B\cos(2\sigma _{m})(-3+4\sin ^{2}\sigma ){\big (}-3+4\cos ^{2}(2\sigma _{m}){\big )}{\big ]}{\Big \}}} σ = s b A + Δ σ {\displaystyle \sigma ={\frac {s}{bA}}+\Delta \sigma \,}
σ {\displaystyle \sigma } が所望の精度まで収束したら以下の計算を行う。
↑ 地球を球体として近似すると大円距離の計算となるが、それよりは精度が良い。
↑ Karney (2013) の方法ではニュートン法を用い、あらゆる入力点に対して収束が速く、倍精度浮動小数点数限界精度に達する。
↑ σ {\displaystyle \sigma } は赤道及び極付近での精度を保つために sin  σ , cos  σ {\displaystyle \sin \sigma ,\cos \sigma } から直接計算は行わない。
1 2 3 4 5 6 7 arctanの値は2変数関数であるatan2等によって実装されるべきである。
↑ sin  σ = 0 {\displaystyle \sin \sigma =0} の時、 sin  α {\displaystyle \sin \alpha } が不定となる。これは2点が同じ位置もしくは対蹠点であることを意味する。
↑ 2点がともに赤道上にあるとき、 U = 0 {\displaystyle U=0} となるので、 cos  ( 2 σ m ) {\displaystyle \cos(2\sigma _{m})} は使用されない。The limiting value is cos  ( 2 σ m ) = − 1 {\displaystyle \cos(2\sigma _{m})=-1} .
φ 2 = arctan  ( sin  U 1 cos  σ + cos  U 1 sin  σ cos  α 1 ( 1 − f ) sin 2  α + ( sin  U 1 sin  σ − cos  U 1 cos  σ cos  α 1 ) 2 ) {\displaystyle \phi _{2}=\arctan \left({\frac {\sin U_{1}\cos \sigma +\cos U_{1}\sin \sigma \cos \alpha _{1}}{(1-f){\sqrt {\sin ^{2}\alpha +(\sin U_{1}\sin \sigma -\cos U_{1}\cos \sigma \cos \alpha _{1})^{2}}}}}\right)\,}
λ = arctan  ( sin  σ sin  α 1 cos  U 1 cos  σ − sin  U 1 sin  σ cos  α 1 ) {\displaystyle \lambda =\arctan \left({\frac {\sin \sigma \sin \alpha _{1}}{\cos U_{1}\cos \sigma -\sin U_{1}\sin \sigma \cos \alpha _{1}}}\right)\,}
C = f 16 cos 2  α [ 4 + f ( 4 − 3 cos 2  α ) ] {\displaystyle C={\frac {f}{16}}\cos ^{2}\alpha {\big [}4+f(4-3\cos ^{2}\alpha ){\big ]}\,}