win2sac
将WIN32格式转换为SAC格式,也支持BINARY/ASCII格式。
用法
- win2sac_32 winfile ch_no sacfile [outdir] [-p(prmfile)]
- [-Y] [-e] [-b[BIN]] [-a[ASC]] [-r(RATIO)] [-m(PMAX)]
- winfile:
- 一个 要转换的win32文件。
- ch_no:
要提取的通道号。可以是如下形式:
- 一个通道号(如
3345
) - 多个用逗号分隔的通道号(如
3345,3f65,4f75
) - 一个包含通道号的文件,详情见下面的介绍。
- 一个通道号(如
- sacfile
- 输出的SAC文件的后缀
- outdir
- 输出目录名。若未指定或值为
-
则默认为当前目录。输出目录必须存在。 -p(prmfile)
:- 指定参数文件。默认文件名是
win.prm
。详情见下面的介绍。 -Y
- 使用宽通道码。组织ID + 台网ID + 通道ID。
-e
- 指定SAC/BIN输出时所使用的字节序。默认使用大字节序。
-b[BIN]
- BIN格式文件的后缀。默认值为
bin
。 -a[ASC]
- ASC格式文件的后缀。默认值为
asc
。 -r(RATIO)
- 以BIN/ASC格式输出时要乘以的比例。默认值为1.0。
-m(PMAX)
- 数据点的最大数目。默认值为
2000000
。如果你的数据有更多的点数,必须增加该值。
示例
- win2sac_32 2000082404000101VM.cnt 4c55,4c65 SAC DATA -e > junk.log
注解
输出的单位
重要
win2sac_32
提取的SAC文件总是真实的物理量,而不是digital counts。
win32格式中保存的原始数据是digital counts。当从win32格式中提取数据时, win2sac_32
总是从波形中去除灵敏度以将digital counts转换为对应的物理量,并乘以1.0e9将单位从米转换为纳米。
输出的SAC文件的单位是 nm/s
、 nm/s/s
或 micro radian
文件名格式
默认的文件名格式是 STATION.COMPONENT.EXTENSION
(如 N.NABC.U.SAC
)。你可以修改此后缀名。
通道号文件格式
你可以将所有你要提取数据的通道号保存到一个文件中。
- 以
#
开头的行为注释行会被跳过 - 空行会被跳过
- 通道号可以用空格、制表符或逗号分隔
- 每行最多不超过2000字符下面是一个示例:
- 6034,6035
- # 6036 # this line is ignored
- 6038 6039
危险
使用这一特性可能会造成数据损失。因为 win2sac_32
程序在某个通道的数据不存在时会自动退出。
如果你依然想要使用这一特性,你需要将 s4win2sacm.c
的386行从:
- fprintf(stderr, "Data for channel %x not existed\n", sysch);
- iRet = 1;
修改为:
- fprintf(stderr, "Data for channel %x not existed\n", sysch);
参数文件
win32系统需要一个参数文件才能执行。这个参数文件有很多行。然而, win2sac_32
只使用了第2和第4行并忽略其它行。
四行的参数文件的示例:
- .
- 0101_20100101.ch
- .
- .
第二行是通道表文件名。 win2sac_32
需要读取该文件以提取指定通道的波形。
第四行是震相拾取文件的路径。大多数情况下都没有用。
分量
分量信息会被写到SAC头段变量 CMPAZ
和 CMPINC
中。
- U/Z: CMPAZ = 0.0, CMPINC = 0.0
- N/X: CMPAZ = 0.0, CMPINC = 90.0
- E/Y: CMPAZ = 90.0, CMPINC = 90.0
- Other: CMPAZ = 0.0, CMPINC = 0.0
注解
传感器的方位角是 不 精确的。