21 #ifndef OPM_TRANSPORTSOLVERTWOPHASEIMPLICIT_HEADER_INCLUDED 22 #define OPM_TRANSPORTSOLVERTWOPHASEIMPLICIT_HEADER_INCLUDED 24 #include <opm/core/transport/TransportSolverTwophaseInterface.hpp> 25 #include <opm/core/transport/implicit/SimpleFluid2pWrappingProps.hpp> 27 #include <opm/core/transport/implicit/ImplicitTransport.hpp> 28 #include <opm/core/transport/implicit/transport_source.h> 29 #include <opm/core/transport/implicit/CSRMatrixUmfpackSolver.hpp> 30 #include <opm/core/transport/implicit/NormSupport.hpp> 31 #include <opm/core/transport/implicit/ImplicitAssembly.hpp> 32 #include <opm/core/transport/implicit/ImplicitTransport.hpp> 33 #include <opm/core/transport/implicit/JacobianSystem.hpp> 34 #include <opm/core/transport/implicit/CSRMatrixBlockAssembler.hpp> 35 #include <opm/core/utility/parameters/ParameterGroup.hpp> 36 #include <opm/core/props/IncompPropertiesInterface.hpp> 37 #include <opm/core/grid.h> 38 #include <opm/core/linalg/LinearSolverFactory.hpp> 61 const std::vector<double>& porevol,
62 const double* gravity,
63 const std::vector<double>& half_trans,
74 virtual void solve(
const double* porevolume,
89 template <
class Vector>
93 norm(
const Vector& v) {
110 const UnstructuredGrid& grid_;
114 double initial_porevolume_cell0_;
119 #endif // OPM_TRANSPORTSOLVERTWOPHASEIMPLICIT_HEADER_INCLUDED Definition: TwophaseState.hpp:27
Definition: NormSupport.hpp:85
Definition: TransportSolverTwophaseImplicit.hpp:49
Definition: transport_source.h:43
Definition: JacobianSystem.hpp:109
Definition: SimpleFluid2pWrappingProps.hpp:37
Base class for two-phase incompressible transport solvers.
Definition: TransportSolverTwophaseInterface.hpp:30
Definition: SinglePointUpwindTwoPhase.hpp:278
Definition: ImplicitTransport.hpp:45
Definition: AnisotropicEikonal.cpp:446
TransportSolverTwophaseImplicit(const UnstructuredGrid &grid, const Opm::IncompPropertiesInterface &props, const std::vector< double > &porevol, const double *gravity, const std::vector< double > &half_trans, const ParameterGroup ¶m)
Construct solver.
Definition: TransportSolverTwophaseImplicit.cpp:42
Definition: CSRMatrixUmfpackSolver.hpp:47
Definition: JacobianSystem.hpp:145
Definition: JacobianSystem.hpp:223
ParameterGroup is a class that is used to provide run-time parameters.
Definition: ParameterGroup.hpp:81
virtual void solve(const double *porevolume, const double *source, const double dt, TwophaseState &state)
Solve for saturation at next timestep.
Definition: TransportSolverTwophaseImplicit.cpp:74
Definition: JacobianSystem.hpp:89
Definition: JacobianSystem.hpp:78
Definition: JacobianSystem.hpp:65
Definition: ImplicitTransport.hpp:105
Numerical model and support classes needed to model transport of two incompressible fluid phases...
Abstract base class for incompressible fluid and reservoir properties.
Definition: IncompPropertiesInterface.hpp:35