Loading...
Searching...
No Matches
Opm::BlackoilModelParameters< Scalar > Struct Template Reference

Solver parameters for the BlackoilModel. More...

`#include <BlackoilModelParameters.hpp>`

## Classes

struct | ConvergenceMonitorParams
| Struct holding convergence monitor params. More...

## Public Member Functions

| BlackoilModelParameters ()
| Construct from user parameters or defaults.

## Static Public Member Functions

static void | registerParameters ()

## Public Attributes

Scalar | dbhp_max_rel_
| Max relative change in bhp in single iteration.
Scalar | dwell_fraction_max_
| Max absolute change in well volume fraction in single iteration.
Scalar | inj_mult_osc_threshold_
| Injectivity multiplier oscillation threshold.
Scalar | inj_mult_damp_mult_
| Injectivity multiplier dampening multiplier.
Scalar | inj_mult_min_damp_factor_
| Minimum damping factor for injectivity multipliers.
Scalar | max_residual_allowed_
| Absolute max limit for residuals.
Scalar | relaxed_max_pv_fraction_
Scalar | tolerance_mb_
| Relative mass balance tolerance (total mass balance error).
Scalar | tolerance_mb_relaxed_
| Relaxed mass balance tolerance (can be used when iter >= min_strict_mb_iter_).
Scalar | tolerance_energy_balance_
| Relative energy balance tolerance (total energy balance error).
Scalar | tolerance_energy_balance_relaxed_
| Relaxed energy balance tolerance (can be used when iter >= min_strict_mb_iter_).
Scalar | tolerance_cnv_
| Local convergence tolerance (max of local saturation errors).
Scalar | tolerance_cnv_relaxed_
| Relaxed local convergence tolerance (can be used when iter >= min_strict_cnv_iter_ && cnvViolatedPV < relaxed_max_pv_fraction_).
Scalar | tolerance_cnv_energy_
| Local energy convergence tolerance (max of local energy errors).
Scalar | tolerance_cnv_energy_relaxed_
| Relaxed local energy convergence tolerance (can be used when iter >= min_strict_cnv_iter_ && cnvViolatedPV < relaxed_max_pv_fraction_).
Scalar | tolerance_wells_
| Well convergence tolerance.
Scalar | tolerance_well_control_
| Tolerance for the well control equations.
Scalar | tolerance_pressure_ms_wells_
| Tolerance for the pressure equations for multisegment wells.
Scalar | relaxed_tolerance_flow_well_
| Relaxed tolerance for for the well flow residual.
Scalar | relaxed_tolerance_pressure_ms_well_
| Relaxed tolerance for the MSW pressure solution.
Scalar | max_pressure_change_ms_wells_
| Maximum pressure change over an iteratio for ms wells.
int | max_inner_iter_ms_wells_
| Maximum inner iteration number for ms wells.
int | strict_inner_iter_wells_
| Strict inner iteration number for wells.
int | strict_outer_iter_wells_
| Newton iteration where wells are stricly convergent.
Scalar | regularization_factor_wells_
| Regularization factor for wells.
int | max_niter_inner_well_iter_
| Maximum newton iterations with inner well iterations.
bool | shut_unsolvable_wells_
| Whether to shut unsolvable well.
int | max_inner_iter_wells_
| Maximum inner iteration number for standard wells.
int | max_welleq_iter_
| Maximum iteration number of the well equation solution.
Scalar | maxSinglePrecisionTimeStep_
| Tolerance for time step in seconds where single precision can be used for solving for the Jacobian.
int | min_strict_cnv_iter_
| Minimum number of Newton iterations before we can use relaxed CNV convergence criterion.
int | min_strict_mb_iter_
| Minimum number of Newton iterations before we can use relaxed MB convergence criterion.
bool | solve_welleq_initially_
| Solve well equation initially.
bool | pre_solve_network_
| Pre solve and iterate network model.
bool | update_equations_scaling_
| Update scaling factors for mass balance equations.
bool | use_update_stabilization_
| Try to detect oscillation or stagnation.
bool | use_multisegment_well_
| Whether to use MultisegmentWell to handle multisegment wells it is something temporary before the multisegment well model is considered to be well developed and tested.
std::string | deck_file_name_
| The file name of the deck.
bool | matrix_add_well_contributions_
| Whether to add influences of wells between cells to the matrix and preconditioner matrix.
bool | check_well_operability_
| Whether to check well operability.
bool | check_well_operability_iter_
| Whether to check well operability during iterations.
int | max_number_of_well_switches_
| Maximum number of times a well can switch to the same control.
int | max_number_of_group_switches_
| Maximum number of times group can switch to the same control.
bool | use_average_density_ms_wells_
| Whether to approximate segment densities by averaging over segment and its outlet.
bool | local_well_solver_control_switching_
| Whether to allow control switching during local well solutions.
bool | use_implicit_ipr_
| Whether to use implicit IPR for thp stability checks and solution search.
bool | check_group_constraints_inner_well_iterations_
| Whether to allow checking/changing to group controls during inner well iterations.
int | network_max_strict_outer_iterations_
| Maximum number of iterations in the network solver before relaxing tolerance.
int | network_max_outer_iterations_
| Maximum number of iterations in the network solver before giving up.
int | network_max_sub_iterations_
| Maximum number of sub-iterations to update network pressures (within a single well/group control update).
Scalar | network_pressure_update_damping_factor_
| Damping factor in the inner network pressure update iterations.
Scalar | network_max_pressure_update_in_bars_
| Maximum pressure update in the inner network pressure update iterations.
int | well_group_constraints_max_iterations_
| Maximum number of iterations in the well/group switch algorithm.
int | max_well_status_switch_inner_iter_
| Maximum number of status switches (open<->stop> in local well iterations.
int | max_well_status_switch_
| Maximum number of status switches (open<->stop> during a time step.
std::string | nonlinear_solver_
| Nonlinear solver type: newton or nldd.
DomainSolveApproach | local_solve_approach_ {DomainSolveApproach::Jacobi}
| 'jacobi' and 'gauss-seidel' supported
int | newton_max_iter_
| Maximum number of Newton iterations per time step.
int | newton_min_iter_
| Minimum number of Newton iterations per time step.
int | max_local_solve_iterations_
Scalar | local_tolerance_scaling_mb_
Scalar | local_tolerance_scaling_cnv_
int | nldd_num_initial_newton_iter_ {1}
Scalar | nldd_relative_mobility_change_tol_
| Threshold for single cell relative mobility change in NLDD.
int | num_local_domains_ {0}
Scalar | local_domains_partition_imbalance_ {1.03}
std::string | local_domains_partition_method_
int | local_domains_partition_well_neighbor_levels_ {1}
DomainOrderingMeasure | local_domains_ordering_ {DomainOrderingMeasure::MaxPressure}
bool | write_partitions_ {false}
ConvergenceMonitorParams | monitor_params_
| Convergence monitoring parameters.
Scalar | nupcol_group_rate_tolerance_

## Detailed Description

template<class Scalar>
struct Opm::BlackoilModelParameters< Scalar >

Solver parameters for the BlackoilModel.

## Member Data Documentation

## use_multisegment_well_

template<class Scalar>

bool Opm::BlackoilModelParameters< Scalar >::use_multisegment_well_

Whether to use MultisegmentWell to handle multisegment wells it is something temporary before the multisegment well model is considered to be well developed and tested.

if it is false, we will handle multisegment wells as standard wells, which will be the default behavoir for the moment. Later, we might set it to be true by default if necessary

The documentation for this struct was generated from the following files:

- opm/simulators/flow/BlackoilModelParameters.hpp
- opm/simulators/flow/BlackoilModelParameters.cpp