x2sys_datalist

贡献者

周茂


官方文档

x2sys_datalist

简介

提取轨迹观测数据

x2sys_datalist 读取一个或多个文件沿轨观测数据,根据一定规则,提取满足规则的数据。

语法

gmt x2sys_datalist track(s) -TTAG [ -A ] [ -E ] [ -Fname1,name2,… ] [ -I[list] ] [ -L[corrections] ] [ -Rregion ] [ -S ] [ [ -V[level] ] [ -bobinary ] [ -donodata ] [ -hheaders ] [ --PAR=value ]

必选选项

tracks

可以是一个或者多个 ASCII,二进制或 COARDS netCDF 1-D 沿轨数据文件。如果输入的沿轨数据文件很多,可以把所有的文件名放在一个轨迹列表文件中,然后使用 = 后紧跟轨迹列表文件名的形式,例如,如果轨迹列表文件名为 tracks.lis,即为 =tracks.lis 。如果 tracks.lis 中的轨迹文件名不包含后缀, gmt 将自动根据 TAG 添加后缀。gmt 将首先在当前文件夹下搜索这些轨迹文件,如果设置了 $X2SYS_HOME/TAG/TAG_paths.txt 的话,然后在该文件中包含的路径中查找。如果没有设置 $X2SYS_HOME ,默认设置为 $GMT_SHAREDIR/x2sys。

备注

对于 MGD77 格式的轨迹数据,同时还在 MGD77_HOME/mgd77_paths.txt 中的路径和位于 *.gmt 中的 $GMT_SHAREDIR/mgg/gmtfile_paths 中查找轨迹数据。

-TTAG

指定 x2sys TAG

可选选项

-A

通过轨迹的权重来消除两个轨迹在交叉点的不符值;平差后的文件名为 track.cplumn.adj ,位于 $X2SYS_HOME/TAG 文件夹中。仅当存在对应的平差文件时,才进行平差,即分配误差。[默认不分配]

-E

输出两个轨迹的信息作为头部信息 [默认不写入这些头部信息]

-Fname1,name2,…

指定要输出的变量列表,每个变量以逗号分隔[默认输出所有列]

-I[list]

list 为轨迹列表文件名,其中包含若干轨迹文件名,这些轨迹将不参与计算。[默认包含所有的轨迹]

-L[corrections]

如果存在改正值,对观测量进行最优改正,corrections 为改正表。[默认使用位于 $X2SYS_HOME/TAG 文件夹中的 TAG_corrections.txt] 对于改正表文件的格式,见下面的 CORRECTIONS

-Rxmin/xmax/ymin/ymax[+r][+uunit] (more …)

指定数据范围

-S

使用该选项后,所有的列均为 NaN 的行将不输出 [默认输出所有行]

-V[level] (more …)

设置 verbose 等级 [w]

-bo[ncols][type][w][+l|b] (more …)

设置二进制输出的数据格式

-donodata (more …)

将输出数据中值为 NaN 列替换为 nodata

-h[i|o][n][+c][+d][+msegheader][+rremark][+ttitle] (more …)

跳过或生成指定数目的头段记录

-^-

显示简短的帮助信息,包括模块简介和基本语法信息(Windows下只能使用 -

-++

显示帮助信息,包括模块简介、基本语法以及模块特有选项的说明

-? 或无参数

显示完整的帮助信息,包括模块简介、基本语法以及所有选项的说明

--PAR=value

临时修改GMT参数的值,可重复多次使用。参数列表见 gmt.conf

示例

从老格式的 MGG 文件 c2104.gmt 中提取所有数据:

gmt x2sys_datalist c2104.gmt -TGMT > myfile

为在其他模块中使用 track.lis 文件中包含的所有轨迹,这些轨迹的 TAG 为 TRK,只输出指定范围,并设置为二进制:

gmt x2sys_datalist =tracks.lis -TTRK -Flon,lat,depth -R40/-30/25/35 -bo > alltopo_bin.xyz

Corrections

改正值文件是一个 ASCII 文件,其中包含了改正必须的系数和参数。该文件通常由 x2sys_solve 模块生成,可以使用 # 进行注释,所有改正值的格式为:

trackID observation correction

其中 trackID 是轨迹名称,observation 是某个观测量, correction 由一个或多个空格分隔的项 term ,观测量输出的时候会减去这些量。 term 的语法为:

factor[*[function]([scale](abbrev[-origin]))[^power]]

括号中的项是可选的(必须严格按照指示使用括号)。除了 term 之间的空格,其他部分不能有多余的空格。 factor 是基本函数的尺度,可选的基本函数包括 sin,cos 或者 exp。可选的 scaleorigin 可以用来转换参数。 abbrev 是 TAG 中指定的某列的缩写,也可以是其他三种 terms 。包括:

dist 沿轨距离

vel 沿轨速度

azim 沿轨方位角

如果 origin 指定为 T , 这意味着应该使用缩写的值替换第一列(通常为时间)。如果第一列的值为 NaN ,将 origin 置为 0。 powerfactor 分别表示对表达式进行幂运算和缩放运算。下面是对一个名称为 ABC 的轨迹进行改正的例子。假设 z 需要校正线性漂移,OBS 需要校正纬度依赖的变化, weight 需要进行常数校正(常数为 1,所以改正值为 -1), fule 需要进行一定的缩放:

ABC z 7.1 1e-4*((time-T))
ABC obs 0.5*exp(-1e-3(lat))^1.5
ABC weight -1
ABC fuel 0.02*((dist))

相关模块

x2sys_binlist, x2sys_datalist, x2sys_get, x2sys_list, x2sys_put, x2sys_report, x2sys_solve, x2sys_cross, x2sys_merge