#include <TransportSolverTwophaseAd.hpp>
|
| TransportSolverTwophaseAd (const UnstructuredGrid &grid, const IncompPropertiesInterface &props, const LinearSolverInterface &linsolver, const double *gravity, const parameter::ParameterGroup ¶m) |
|
virtual | ~TransportSolverTwophaseAd () |
|
virtual void | solve (const double *porevolume, const double *source, const double dt, TwophaseState &state) |
|
Implements an implicit transport solver for incompressible two-phase flow, using automatic differentiation.
Opm::TransportSolverTwophaseAd::TransportSolverTwophaseAd |
( |
const UnstructuredGrid & |
grid, |
|
|
const IncompPropertiesInterface & |
props, |
|
|
const LinearSolverInterface & |
linsolver, |
|
|
const double * |
gravity, |
|
|
const parameter::ParameterGroup & |
param |
|
) |
| |
Construct solver.
- Parameters
-
[in] | grid | A 2d or 3d grid. |
[in] | props | Rock and fluid properties. |
[in] | linsolver | Linear solver for Newton-Raphson scheme. |
[in] | gravity | Gravity vector (null for no gravity). |
[in] | param | Parameters for the solver. |
virtual Opm::TransportSolverTwophaseAd::~TransportSolverTwophaseAd |
( |
| ) |
|
|
virtual |
virtual void Opm::TransportSolverTwophaseAd::solve |
( |
const double * |
porevolume, |
|
|
const double * |
source, |
|
|
const double |
dt, |
|
|
TwophaseState & |
state |
|
) |
| |
|
virtual |
Solve for saturation at next timestep. Note that this only performs advection by total velocity, and no gravity segregation.
- Parameters
-
[in] | porevolume | Array of pore volumes. |
[in] | source | Transport source term. For interpretation see Opm::computeTransportSource(). |
[in] | dt | Time step. |
[in,out] | state | Reservoir state. Calling solve() will read state.faceflux() and read and write state.saturation(). |
The documentation for this class was generated from the following file: