Opm::BlackoilModelNldd< TypeTag > Class Template Reference

A NLDD implementation for three-phase black oil. More...

#include <BlackoilModelNldd.hpp>

Public Types

using ElementContext = GetPropType< TypeTag, Properties::ElementContext >
 
using FluidSystem = GetPropType< TypeTag, Properties::FluidSystem >
 
using Grid = GetPropType< TypeTag, Properties::Grid >
 
using Indices = GetPropType< TypeTag, Properties::Indices >
 
using Scalar = GetPropType< TypeTag, Properties::Scalar >
 
using ModelParameters = BlackoilModelParameters< Scalar >
 
using SolutionVector = GetPropType< TypeTag, Properties::SolutionVector >
 
using BVector = typename BlackoilModel< TypeTag >::BVector
 
using Domain = SubDomain< Grid >
 
using ISTLSolverType = ISTLSolver< TypeTag >
 
using Mat = typename BlackoilModel< TypeTag >::Mat
 

Public Member Functions

 BlackoilModelNldd (BlackoilModel< TypeTag > &model)
 The constructor sets up the subdomains. More...
 
void prepareStep ()
 Called before starting a time step. More...
 
template<class NonlinearSolverType >
SimulatorReportSingle nonlinearIterationNldd (const int iteration, const SimulatorTimerInterface &timer, NonlinearSolverType &nonlinear_solver)
 Do one non-linear NLDD iteration. More...
 
const SimulatorReportlocalAccumulatedReports () const
 return the statistics of local solves accumulated for this rank More...
 
const std::vector< SimulatorReport > & domainAccumulatedReports () const
 return the statistics of local solves accumulated for each domain on this rank More...
 
void writePartitions (const std::filesystem::path &odir) const
 
void writeNonlinearIterationsPerCell (const std::filesystem::path &odir) const
 Write the number of nonlinear iterations per cell to a file in ResInsight compatible format. More...
 

Static Public Attributes

static constexpr int numEq = Indices::numEq
 

Detailed Description

template<class TypeTag>
class Opm::BlackoilModelNldd< TypeTag >

A NLDD implementation for three-phase black oil.

Member Typedef Documentation

◆ BVector

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::BVector = typename BlackoilModel<TypeTag>::BVector

◆ Domain

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::Domain = SubDomain<Grid>

◆ ElementContext

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::ElementContext = GetPropType<TypeTag, Properties::ElementContext>

◆ FluidSystem

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::FluidSystem = GetPropType<TypeTag, Properties::FluidSystem>

◆ Grid

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::Grid = GetPropType<TypeTag, Properties::Grid>

◆ Indices

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::Indices = GetPropType<TypeTag, Properties::Indices>

◆ ISTLSolverType

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::ISTLSolverType = ISTLSolver<TypeTag>

◆ Mat

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::Mat = typename BlackoilModel<TypeTag>::Mat

◆ ModelParameters

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::ModelParameters = BlackoilModelParameters<Scalar>

◆ Scalar

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::Scalar = GetPropType<TypeTag, Properties::Scalar>

◆ SolutionVector

template<class TypeTag >
using Opm::BlackoilModelNldd< TypeTag >::SolutionVector = GetPropType<TypeTag, Properties::SolutionVector>

Constructor & Destructor Documentation

◆ BlackoilModelNldd()

template<class TypeTag >
Opm::BlackoilModelNldd< TypeTag >::BlackoilModelNldd ( BlackoilModel< TypeTag > &  model)
inlineexplicit

Member Function Documentation

◆ domainAccumulatedReports()

template<class TypeTag >
const std::vector< SimulatorReport > & Opm::BlackoilModelNldd< TypeTag >::domainAccumulatedReports ( ) const
inline

return the statistics of local solves accumulated for each domain on this rank

◆ localAccumulatedReports()

template<class TypeTag >
const SimulatorReport & Opm::BlackoilModelNldd< TypeTag >::localAccumulatedReports ( ) const
inline

return the statistics of local solves accumulated for this rank

◆ nonlinearIterationNldd()

◆ prepareStep()

template<class TypeTag >
void Opm::BlackoilModelNldd< TypeTag >::prepareStep ( )
inline

Called before starting a time step.

◆ writeNonlinearIterationsPerCell()

template<class TypeTag >
void Opm::BlackoilModelNldd< TypeTag >::writeNonlinearIterationsPerCell ( const std::filesystem::path &  odir) const
inline

Write the number of nonlinear iterations per cell to a file in ResInsight compatible format.

References Opm::writeNonlinearIterationsPerCell().

◆ writePartitions()

template<class TypeTag >
void Opm::BlackoilModelNldd< TypeTag >::writePartitions ( const std::filesystem::path &  odir) const
inline

Write the partition vector to a file in ResInsight compatible format for inspection and a partition file for each rank, that can be used as input for OPM.

References Opm::writePartitions().

Member Data Documentation

◆ numEq

template<class TypeTag >
constexpr int Opm::BlackoilModelNldd< TypeTag >::numEq = Indices::numEq
staticconstexpr

The documentation for this class was generated from the following file: