opm-simulators
Opm::NonlinearSystemNldd< TypeTag > Class Template Reference

A NLDD implementation used by the reservoir nonlinear system. More...

#include <NonlinearSystemNldd.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 = typename NonlinearSystemBlackOilReservoir< TypeTag >::ModelParameters
 
using SolutionVector = GetPropType< TypeTag, Properties::SolutionVector >
 
using BVector = typename NonlinearSystemBlackOilReservoir< TypeTag >::BVector
 
using Domain = SubDomain< Grid >
 
using ISTLSolverType = ISTLSolver< TypeTag >
 
using Mat = typename NonlinearSystemBlackOilReservoir< TypeTag >::Mat
 

Public Member Functions

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

Static Public Attributes

static constexpr int numEq = Indices::numEq
 

Detailed Description

template<class TypeTag>
class Opm::NonlinearSystemNldd< TypeTag >

A NLDD implementation used by the reservoir nonlinear system.

Constructor & Destructor Documentation

◆ NonlinearSystemNldd()

template<class TypeTag >
Opm::NonlinearSystemNldd< TypeTag >::NonlinearSystemNldd ( NonlinearSystemBlackOilReservoir< TypeTag > &  model)
inlineexplicit

The constructor sets up the subdomains.

Parameters
modelOwning nonlinear system to solve for

Member Function Documentation

◆ writePartitions()

template<class TypeTag >
void Opm::NonlinearSystemNldd< 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.


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