Giter VIP home page Giter VIP logo

Comments (6)

andlaus avatar andlaus commented on August 20, 2024

I'm not sure if I understand you correctly: do you mean NTG and MULTPV are not considered? if I remember correctly, the PORV grid property from opm-parser already includes MULTPV and NTG (except for the cells where the pore volume is specified directly and the multipliers must not be applied). did I ever mention that this part of the code is tricky?

porosity[i]=pv/grid.cellVolume(i); // Should not the volume change, too

I guess this is correct, because we want to keep the pore volume constant while we don't alter the grid. Obviously this can lead to weird situations where the porosity is larger than 1.0...

I have no idea how the porosity is calculated in legacy, but these two codes seem a tiny bit different.

differences are possible, in particular because the code in eWoms tends to be newer. as far as I know, the porosity in DerivedGeology is the pristine value specified in the deck.

from opm-models.

alfbr avatar alfbr commented on August 20, 2024

In flow, pore volume was calculated after the grid processing. Since we handle MINPV+PINCH by extending the cell above or below to fill the void of the removed cell, the cell volume gets larger than what you find in Eclipse. In flow_ebos the original cell volume is kept, which makes the results closer to what you find in Eclipse. Personally, I actually like better what we did in flow, but it is no big deal. Hopefully we will be able to re-factor the pore volume code soon anyway. Today's solution is a bit of a hack.

from opm-models.

andlaus avatar andlaus commented on August 20, 2024

In flow, pore volume was calculated after the grid processing.

right. the same is actually the case here too, so the total volume of the cell includes the volume of the disabled cells, at least if Dune::CpGrid works correctly. (hopefully.) did I ever mention that this code is tricky?

In flow_ebos the original cell volume is kept

I'd like to mention that "original" means "whatever Dune::CpGrid produces for the active cells", which is identical to what's used by flow_legacy?! That aside, the total volume of the cell is not relevant for reservoir simulations -- only the pore volume is.

Personally, I actually like better what we did in flow, but it is no big deal

the grids should be identical. Though I'm not sure if it is (or ever was) used for the visualization output, so possibly what's shown by ResInsight is slightly different from what the simulator uses... the same issues applies to flow_legacy, though.

from opm-models.

alfbr avatar alfbr commented on August 20, 2024

the same is actually the case here too, so the total volume of the cell includes the volume of the disabled cells

Good to know. If that is the case, then I was misled when the implementation was done. I have to admit that I never checked though.

from opm-models.

andlaus avatar andlaus commented on August 20, 2024

I was misled when the implementation was done.

I can't blame you: as @blattms noted, that stuff is very opaque and my impression is that everyone has a slightly incorrect idea of this initially.

from opm-models.

andlaus avatar andlaus commented on August 20, 2024

It seems this was working as it should, albeit in non-obvious ways and with many side-conditions. closing the issue. please reopen if this does not work properly.

from opm-models.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.