Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

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

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
numpy, python
Domain
api, data

Research direction

Review the existing DSIS Python client entry points and determine whether cube metadata access already exists. Define how OpenWorks IDs, IL/XL/z ranges, sampling increments, decimation, credentials, and Linux access should be handled before implementing the requested subcube API; done means a documented, tested way to retrieve the requested NumPy data.

Written by the indexing model from the issue text.

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.

Dominant language
Python
Stars
2
Forks
0
Avg merge
3d 23h
Merged PRs (30d)
2

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from equinor/dsis-python-client

All issues in equinor/dsis-python-client

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.