You shouldn't need to use st+= anywhere, just loop over your streams and use the ppsd.add(st) method according to the tutorial. Have you tried following the tutorial?
is the way:
for i, file in enumerate(files): st = read(file) if i == 0: ppsd = PPSD(stats=st.stats, metadata = inv) else: ppsd.add(st)
# << obspy, Version 1.2.2 >> # # ======== CHANNEL RESPONSE DATA ======== B050F03 Station: LP15 B050F16 Network: ZU B052F03 Location: 00 B052F04 Channel: HHZ B052F22 Start date: 2016,175 B052F23 End date: 2016,322,23:59:59.0000 # =======================================
wget -q "http://ws.resif.fr/fdsnws/station/1/query?net=ZU&sta=LP15&loc=00&cha=HHZ&level=channel" -O ZU.LP15.00.HHZ.xml && java -jar stationxml-seed-converter-2.1.0.jar --output ZU.LP15.00.HHZ.dataless ZU.LP15.00.HHZ.xml
from obspy.io.xseed.parser import Parser Parser('ZU.LP15.00.HHZ.dataless').write_resp(folder='.', zipped=False) /home/schaeffj/.local/lib/python3.9/site-packages/obspy/io/xseed/fields.py:377: UserWarning: Date is required. warnings.warn('Date is required.', UserWarning)
at RESP.ZU.LP15.00.HHZ # << obspy, Version 1.2.2 >> # # ======== CHANNEL RESPONSE DATA ======== B050F03 Station: LP15 B050F16 Network: ZU B052F03 Location: 00 B052F04 Channel: HHZ B052F22 Start date: 2016,175 B052F23 End date: 2016,322,23:59:59.0000 # ======================================= # + +---------------------------------------+ + # + | Channel Sensitivity, LP15 ch HHZ | + # + +---------------------------------------+ + # B058F03 Stage sequence number: 0 B058F04 Sensitivity: 0.000000E+00 B058F05 Frequency of sensitivity: 0.000000E+00 HZ B058F06 Number of calibrations: 0
UserWarning: Length of prepared template stream and data stream are different. Make sure the data does not contain gaps. -> do not use template 0what exactly does this mean? i feel like the length of the template should, by definition (almost), be different then the length of the data stream since you are sliding the template along the data stream. but i could have a complete misconception of what is happening
I cross-correlate waveforms of 10 seismic stations deployed in two differente sites. In one site seismic stations worked during 21 days and on the other 27 days.
To cross-correlate I used XCORR function with window lenght 6000 points (equivalent to 30s). Looking into the results of the 45 pair stations correlations of each site I noticed that:
- in both sites each station pair as the same number of coefficients (12001); - cross-correlation coefficient start increasing till rich maximum 1 at coefficient 6000 and decrease to 12001 (like a gaussian curve).
I expected much more cross-correlations coefficients since I have several days of data and a window length of 30s.
I don’t know what I have done wrong. Can anyone give some clues?
The intent is analyze between noise-correlation versus intersensor distance (like fig. 2 of Braun & Schweitzer, 2008 [link: https://pubs.geoscienceworld.org/ssa/bssa/article/98/4/1876/342003/Spatial-Noise-Field-Characteristics-of-a-Three])
plot_spectrogrammethods which shows you how the different arrays are used