SeisComP3 文档

Hypo71

允许使用传统 Hypo71PC 定位器

如何工作

当接收一个到时列表来定位时,插件创建一个与台站编目和配置属性相关的 Hypo71 输入文件。然后运行 Hypo71,读取输出文件,发送结果(位置、不定因素、RMS、拾取残差等)至 SeisComP3。

属性

插件允许用户设置所需的属性。属性包含所有与速度模型和 Hypo71 迭代参数相关的信息。

如果没设置属性,插件将使用默认的 Hypo71 属性。

错误量度

在 Hypo71 运行后,输出将被转换为 SC3 初动对象,包括一些错误量度。下表显示 Hypo71 错误量度如何映射至 SC3 数据模型:

SC3 Hypo71
Origin.latitude.uncertainty ERH/sqrt(2)
Origin.longitude.uncertainty ERH/sqrt(2)
Origin.depth.uncertainty ERZ
Origin.originQuality.standardError _
Origin.originQuality.secondaryAzimuthalGap _
Origin.originQuality.usedStationCount usedStationCount
Origin.originQuality.associatedStationCount associatedStationCount
Origin.originQuality.associatedPhaseCount associatedPhaseCount
Origin.originQuality.usedPhaseCount associatedPhaseCount
Origin.originQuality.depthPhaseCount depthPhaseCount
Origin.originQuality.minimumDistance km2deg(Tdist.front)
Origin.originQuality.maximumDistance km2deg(Tdist.back)
Origin.originQuality.medianDistance km2deg(~Tdist)
Origin.originQuality.groundTruthLevel QUALITY
Origin.originUncertainty.horizontalUncertainty _
Origin.originUncertainty.minHorizontalUncertainty _
Origin.originUncertainty.maxHorizontalUncertainty _
Origin.originUncertainty.azimuthMaxHorizontalUncertainty _
ConfidenceEllipsoid.semiMajorAxisLength _
ConfidenceEllipsoid.semiMinorAxisLength _
ConfidenceEllipsoid.semiIntermediateAxisLength _
ConfidenceEllipsoid.majorAxisPlunge _
ConfidenceEllipsoid.majorAxisAzimuth _
ConfidenceEllipsoid.majorAxisRotation _

插件

Hypo71 插件安装至 share/plugins/hypo71.so

增加插件之模块,在 modulename.cfgglobal.cfg 中配置:

plugins = ${plugins}, hypo71

基本上可用于两个模块:screlocscolv

输出

所有输出存入配置 HYPO71ROOT

包括下列文件:

  • 输入文件(input)
  • 输入配置(.INP)
  • Hypo71 定位头(.OUT)
  • Hypo71 定位结果(.PRT)
  • Hypo71 ZTR 评估日志(.LOG)

配置示例

增加插件至应用,如 scolv 或 screloc,只需将插件名称添加至插件列表(如scolv.cfg):

plugins = ${plugins}, hypo71

此外,添加插件配置:

########################################################
############# Hypo71 plugin configuration ##############
########################################################

# Hypo71 root directory (working directory)
HYPO71ROOT = ${HOME}/hypo71

# Hypo71 input file to process (generated by plugin)
hypo71.inputFile = ${HYPO71ROOT}/HYPO71.INP

# Hypo71 log file to store ZTR calculation and final results
hypo71.logFile = ${HYPO71ROOT}/HYPO71.LOG

# Hypo71 output file to read results from (generated by binary)
hypo71.outputFile = ${HYPO71ROOT}/HYPO71.PRT

# Hypo71 script called by plugin
hypo71.hypo71ScriptFile = ${HYPO71ROOT}/run.sh

# Hypo71 binary
hypo71.hypo71BinaryFile = ${HYPO71ROOT}/h71.bin

# Hypo71 default profile
hypo71.defaultControlFile = ${HYPO71ROOT}/profiles/default.hypo71.conf

# Hypo71 origin patternID
hypo71.publicID = Hypo71.@time/%Y%m%d%H%M%S.%f@.@id@

# Should we use the custom patternID ?
hypo71.useHypo71PatternID = false

