osgrid->geopoint is working, which is all I actually need.
This commit is contained in:
parent
32c720fd03
commit
668baaedaf
|
@ -404,21 +404,22 @@
|
|||
n² (expt n 2)
|
||||
n³ (expt n 3)
|
||||
[M φ] (loop [φ φ0 M 0]
|
||||
;; the error is in this loop somewhere..
|
||||
(let
|
||||
;; φ = (N-N0-M)/(a*F0) + φ;
|
||||
[φ₁ (+' φ (/ (-' N N0 M) (*' a F0)))
|
||||
;; (φ-φ0)
|
||||
Δφ (-' φ φ0)
|
||||
Δφ (-' φ₁ φ0)
|
||||
;; var Ma = (1 + n + (5/4)*n2 + (5/4)*n3) * (φ-φ0);
|
||||
Ma (*' (+' 1 n (*' 5/4 n²) (*' 5/4 n³)) Δφ)
|
||||
;; var Mb = (3*n + 3*n*n + (21/8)*n3) * Math.sin(φ-φ0) * Math.cos(φ+φ0);
|
||||
Mb (*' (+' (*' n 3) (*' n² 3) (*' 21/8 n³)) (sin Δφ) (cos (+' φ φ0)))
|
||||
Mb (*' (+' (*' n 3) (*' n² 3) (*' 21/8 n³)) (sin Δφ) (cos (+' φ₁ φ0)))
|
||||
;; var Mc = ((15/8)*n2 + (15/8)*n3) * Math.sin(2*(φ-φ0)) * Math.cos(2*(φ+φ0));
|
||||
Mc (*' (+' (*' n² 15/8) (*' n³ 15/8)) (sin (*' 2 Δφ)) (cos (*' 2 (+' φ φ0))))
|
||||
Mc (*' (+' (*' n² 15/8) (*' n³ 15/8)) (sin (*' 2 Δφ)) (cos (*' 2 (+' φ₁ φ0))))
|
||||
;; var Md = (35/24)*n3 * Math.sin(3*(φ-φ0)) * Math.cos(3*(φ+φ0));
|
||||
Md (*' 35/24 n³ (sin (*' 3 Δφ)) (cos (*' 3 (+' φ φ0))))
|
||||
M₁ (*' b F0 (+' (-' 0 Ma) Mb Mc (-' 0 Md)))]
|
||||
(println (str "loop: φ: " φ "; M: " M "; termination: " (-' N N0 M₁)))
|
||||
Md (*' 35/24 n³ (sin (*' 3 Δφ)) (cos (*' 3 (+' φ₁ φ0))))
|
||||
;; M = b * F0 * (Ma - Mb + Mc - Md);
|
||||
M₁ (*' b F0 (+' (-' Ma Mb) (-' Mc Md)))]
|
||||
(if
|
||||
(>= (-' N N0 M₁) 0.00001)
|
||||
(recur φ₁ M₁)
|
||||
|
|
Loading…
Reference in a new issue