My Project
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.
 
std::string nonlinear_solver_
 Nonlinear solver type: newton or nldd.
 
DomainSolveApproach local_solve_approach_ {DomainSolveApproach::Jacobi}
 'jacobi' and 'gauss-seidel' supported.
 
int max_local_solve_iterations_
 
Scalar local_tolerance_scaling_mb_
 
Scalar local_tolerance_scaling_cnv_
 
int nldd_num_initial_newton_iter_ {1}
 
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: