[yam]Metadata

Tom Eulenfeld tom.eulenfeld at uni-jena.de
Tue Aug 14 15:12:02 CEST 2018


What would be he desired behavior? Print more information and raise an 
exception. Or just log the exception and continue with the next 
iteration. I tend to implement the first option.

But there is no hurry, because I found the --pdb option which I 
implemented (but forgot about).
You can find out the time yourself by starting

yam --pdb correlate -n1 1

and then inspect stream1[0].id and stream1[0].stats.endtime
(or stream2[0].id and stream2[0].stats.endtime)
when the error occurs.

When I think more about it, it might be a problem that I used the 
endtime and not some time between starttime and endtime. (still assuming 
there is some kind of gap in the inventory)

Cheers,
Tom



On 14.08.2018 13:11, Blaž Vičič wrote:
> I doubt this is the problem of inventory... The miniseeds were 
> pre-procesed and I removed the response using obspy for all the files 
> then used them as an input to yam. staxml files in yam are the same i 
> used for the removal.
> 
> thanks
> 
> On Tue, 14 Aug 2018 at 12:36 Tom Eulenfeld <tom.eulenfeld at uni-jena.de 
> <mailto:tom.eulenfeld at uni-jena.de>> wrote:
> 
>     Hi Blaz,
> 
>     if the metadata in the miniseed is correct, maybe it is a problem with
>     the inventory information? There could be a gap inside the inventory
>     when the station was moved or maintained? Could also be a bug in obspy.
> 
>     I will add some code to catch the exception and display a more
>     meaningful log message.
> 
>     Cheers,
>     Tom
> 
> 
> 
>     On 14.08.2018 07:30, Blaž Vičič wrote:
>      > Hello again.
>      > Another day, another problem.
>      >
>      > I am trying to process few years of data for a set of stations. I
>      > already removed the instrumental response and downsampled the
>     data. The
>      > error I get is this one:
>      >
>      > (obspy) pb-vicic:proc_2 bvicic$ yam correlate 1
>      >
>      >
>     78%|██████████████████████████████████████████████████████████████████████████████████████████▊
> 
>      > | 2572/3287
>     [5:37:02<1:33:41,7.86s/it]multiprocessing.pool.RemoteTraceback:
>      >
>      > """
>      >
>      > Traceback (most recent call last):
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/multiprocessing/pool.py",
> 
>      > line 119, in worker
>      >
>      > result = (True, func(*args, **kwds))
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/site-packages/yam/correlate.py",
> 
>      > line 569, in correlate
>      >
>      > stream2[0].id, datetime=stream2[0].stats.endtime)
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/site-packages/obspy/core/inventory/inventory.py",
> 
>      > line 430, in get_coordinates
>      >
>      > metadata = self.get_channel_metadata(seed_id, datetime)
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/site-packages/obspy/core/inventory/inventory.py",
> 
>      > line 406, in get_channel_metadata
>      >
>      > raise Exception(msg)
>      >
>      > Exception: No matching channel metadata found.
>      >
>      > """
>      >
>      >
>      > The above exception was the direct cause of the following exception:
>      >
>      >
>      > Traceback (most recent call last):
>      >
>      > File "/Users/bvicic/anaconda3/envs/obspy/bin/yam", line 11, in
>     <module>
>      >
>      > sys.exit(run_cmdline())
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/site-packages/yam/main.py",
> 
>      > line 388, in run_cmdline
>      >
>      > run(**args)
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/site-packages/yam/main.py",
> 
>      > line 147, in run
>      >
>      > run2(command, **args)
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/site-packages/yam/main.py",
> 
>      > line 211, in run2
>      >
>      > yam.commands.start_correlate(io, **args)
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/site-packages/yam/commands.py",
> 
>      > line 101, in start_correlate
>      >
>      > total=len(tasks)):
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/site-packages/tqdm/_tqdm.py",
> 
>      > line 930, in __iter__
>      >
>      > for obj in iterable:
>      >
>      > File
>      >
>     "/Users/bvicic/anaconda3/envs/obspy/lib/python3.6/multiprocessing/pool.py",
> 
>      > line 735, in next
>      >
>      > raise value
>      >
>      > Exception: No matching channel metadata found.
>      >
>      >
>      > In the first run I did, the error happened somewhere at the
>     beginning
>      > (iteration 200/3000+) so I checked if maybe my miniseeds have wrong
>      > sta/chan inside. But they are all what they should be. I even
>     forced the
>      > tr.stats.station/chan to be exactly what I wanted. But the error
>      > happened again. So I removed the first year of data, but now the
>     error
>      > happened again somewhere later in the dataset. Any idea what
>     could be
>      > wrong or how to go past this? It would be useful if I would know in
>      > which miniseeds to look for the problem.
>      >
>      > Cheers
>      > Blaz
>      >
>      >
>      > _______________________________________________
>      > seistools mailing list
>      > seistools at listserv.uni-jena.de
>     <mailto:seistools at listserv.uni-jena.de>
>      > https://lserv.uni-jena.de/mailman/listinfo/seistools
>      >
>     _______________________________________________
>     seistools mailing list
>     seistools at listserv.uni-jena.de <mailto:seistools at listserv.uni-jena.de>
>     https://lserv.uni-jena.de/mailman/listinfo/seistools
> 


More information about the seistools mailing list