mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
adapted tutorial such that we have advection-dominated flow again
This commit is contained in:
parent
15116fb9f8
commit
4dcf68f7a5
@ -57,8 +57,8 @@ SET_PROP(TutorialProblemCoupled, Grid) /*@\label{tutorial-coupled:set-grid}@*/
|
|||||||
Dune::FieldVector<int, 2> cellRes;
|
Dune::FieldVector<int, 2> cellRes;
|
||||||
Dune::FieldVector<ctype, 2> lowerLeft(0.0);
|
Dune::FieldVector<ctype, 2> lowerLeft(0.0);
|
||||||
Dune::FieldVector<ctype, 2> upperRight;
|
Dune::FieldVector<ctype, 2> upperRight;
|
||||||
cellRes[0] = 30;
|
cellRes[0] = 100;
|
||||||
cellRes[1] = 10;
|
cellRes[1] = 1;
|
||||||
upperRight[0] = 300;
|
upperRight[0] = 300;
|
||||||
upperRight[1] = 60;
|
upperRight[1] = 60;
|
||||||
return new Dune::SGrid<2,2>(cellRes,
|
return new Dune::SGrid<2,2>(cellRes,
|
||||||
@ -192,10 +192,10 @@ public:
|
|||||||
fvElemGeom.boundaryFace[boundaryFaceIdx].ipGlobal;
|
fvElemGeom.boundaryFace[boundaryFaceIdx].ipGlobal;
|
||||||
Scalar right = this->bboxMax()[0];
|
Scalar right = this->bboxMax()[0];
|
||||||
// extraction of oil on the right boundary for approx. 1.e6 seconds
|
// extraction of oil on the right boundary for approx. 1.e6 seconds
|
||||||
if (pos[0] > right - eps_ && this->timeManager().time() <= 1.e6) {
|
if (pos[0] > right - eps_) {
|
||||||
// oil outflux of 0.3 g/(m * s) on the right boundary.
|
// oil outflux of 30 g/(m * s) on the right boundary.
|
||||||
values[Indices::contiWEqIdx] = 0;
|
values[Indices::contiWEqIdx] = 0;
|
||||||
values[Indices::contiNEqIdx] = 3e-4;
|
values[Indices::contiNEqIdx] = 3e-2;
|
||||||
} else {
|
} else {
|
||||||
// no-flow on the remaining Neumann-boundaries.
|
// no-flow on the remaining Neumann-boundaries.
|
||||||
values[Indices::contiWEqIdx] = 0;
|
values[Indices::contiWEqIdx] = 0;
|
||||||
|
@ -184,7 +184,7 @@ public:
|
|||||||
bool shouldWriteOutput() const /*@\label{tutorial-decoupled:output}@*/
|
bool shouldWriteOutput() const /*@\label{tutorial-decoupled:output}@*/
|
||||||
{
|
{
|
||||||
return this->timeManager().timeStepIndex() > 0 &&
|
return this->timeManager().timeStepIndex() > 0 &&
|
||||||
(this->timeManager().timeStepIndex() % 1 == 0);
|
(this->timeManager().timeStepIndex() % 20 == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
//! Returns the temperature within the domain.
|
//! Returns the temperature within the domain.
|
||||||
@ -262,7 +262,7 @@ public:
|
|||||||
std::vector<Scalar> neumannFlux(2,0.0);
|
std::vector<Scalar> neumannFlux(2,0.0);
|
||||||
if (globalPos[0] > this->bboxMax()[0] - eps_)
|
if (globalPos[0] > this->bboxMax()[0] - eps_)
|
||||||
{
|
{
|
||||||
neumannFlux[nPhaseIdx] = 3e-4;
|
neumannFlux[nPhaseIdx] = 3e-2;
|
||||||
}
|
}
|
||||||
return neumannFlux;
|
return neumannFlux;
|
||||||
}
|
}
|
||||||
|
@ -104,7 +104,7 @@ public:
|
|||||||
materialParams_.setSnr(0.0);
|
materialParams_.setSnr(0.0);
|
||||||
|
|
||||||
//linear material law
|
//linear material law
|
||||||
materialParams_.setPe(1000.0);
|
materialParams_.setPe(500.0);
|
||||||
materialParams_.setAlpha(2);
|
materialParams_.setAlpha(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -92,7 +92,7 @@ public:
|
|||||||
|
|
||||||
// parameters for the Brooks-Corey Law
|
// parameters for the Brooks-Corey Law
|
||||||
// entry pressures
|
// entry pressures
|
||||||
materialLawParams_.setPe(1000);
|
materialLawParams_.setPe(500);
|
||||||
|
|
||||||
// Brooks-Corey shape parameters
|
// Brooks-Corey shape parameters
|
||||||
materialLawParams_.setAlpha(2);
|
materialLawParams_.setAlpha(2);
|
||||||
|
Loading…
Reference in New Issue
Block a user