remove_response vs remove_sensitivity

Dear community

I was wondering how to combine remove_sensitivity and remove_response for accelerograms (channel HN*).

When I apply remove_response, I get extremely low-amplitude traces. Even lower if I apply both remove_response and remove_sensitivity. I ended up by just removing the sensitivity and filtering the traces. However, I am still curious to understand how the correction procedure should be rightly applied. I don’t find any example on the internet/tutorial/doc.

Thanks

Here’s my code:

-- coding: utf-8 --

#!/usr/bin/env python
“”"
Example file for plotting mseed traces
“”"

from obspy import read, read_inventory

Load Stream Database

stt = read(pathname_or_url=’./download/HL/LXRA/HN?.00.20160104T072145Z.20160104T072745Z.mseed’)
print stt

Trim

utc_start = max([stt[0].stats.starttime,stt[1].stats.starttime,stt[2].stats.starttime])
starttime = utc_start
endtime = utc_start + 0.5*60.0
stt[0].trim(starttime, endtime)
stt[1].trim(starttime, endtime)
stt[2].trim(starttime, endtime)

sts = stt.copy()

Load Inventory Database

inv = read_inventory(’./download/HL/LXRA/sxml/LXRA.xml’)

Remove Instrumental Response

pre_filt = [0.05, 0.10, 30.0, 35.0]
stt.remove_response(inventory=inv,pre_filt=pre_filt,
zero_mean=True, taper=True)
stt.filter(‘bandpass’,freqmin=0.15,freqmax=30.0,corners=4,zerophase=True)
stt.taper(5.0/100.0,type=‘cosine’)

Plot

stt.plot(outfile=‘plot_trace_example_response.png’,format=‘png’)

#sts.remove_response(inventory=inv,zero_mean=True, taper=True)
sts.detrend(‘demean’)
sts.detrend(‘linear’)
sts.remove_sensitivity(inventory=inv)
sts.filter(‘bandpass’,freqmin=0.15,freqmax=30.0,corners=4,zerophase=True)
sts.detrend(‘demean’)
sts.detrend(‘linear’)
sts.taper(5.0/100.0,type=‘cosine’)

Plot

sts.plot(outfile=‘plot_trace_example_sensitivity.png’,format=‘png’)

logo_researchgate.png

logo_github.png

You do not need anything else besides `Stream.remove_response(..)` to go
from raw counts to physical units assuming that your station metadata is
correct. It will take into account all response stages which also covers
the overall sensitivity, of course.

Please note that if you want to go to acceleration (m/s**2), you need to
specify so.. `.remove_response(output='ACC')`. By default
remove_response goes to ground velocity, see documentation:

http://docs.obspy.org/packages/autogen/obspy.core.trace.Trace.remove_response.html?highlight=output

T