equinor / equinor/dsis-python-client

Getting a subcube from a 3D seismic cube based on IL, XL, z range specifications.

Open
#51 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

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.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.