-
Notifications
You must be signed in to change notification settings - Fork 0
Description
I have OW dataset id on this form:
owid = "OpenWorks/VM.SNORRE_AREA.SNORRE_TORDIS_VIGDIS.SeismicDataSet.seismicDataSetId\u003d13263"
I would like a function like this:
get_subube(owid, ILrange, XLrange, zrange)
Where example of input variables are: IL_range: [999,1020], XL_range [400,2000], z_range [0,10000]
This could return a dict:
{"data" : a 3D numpy array,
"IL_min" : 1000, "IL_end": 1020, "IL_inc": 2, "XL_min" : 400, "XL_end": 200, "XL_inc:" 1, "z_min" : 0, "z_end": 3000, "z_inc:" 4}
in the case when there is live data only every 2nd inline, live data every XL and the sampling rate in the z direction is 4, and the last sample is at 3000
If it fits better with how you want to do things, an alterative would be to have a "get_cube_info" function (probably exists already) that gives the metadata such as the sampling rates, and then demand that the specification to get_subcube should be precisely on the allowed values - in which case we only need to return the cube itself since the bounds are known.
It would be very nice to have IL_inc, XL_inc as optional arguments in case you wanted to decimate the data. (decimating the data in the z direction needs an anti-alias filter to be sensible, so it is probably wise not to make it too easy to do that).
The idea would be to use this to get a subcube from OW from a python app running on Linux without having to export the data from OW to segy as is done now. I have not used DSIS before so I have no experience with credentials/login and so on but I assume this can be handled so that this function is available for a simple python scripts running on a Linux node.