-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
What is this? #3
Comments
So sorry I didn't spot this earlier, Bane... must have landed in the middle of our travel chaos. I updated the README, hopefully that helps. |
Ah thanks, @kwinkunks! I posted this issue a while back when the repo was created as a saw a few compelling contributions Is this perhaps at the start of creating an underlying library for the subsurface OSS stack? |
I've been thinking about this and if you really want to build a viable open source subsurface stack you will need:
Any of the above can (and will when something suitable exists) leverage outside packages where it makes sense too, but each overall "job" needs to be filled to make everything work as a complete 'stack' that can compete with closed source programs. There is ton of room to debate scope and there is nothing wrong with starting spin off packages specializing if one of the above jobs isn't fulfilled by something already existing out there and is deemed out of scope for this project... |
I have a fork of the repo so maybe I can frame out a project skeleton using folders and abstract classes as to what I'm thinking here and do a pull request to discuss and revise it. |
Hmm... pyvista could certainly handle some of the visualization tasks, but it is almost all visualization focused, and further, it is grid focused (an important type of visualization to be sure, but not the only one we would need for subsurface geoscience). At the core of any geoscience package would be the integration of the subsurface data. As example, look at Petrel. Petrel has really good visualizations and that sells a lot of software to companies, but what keeps people in the industry using it is the data I/O, data processing/integration, interpretation workflows, etc |
The TLDR; PyVista isn't just 3D viz - it's all about managing spatial data structures and we can leverage that. Also, we shouldn't attempt to create a complete software solution but rather, more of a set of standards for managing, tracking, and exchanging spatial data.
Well, not exactly. PyVista is a mesh analysis library at its core (wrapping VTK). The focus is on mesh and grid data structures. The 3D viz is one of PyVista's biggest focuses, but it is driven by the explicit mesh types and analysis/filtering of those mesh/grid types.
What exactly do you mean by "grid-focused" PyVista can handle irregular, Tree, rectilinear, 1D,2D, and 3D grids/meshes, and pretty much any type of spatially referenced data. PyVista is able to handle a majority of the spatial data structures we encounter in subsurface science (though I could have creator's bias here... 😁 as things like cylindrical meshes are very tricky to deal with)
In short, I'm not proposing a new visualization package here, I'm proposing an open-source workflow coupling tool to tie together the many packages out there together and maybe provide some functions of our own - less of a complete software solution and more of a set of standards for managing, tracking, and exchanging spatial data. I am absolutely on board here! I believe that some sort of library that manages spatially referenced datasets should be at the core of this which provides a close link to visualization packages (like PyVista), file IO packages, and domain-specific software like GemPy, SimPEG, etc. While I'm not exactly sure what that main package would look like at the moment, I'm thinking PyVista has a lot to offer going beyond just 3D viz and to management of spatially referenced data structures and the ability to fuse datasets. Also, this library at the core should only link together all the other tools. I think this library needs to be closely coupled to a visualization tool, otherwise it can be tough to work with 3D data. There are a lot of excellent points in your post above but I think the gist is that we need some sort of framework that can manage geoscientific research workflows in a reproducible fashion. I also think it would be cool to have some sort of tracking enabled for these types of datasets. For example, you might start with a set of sparsely measured points in your database (and the database assigns a unique identifier to it) then use that sparse data for inversion and the resulting inverted model can point to the source data by the unique identifier. To do this, the external libraries would have to make sure they implement this data tracking. |
What's the goal of this project?
The text was updated successfully, but these errors were encountered: