我有一个带有单 channel 跟踪的 miniseed 文件,我假设数据是计数的(如何检查跟踪的单位?)。我需要将其转换为 m/s。
我已经检查了 obspy 教程,我的主要问题是我不知道如何从 minised 文件中访问极点和零点以及放大系数。
另外,我需要校准文件吗?
这是我的代码:
from obspy.core import *
st=read('/Users/guilhermew/Documents/Projecto/Dados sismicos 1 dia/2012_130_DOC01.mseed')
st.plot()
提前致谢,
吉列尔梅
编辑:
我终于明白如何转换数据了。 Obspy 有不同的方法来实现这一点,但这一切都归结为从波形数据中去除仪器响应。
就像@Robert Barsch 说的,我需要另一个文件来获取仪器响应元数据。
所以我想出了以下代码:
parser=Parser("dir/parser/file")
for tr in stream_aux:
stream_id=tr.stats.network+'.'+tr.stats.station+ '..' + tr.stats.channel
paz=parser.getPAZ(stream_id, tr.stats.starttime)
df = tr.stats.sampling_rate
tr.data = seisSim(tr.data, df, paz_remove=paz)
我使用 seisSim 函数来转换数据。
我现在的问题是输出看起来不正确(但我似乎无法发布图像)
最佳答案
这显然是一个应该问地震学社区而不是 StackOverflow 的问题!你写信给 ObsPy user mailinglist 怎么样?
更新: 我仍然觉得答案是他/她应该直接在 ObsPy 邮件列表中询问。但是,为了对实际问题给出正确答案:MiniSEED 是一种纯数据格式,不包含任何元信息,例如极点和零点或使用的单位。因此,是的,您将需要另一个文件,例如 RESP、SAC PAZ、无数据种子、完整种子等,以获取特定于电台的元数据。要应用地震仪校正,请阅读 http://docs.obspy.org/tutorial/code_snippets/seismometer_correction_simulation.html
关于Python - 如何使用 obspy 模块将计数转换为 m/s,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16071620/