sixty-north / segpy

A Python package for reading and writing SEG Y files.
Other
102 stars 54 forks source link

Read illegal trace lengths? #95

Open GGDRriedel opened 3 years ago

GGDRriedel commented 3 years ago

I have files that contain traces that are longer than the maximum possible trace length of 2 byte long int that is supposed to be defined in the binary header.

I know the data is there, the files are huge, 12 channels of 5 minutes traces each.

However, I can't seem to find a way to read them "agnostically"

Is there a way? Ignore_geometry=True and strict=False when reading don't seem to do anything.

My only last option is probably to write some own reading routines converting directly from the binary data, however, i would like to not do that.

Any tip would be appreciated

rob-smallshire commented 3 years ago

Where did you find reference to the ignore_geometry or strict flags?

GGDRriedel commented 3 years ago

Ah dang, sorry, wrong library. trying segyio at the same time.

Anyway, the question still persists :p

rob-smallshire commented 3 years ago

Do you have trace length data in a header, say in a four-byte int or something, or do you just know know the trace length some other way?

GGDRriedel commented 3 years ago

The data is from a ground motion sensor that unfortunately records into SEGY for some reason.

I know that the traces are 5 minutes long with 1 ms sampling interval, the SEGY shows 12 channels(like it's supposed to) as 12 traces.

rob-smallshire commented 3 years ago

So exactly 5 60 1000 = 300000 samples per trace every time?