dem_ecef_to_geodetic — DEM geodesy op

데이터 종류: pointspoints

호출: import fullseye as fs; fs.ledger.dem_ecef_to_geodetic(xyz)(구현을 직접 호출하려면 import demops; demops.dem_ecef_to_geodetic(xyz), 원장에서 가져오려면 opsdem.get("dem_ecef_to_geodetic"))

사용법

> 이 연산자의 설명은 아직 번역이 없습니다. 원문을 그대로 싣습니다.

ECEF → 測地座標。返りは `(..., 3)(緯度[度], 経度[度], 高さ[m])`。

Bowring (1976) の閉形式に近い解法。往復(測地→ECEF→測地)の誤差は

どこを標本にしたかで 1 桁以上動くので、範囲つきで書く(2026-09-08 再測。

以前は「緯度・経度 1e-12 度未満、高さ 1e-7 m 未満」と書いていたが、

★これは緯度 ±85 度・高さ -500〜9000 m の 4000 点で既に **最大 6.4e-12 度 /

8.5e-07 m** と超えていた —— 中央値 2.6e-13 度 / 3.3e-08 m と混同していた):

• 緯度 ±85 度・高さ -500〜9000 m … 緯度 中央 2.6e-13 / 最大 6.4e-12 度、

高さ 中央 3.3e-08 / 最大 8.5e-07 m

• 緯度 ±89.9 度・高さ -11 km〜40 km … 緯度 中央 2.9e-12 / 最大 1.3e-10 度、

高さ 中央 3.5e-07 / 最大 1.7e-05 m(極に寄せると 20 倍悪くなる)

経度はどちらでも最大 2.8e-14 度。いずれも地上では µm 以下で、実用上は

「誤差の床」として扱ってよいが、中央値を最大値として引用しないこと

地心座標が欲しいだけなら、`r = |xyz|` と

`geocentric_lat = asin(z/r)` で足りる —— ただしそれは測地緯度ではない

(両者は最大 0.19 度、距離にして約 21 km ずれる)。この op が返すのは

地図や GPS と同じ測地緯度のほう。

地球の中心付近では fail-closed で拒否する(2026-09-08、

poc_geodetic_height_frames が踏んだ)。楕円体の縮閉線(evolute)

`(a·p)^(2/3) + (b·|z|)^(2/3) < (a²-b²)^(2/3)` の内側では、楕円体面から

立てた法線が 1 本に決まらず、測地緯度がそもそも一意でない。それまでは

ここで黙って `lat = 180 度` を返していた —— 緯度として存在しない値で、

しかも**自分の逆関数 :func:dem_geodetic_to_ecef

「lat_deg must be within [-90, 90]」で拒否する**値だった。

領域は赤道面で軸から `e²a = 42697.7 m、極軸上で (a²-b²)/b = 42841.3 m`

まで(実測: 42600 m で 180 度、42700 m で 0 度 —— 閉形式の境界とちょうど一致)。

자세한 사용 가이드

dem_terrain_analysis 패밀리 가이드

참고(샘플 데이터·문헌)

• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.

• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.

• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.

실행 가능한 예제(이 연산자를 실제로 호출하는 검증된 샘플)

dem_geodesy_tourpy -3.11 examples/dem_geodesy_tour.py

poc_geodetic_height_framespy -3.11 examples/poc_geodetic_height_frames.py

타입이 이어지는 다음 연산자(points 를 입력으로 받는 것)

같은 카테고리(geodesy)

dem_geodetic_to_ecef · dem_geocentric_grid · dem_earth_curvature_drop · dem_cell_size_webmercator · dem_geodetic_slope


*Provenance: demops.py — DEM 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.