✍️ 朱邓达  •  🗓️ 2026-08-26 (创建时间)

geo2xy

简介:

将纬度/经度坐标转换为局部 north/east 坐标

语法

grt geo2xy -Gingrid | -Qinfile -Ooutfile -Clat0/lon0 [ -h ]

描述

geo2xy 模块使用参考点处的局部切平面近似,将地理坐标转换为局部笛卡尔坐标。 输入可以是包含地理坐标的 NetCDF 文件,也可以是坐标文本文件,输出保存到新的文件中。 输入文件不会被修改。

输入地理坐标 latlon 的单位为 degree。 输出局部坐标 northeast 的单位为 km。 -C 指定参考点的纬度和经度,格式为 lat0/lon0,单位为 degree。 参考点会作为新的 NetCDF 全局属性 lat0lon0 写入输出文件。

逆变换公式为:

\[ \begin{align}\begin{aligned}\mathrm{north} = (\mathrm{lat}-\mathrm{lat}_0)R\pi/180\\\mathrm{east} = \operatorname{wrap}(\mathrm{lon}-\mathrm{lon}_0)R\cos(\mathrm{lat}_0)\pi/180\end{aligned}\end{align} \]

其中 \(R=6371\) km,\(\operatorname{wrap}\) 将经度差规范化到 [-180, 180)。 因此参考点在经度边界附近时,跨越 -180/180 的经度仍会得到正确的局部 east 坐标。 极点附近的坐标转换不在本模块的适用范围内。

对于 grid 布局,模块将 lat 维度和坐标变量重命名为 north, 将 lon 维度和坐标变量重命名为 east。 对于普通 points 布局和有限接收断层布局,模块保留 pointnfault 维度, 仅将一维坐标变量 lat(point)lon(point) 重命名为 north(point)east(point)。 其他变量、维度、属性和数据都会复制到输出文件中。

使用 -Q 时,输入文本的每个数据行前两列分别视为 latlon, 后续列按原字符串保留。 输出文件最前面会增加 # lat0 lon0 题头,用于记录参考点的纬度和经度。

必选选项

-Gingrid

输入包含地理坐标的 NetCDF 文件。 文件应包含 layout 全局属性,以及地理坐标变量 latlon-G-Q 不能同时使用。

-Qinfile

输入坐标文本文件。 模块只读取每个数据行的前两列,分别作为 latlon-G-Q 不能同时使用。

-Ooutfile

输出 NetCDF 或文本文件路径。 输出文件必须与输入文件不同。

-Clat0/lon0

局部坐标原点的纬度和经度,单位为 degree。 纬度范围为 (-90, 90),经度范围为 [-180, 180]

可选选项

-h

打印帮助文档。