SAC文件格式
(2011-07-27 16:57:55)
标签:
sac文件格式教育 |
概述:
这一部分讨论SAC数据文件的内容,描述文件的二进制而ASCII格式以及SAC头段的详细情况。目前SAC可以操作任意endian的二进制文件,即big-endian的系统(Sun Solaris,Mac PC)能够读取little-endian系统(Linux、Mac i686、Cygwin)写的SAC文件,反过来也如此,因而SAC文件在各个系统上是通用的。
每个信号储存在磁盘上单独的SAC文件中,这些文件包含一个固定长度的头段区以及一个或两个数据区。头段区包含了浮点型、整型、逻辑型以及字符型变量。对于等采样间隔的数据文件在头段中可以包含了自变量的最小值、最大值以及采样间隔,因而只需要一个包含因变量的数据区。对于非等间隔数据或者频谱数据则包含两个数据区,前者的两个数据区分别为因变量和自变量(注意顺序),后者的两个数据区包含振幅和相位或者实部和虚部。
SAC二进制格式:
这是最常用的SAC文件格式,它可以被SAC自己(READ和WRITE)以及子程序库(RSAC1,RSAC2,WSAC1,WSAC2,WSAC0)使用。整个头段长度为158个字(每字32位),后跟数据区。为了能够快速读取数据文件的一小部分(可以使用CUT命令),这些文件也有一个长度为128个32位字的物理记录,并被打开用于直接访问(不知这句话为何意~)。
SAC二进制文件结构
---------------------------------
============= =========== ===================
头段区
第一数据区
第二数据区(可选)
============= =========== ===================
起始字: 0
起始字:158 起始字:158+NPTS
长度(字): 158
长度:NPTS 长度: NPTS
内容见下表
-因变量
-自变量(非等间隔数据)
-振幅
-相位
-实部
-虚部
============= =========== ===================
SAC二进制头段:
下表展示了SAC文件的头段内容,Word和Type两列分别给出了那一行的头段变量的起始字以及变量类型。变量类型的说明如下:
==== ======== ======== ==================================
类型 数据类型
未定义值 描述
==== ======== ======== ==================================
F
浮点型
-12345.0 单精度
N
整型
-12345
变量名以N开头
I
枚举型
-12345
变量名以I开头,在有限个整数值中取值,每
个值有特定的名字,每个值代表特定的情形,
子程序使用与之等价的字母数据型名称
L
逻辑型
FALSE
变量名以L开头,值取TRUE或FALSE.
K
字符型 "-12345.."
变量名以K开头,长为8或16个字符
A
辅助型
头段中不存在,由其他变量导出
==== ======= ========== =================================
如果变量名为INTERNAL,则意味着该变量为SAC内部变量,用户不需要对其操作;如果变量名为UNUSED代表这个变量暂时没有使用(为以后占位~),这些变量值目前没有任何意义,可称之为未定义变量。对于某一类型的变量,以上表中类似于-12345之类的数据表明该变量未定义。
下表所示为SAC的头段变量,一般来说每行有5个字:
======= ======= ======== ======== ======== ======= ========
Word
Type
NAMES
======= ======= ======== ======== ======== ======= ========
0
F
DELTA
DEPMIN
DEPMAX
SCALE ODELTA
5
F
B
E
O
A
INTERNAL
10
F
T0
T1
这一部分讨论SAC数据文件的内容,描述文件的二进制而ASCII格式以及SAC头段的详细情况。目前SAC可以操作任意endian的二进制文件,即big-endian的系统(Sun Solaris,Mac PC)能够读取little-endian系统(Linux、Mac i686、Cygwin)写的SAC文件,反过来也如此,因而SAC文件在各个系统上是通用的。
每个信号储存在磁盘上单独的SAC文件中,这些文件包含一个固定长度的头段区以及一个或两个数据区。头段区包含了浮点型、整型、逻辑型以及字符型变量。对于等采样间隔的数据文件在头段中可以包含了自变量的最小值、最大值以及采样间隔,因而只需要一个包含因变量的数据区。对于非等间隔数据或者频谱数据则包含两个数据区,前者的两个数据区分别为因变量和自变量(注意顺序),后者的两个数据区包含振幅和相位或者实部和虚部。
SAC二进制格式:
这是最常用的SAC文件格式,它可以被SAC自己(READ和WRITE)以及子程序库(RSAC1,RSAC2,WSAC1,WSAC2,WSAC0)使用。整个头段长度为158个字(每字32位),后跟数据区。为了能够快速读取数据文件的一小部分(可以使用CUT命令),这些文件也有一个长度为128个32位字的物理记录,并被打开用于直接访问(不知这句话为何意~)。
SAC二进制文件结构
---------------------------------
============= =========== ===================
头段区
============= =========== ===================
起始字: 0
长度(字): 158
内容见下表
============= =========== ===================
SAC二进制头段:
下表展示了SAC文件的头段内容,Word和Type两列分别给出了那一行的头段变量的起始字以及变量类型。变量类型的说明如下:
==== ======== ======== ==================================
类型
==== ======== ======== ==================================
F
N
I
L
K
A
==== ======= ========== =================================
如果变量名为INTERNAL,则意味着该变量为SAC内部变量,用户不需要对其操作;如果变量名为UNUSED代表这个变量暂时没有使用(为以后占位~),这些变量值目前没有任何意义,可称之为未定义变量。对于某一类型的变量,以上表中类似于-12345之类的数据表明该变量未定义。
下表所示为SAC的头段变量,一般来说每行有5个字:
======= ======= ======== ======== ======== ======= ========
Word
======= ======= ======== ======== ======== ======= ========
0
5
10

加载中…