1) It seems that you are setting no-flow for the saturation on the right boundary. I'm not very surprised by the result.
2) Yes, the choice must be consistent. Have a look at dumux/porousmediumflow/2p/sequential/indices.hh to see the available options. 3) It's the pressure that is chosen via the property PressureFormulation, see dumux/porousmediumflow/2p/sequential/properties.hh. I'm not aware of any better paper and also fear that our formulation with capillary pressure isn't rigorously derived. Again, consistency of BCs and primary variables is mandatory. 4) 2pnc is a fully implicit model. It directly discretizes the component mass balances, there is no dedicated pressure equation. I'd say that it is the right model for your needs, as long as you code correctly the desired relations in a dedicated fluid system. Kind regards Bernd -- _______________________________________________________________ Bernd Flemisch phone: +49 711 685 69162 IWS, Universität Stuttgart fax: +49 711 685 60430 Pfaffenwaldring 61 email: [email protected] D-70569 Stuttgart url: www.hydrosys.uni-stuttgart.de _______________________________________________________________ ________________________________ Von: Dumux <[email protected]> im Auftrag von lc <[email protected]> Gesendet: Montag, 28. Januar 2019 08:45:12 An: [email protected] Betreff: [DuMuX] about BCs, 2pnc model and pressure equation Good morning, I have some other questions of mixed nature: 1) I'm simulating the water injection (from left) in a rectangular domain filled with oil. As soon as the water front reach the right (outlet) boundary something happens, as you can see from the pic attached. Here it is shown the water saturation field zoomed at the outlet, the rest of the domain is uniform. In the following the BCs I impose. Is there anything strange for the Neumann part? Thank you. void boundaryTypesAtPos(BoundaryTypes &bcTypes, const GlobalPosition& globalPos) const { if (globalPos[0] < this->bBoxMin()[0] + eps_) { bcTypes.setNeumann(pressEqIdx); bcTypes.setDirichlet(satEqIdx); } else if (globalPos[0] > this->bBoxMax()[0] - eps_) { bcTypes.setDirichlet(pressEqIdx); bcTypes.setNeumann(satEqIdx); //bcTypes.setOutflow(satEqIdx); } else { bcTypes.setAllNeumann(); } } bcTypes.setNeumann(satEqIdx); void neumannAtPos(PrimaryVariables &values, const GlobalPosition& globalPos) const { values = 0; if (globalPos[0] < this->bBoxMin()[0] + eps_) { const Scalar waterDensity = 1000.0; const Scalar oilDensity = 850.0; const Scalar Q = 300 / (60 * 60 * 24); const Scalar speed = Q / (2. * 800. * 150.); values[wPhaseIdx] = - (waterDensity * speed); values[wPhaseIdx] = - inFlux_; } else if (globalPos[0] > this->bBoxMax()[0] - eps_) { values[wPhaseIdx] = 0.; void dirichletAtPos(PrimaryVariables &values, const GlobalPosition& globalPos) const { values = 0; const Scalar smax = 0.7856; const Scalar smin = 0.2121; if (globalPos[0] < this->bBoxMin()[0] + eps_) { values[swIdx] = smax; } else { values[pwIdx] = -30e5; } } 2) As I read from here, https://dumux.org/doxygen/2.12/a01896.html, if the formulation is: [$ p_w $] - [$ S_w $] Is it possible to assign boundary conditions on other non-primary variables, such as for example, pn - Sn? Does DuMux perform some conversion internally? Or the choice of primary variable must be consistent with the variables used in BCs? 3) I read the 2p2c model doc, https://dumux.org/doxygen/2.12/a01900.html, and the paper SPE 99619 and "Analysis of a Compositional Model for Fluid Flow in Porous Media" by Chen, Qin and Ewing. In the pressure equation, which pressure is the one which appears in the time derivative? And in general, which pressure is used in multicomponent models? Finally, in addition, to the cited references, is there any other paper for a more explicit derivation os such formulas? And also in this case, how to apply BC on phase/components, should they be consistent with primary variables adopted? 4) I need to simulate a 2p3c (water/oil phases, and water/polymer/surfactant in the water phase), so I guess I should use the 2pnc component model, right? In doc https://dumux.org/doxygen/2.12/a01903.html, where is the pressure equation? Is the same of 2p2c? Moreover, in my case fluids should be immiscible. Can I still use this model? Thank you very much, Kind regards, Lorenzo
_______________________________________________ Dumux mailing list [email protected] https://listserv.uni-stuttgart.de/mailman/listinfo/dumux