# Hypo71 custom profiles examples
hypo71.profiles = ModelA
hypo71.profile.Tectonic.earthModelID = "My Velocity Model A"
hypo71.profile.Tectonic.methodID = Hypo71PC
hypo71.profile.Tectonic.controlFile = ${HYPO71ROOT}/profiles/profile.a.conf

复制 config/hypo71/ 内容至 ${HOME}/hypo71/,以脚本 ${HOME}/hypo71/run.sh 来校验。

#!/bin/bash
HYPO71PC_BINARY=h71.bin
# Jumping into the right directory
cd ${HOME}/hypo71/
# Executing binary with input file as argument
./$HYPO71PC_BINARY < input

添加从 Hypo71PC 至 Hypo71 工作目录的符号链接:

ln -s ${HOME}/seiscomp3/bin/Hypo71PC ${HOME}/hypo71/h71.bin

校验 ${HOME}/hypo71/input 中的文件:

HYPO71.INP
HYPO71.PRT
HYPO71.OUT

注意,在输入文件结尾的 3 个空行,不能删除。

最终的 Hypo71 属性配置 ${HOME}/hypo71/profiles/profile.a.conf

############################################################
##             HYPO71 SeisComP3 Plugin                    ##
##                                          @OVSM-IPGP    ##
##                                                        ##
############################################################

## This profile is based on Dorel velocity model for French Antilles
## It allows several iterations at different starting depth for deep and crustal earthquakes

##############
# Reset List #
##############
TEST(01) = .1    # sec # cutoff RMS value under which Jeffrey's weghting of residuals is not used
TEST(02) = 50.   # km  #
TEST(03) = 0.2    # critical F-value for the stepwise multiple regression
TEST(04) = .01   # km # adjustment value under which Geiger's iteration is terminated
TEST(05) = 5.    # km # focal-depth value above which DZ is rest to DZ / (K+1)
TEST(06) = 4.    # regression TEST(03)/TEST(06) coefficient value if no significant variable is found in the stepwise multiple regression
TEST(10) = 2.  # km # coefficient value J = D/TEST(10) used for resetting DX and DY
TEST(11) = 999.    # maximum number of iterations in the hypocentral adjustment
TEST(12) = .5    # coefficient value DZ = -Z*TEST(12) used for resetting DZ when hypocenter is placed in the air
TEST(13) = 1.    # km # standard error value of hypocentral optionally calculated RMS

## The following values are only available with the Hypo71PC version modified by Alexandre Nercessian (IPGP) which is included with this plugin
TEST(15) = -2.   # km # maximum altitude of earthquake in km (down is positive)
TEST(20) = 1.    # used altitude = read altitude * TEST(20) - for example, -2500 = -250 * 10


######################
# Crustal Model List #
######################
CRUSTAL_VELOCITY_MODEL = 3.50, 6.00, 7.00, 8.00
CRUSTAL_DEPTH_MODEL = 0.00, 3.00, 15.00, 30.00


################
# Control Card #
################
# MANDATORY
ZTR = 5, 20, 40, 60, 80, 100, 150, 200   # km # trial focus depth, at least two
# MANDATORY
XNEAR = 200. # km # distance from epicenter up to which the distance weighting is 1
# MANDATORY
XFAR = 450. # km # distance from epicenter beyond which the distance weighting is 0
# MANDATORY
POS = 1.76  # ratio of P-velocity to S-velocity

KAZ = 1      # 1 or blank # apply azimuthal weighting of stations ?
KSORT = 1    # 1 or blank # sort stations by distance in the output ?

# Use last localization as starting point ?
# then LAT1, LAT2, LON1, LON2 and ZTR will take origin last values
DISABLE_LAST_LOC = true


####################
# Instruction Card #
####################
KNST = 1 # use S data ?
INST = 0 # fix depth ?

用法

定位器

一旦插件载入成功,新的定位器显示在左下角组合框中:

定位器选择

选择新的 Hypo71 定位器,从预配置列表中选择属性:

定位器属性选择

如果初动已被重定位,方法将被设为 Hypo71 且地球模型包含属性的名称。

初动信息

设置

Hypo71 定位器支持会话级配置设置或控制参数。

点击定位器选择组合框边的按钮,打开设置对话框:

定位器设置

然后,将显示 Hypo71 选择的属性参数:

Hypo71 设置