equinor / webviz-subsurface

Webviz-config plugins for subsurface data.
https://github.com/orgs/equinor/projects/24
GNU General Public License v3.0
55 stars 59 forks source link

Relative permeability #27

Closed anders-kiaer closed 4 years ago

anders-kiaer commented 5 years ago

Container for analyzing and visualizing relative permeability models used in reservoir simulations.

asnyv commented 4 years ago

Current plan, open for input:

Current idea is to try to do something fairly close to ReservoirSimulationTimeSeries, though with saturation as x-axis:

berland commented 4 years ago

Suggest to set aside space for plotting the SCAL recommendation (pess-base-opt) as an envelope alongside each curve. Not certain where to get these from yet (but somehow through the input sheet given to pyscal), but keep in mind.

Either one plot pr. SATNUM (over all realizations), or all SATNUMs in one realization in the same plot. Both are in general relevant, but not for all reservoir models.

Consider if family 1 style only should be supported, or family 2 style also should be an option. If coded cleverly, I think it is possible to flip between them visualization wise. I think the ecl2df output differs depending on whether it is family 1 or family 2 keywords that went in.

asnyv commented 4 years ago

@berland Agree that we should aim to have an option to add a SCAL recommendation. Didn't quite get what you meant with set aside space? Do you want to have the envelope in a separate plot? Would think it's natural to have the SCAL recommendation as three lines in the same figure? As source I think we could require that the user provides a valid path to such a pyscal input sheet in the configuration, but we would have to decide on whether it is a per ensemble configuration, or if a single sheet is ok. We have to think about the amount of data in the view and number of options in the plugin, not for performance, but to make it easy to understand. Therefore think it might be ok to disallow specification of SCAL recommendations per ensemble, and instead just have a single specified reference sheet.

Plot per SATNUM is clearly needed. Do you actually think it is necessary with all SATNUMs for a single realization, or is it ok to plot all realizations in the ensemble, and color by SATNUM? Similar to what is done per ensemble for simulation vectors in the picture at the end? Not sure if I like the idea of filtering on single realization unless you think there is a use case for it. Will include the ability to hover over a curve and get key information like ensemble, realization and saturation + relperm at nearest datapoint.

For data I think we should allow all types that are currently in ecl2df, which is family 1 + most of family 2. I haven't tested a set of family 2, but I assume that the KEYWORD_COLUMNS are what you get out? (actually, when I look at it, I think there might be some errors there, SOFN doesn't exist in the Eclipse manual, and a few are missing). The formats aren't that different, but I think it is reasonable to only show family 1 data as long as any of the family 1 keys exist (in any of the ensembles)? Would think that most models use family 1, and having a front-end switch between families introduces more confusion than gain in my head.

image

alifbe commented 4 years ago

For our upscaling project, we made a custom plugin to plot relative permeability and capillary pressure. There are some options that I think will be nice to have.

image

asnyv commented 4 years ago

Thanks, @alifbe! Short comments:

alifbe commented 4 years ago

@asnyv That's great. 'Statistical fan chart' might be a better option than transparency.

I think you might want capillary pressure in another plot, to avoid the mess.

Looking forward to seeing the plugin.