20#ifndef OPM_BLACKOILMODELPARAMETERS_HEADER_INCLUDED
21#define OPM_BLACKOILMODELPARAMETERS_HEADER_INCLUDED
23#include <opm/models/discretization/common/fvbaseproperties.hh>
25#include <opm/models/utils/basicproperties.hh>
26#include <opm/models/utils/parametersystem.hh>
27#include <opm/models/utils/propertysystem.hh>
29#include <opm/simulators/flow/SubDomain.hpp>
34namespace Opm::Properties {
40template<
class TypeTag,
class MyTypeTag>
42 using type = UndefinedProperty;
44template<
class TypeTag,
class MyTypeTag>
46 using type = UndefinedProperty;
48template<
class TypeTag,
class MyTypeTag>
50 using type = UndefinedProperty;
52template<
class TypeTag,
class MyTypeTag>
54 using type = UndefinedProperty;
56template<
class TypeTag,
class MyTypeTag>
58 using type = UndefinedProperty;
60template<
class TypeTag,
class MyTypeTag>
62 using type = UndefinedProperty;
64template<
class TypeTag,
class MyTypeTag>
66 using type = UndefinedProperty;
68template<
class TypeTag,
class MyTypeTag>
70 using type = UndefinedProperty;
72template<
class TypeTag,
class MyTypeTag>
74 using type = UndefinedProperty;
76template<
class TypeTag,
class MyTypeTag>
78 using type = UndefinedProperty;
80template<
class TypeTag,
class MyTypeTag>
82 using type = UndefinedProperty;
84template<
class TypeTag,
class MyTypeTag>
86 using type = UndefinedProperty;
88template<
class TypeTag,
class MyTypeTag>
90 using type = UndefinedProperty;
92template<
class TypeTag,
class MyTypeTag>
94 using type = UndefinedProperty;
96template<
class TypeTag,
class MyTypeTag>
98 using type = UndefinedProperty;
100template<
class TypeTag,
class MyTypeTag>
102 using type = UndefinedProperty;
104template<
class TypeTag,
class MyTypeTag>
106 using type = UndefinedProperty;
108template<
class TypeTag,
class MyTypeTag>
110 using type = UndefinedProperty;
112template<
class TypeTag,
class MyTypeTag>
114 using type = UndefinedProperty;
116template<
class TypeTag,
class MyTypeTag>
118 using type = UndefinedProperty;
120template<
class TypeTag,
class MyTypeTag>
122 using type = UndefinedProperty;
124template<
class TypeTag,
class MyTypeTag>
126 using type = UndefinedProperty;
128template<
class TypeTag,
class MyTypeTag>
130 using type = UndefinedProperty;
133template<
class TypeTag,
class MyTypeTag>
135 using type = UndefinedProperty;
137template<
class TypeTag,
class MyTypeTag>
139 using type = UndefinedProperty;
141template<
class TypeTag,
class MyTypeTag>
143 using type = UndefinedProperty;
145template<
class TypeTag,
class MyTypeTag>
147 using type = UndefinedProperty;
149template<
class TypeTag,
class MyTypeTag>
151 using type = UndefinedProperty;
153template<
class TypeTag,
class MyTypeTag>
155 using type = UndefinedProperty;
157template<
class TypeTag,
class MyTypeTag>
159 using type = UndefinedProperty;
161template<
class TypeTag,
class MyTypeTag>
163 using type = UndefinedProperty;
165template<
class TypeTag,
class MyTypeTag>
167 using type = UndefinedProperty;
169template<
class TypeTag,
class MyTypeTag>
171 using type = UndefinedProperty;
173template<
class TypeTag,
class MyTypeTag>
175 using type = UndefinedProperty;
177template<
class TypeTag,
class MyTypeTag>
179 using type = UndefinedProperty;
181template<
class TypeTag,
class MyTypeTag>
183 using type = UndefinedProperty;
185template<
class TypeTag,
class MyTypeTag>
187 using type = UndefinedProperty;
189template<
class TypeTag,
class MyTypeTag>
191 using type = UndefinedProperty;
193template<
class TypeTag,
class MyTypeTag>
195 using type = UndefinedProperty;
198template<
class TypeTag,
class MyTypeTag>
200 using type = UndefinedProperty;
202template<
class TypeTag,
class MyTypeTag>
204 using type = UndefinedProperty;
206template<
class TypeTag,
class MyTypeTag>
208 using type = UndefinedProperty;
210template<
class TypeTag,
class MyTypeTag>
212 using type = UndefinedProperty;
214template<
class TypeTag,
class MyTypeTag>
216 using type = UndefinedProperty;
218template<
class TypeTag,
class MyTypeTag>
220 using type = UndefinedProperty;
222template<
class TypeTag,
class MyTypeTag>
224 using type = UndefinedProperty;
226template<
class TypeTag,
class MyTypeTag>
228 using type = UndefinedProperty;
230template<
class TypeTag,
class MyTypeTag>
232 using type = UndefinedProperty;
234template<
class TypeTag,
class MyTypeTag>
236 using type = UndefinedProperty;
238template<
class TypeTag,
class MyTypeTag>
240 using type = UndefinedProperty;
242template<
class TypeTag,
class MyTypeTag>
244 using type = UndefinedProperty;
246template<
class TypeTag>
248 using type = GetPropType<TypeTag, Scalar>;
249 static constexpr type value = 1.0;
251template<
class TypeTag>
253 using type = GetPropType<TypeTag, Scalar>;
254 static constexpr type value = 0.2;
256template<
class TypeTag>
258 using type = GetPropType<TypeTag, Scalar>;
259 static constexpr type value = 1e7;
261template<
class TypeTag>
263 using type = GetPropType<TypeTag, Scalar>;
264 static constexpr type value = 0.03;
266template<
class TypeTag>
268 using type = GetPropType<TypeTag, Scalar>;
269 static constexpr type value = 1e-6;
271template<
class TypeTag>
273 using type = GetPropType<TypeTag, Scalar>;
274 static constexpr type value = 1e-6;
276template<
class TypeTag>
278 using type = GetPropType<TypeTag, Scalar>;
279 static constexpr type value = 1e-2;
281template<
class TypeTag>
283 using type = GetPropType<TypeTag, Scalar>;
284 static constexpr type value = 1;
286template<
class TypeTag>
288 using type = GetPropType<TypeTag, Scalar>;
289 static constexpr type value = 1e-4;
291template<
class TypeTag>
293 using type = GetPropType<TypeTag, Scalar>;
294 static constexpr type value = 1e-7;
296template<
class TypeTag>
298 static constexpr int value = 30;
300template<
class TypeTag>
302 static constexpr bool value =
true;
304template<
class TypeTag>
306 using type = GetPropType<TypeTag, Scalar>;
307 static constexpr type value = 20.0;
309template<
class TypeTag>
311 static constexpr int value = 0;
313template<
class TypeTag>
315 static constexpr int value = -1;
317template<
class TypeTag>
319 static constexpr bool value =
true;
321template<
class TypeTag>
323 static constexpr bool value =
false;
325template<
class TypeTag>
327 static constexpr bool value =
true;
329template<
class TypeTag>
331 static constexpr bool value =
false;
333template<
class TypeTag>
335 using type = GetPropType<TypeTag, Scalar>;
336 static constexpr type value = 0.01*1e5;
338template<
class TypeTag>
340 using type = GetPropType<TypeTag, Scalar>;
341 static constexpr type value = 10*1e5;
343template<
class TypeTag>
345 static constexpr int value = 8;
347template<
class TypeTag>
349 static constexpr int value = 100;
351template<
class TypeTag>
353 static constexpr int value = 50;
355template<
class TypeTag>
357 static constexpr bool value =
true;
359template<
class TypeTag>
361 static constexpr bool value =
true;
363template<
class TypeTag>
365 static constexpr int value = 6;
367template<
class TypeTag>
369 static constexpr int value = 40;
371template<
class TypeTag>
373 using type = GetPropType<TypeTag, Scalar>;
374 static constexpr type value = 100;
376template<
class TypeTag>
378 static constexpr bool value =
true;
380template<
class TypeTag>
382 static constexpr bool value =
false;
384template<
class TypeTag>
386 static constexpr bool value =
false;
388template<
class TypeTag>
390 using type = GetPropType<TypeTag, Scalar>;
391 static constexpr type value = 1e-3;
393template<
class TypeTag>
395 using type = GetPropType<TypeTag, Scalar>;
396 static constexpr type value = 1.0e4;
398template<
class TypeTag>
400 static constexpr int value = 3;
402template<
class TypeTag>
404 static constexpr bool value =
false;
406template<
class TypeTag>
408 static constexpr bool value =
false;
410template<
class TypeTag>
412 static constexpr bool value =
false;
416template<
class TypeTag>
418 static constexpr int value = 100;
420template<
class TypeTag>
422 static constexpr int value = 200;
424template<
class TypeTag>
426 static constexpr auto value =
"newton";
428template<
class TypeTag>
430 static constexpr auto value =
"gauss-seidel";
432template<
class TypeTag>
434 static constexpr int value = 20;
436template<
class TypeTag>
438 using type = GetPropType<TypeTag, Scalar>;
439 static constexpr type value = 1.0;
441template<
class TypeTag>
443 using type = GetPropType<TypeTag, Scalar>;
444 static constexpr type value = 0.1;
446template<
class TypeTag>
449 static constexpr auto value = type{1};
451template<
class TypeTag>
454 static constexpr auto value = 0;
456template<
class TypeTag>
458 using type = GetPropType<TypeTag, Scalar>;
459 static constexpr auto value = type{1.03};
461template<
class TypeTag>
463 static constexpr auto value =
"zoltan";
465template<
class TypeTag>
467 static constexpr auto value =
"maxpressure";
471template<
class TypeTag>
472struct ThreadsPerProcess<TypeTag, TTag::FlowModelParameters> {
473 static constexpr int value = -1;
482 template <
class TypeTag>
486 using Scalar = GetPropType<TypeTag, Properties::Scalar>;
497 double relaxed_max_pv_fraction_;
606 int max_local_solve_iterations_;
608 double local_tolerance_scaling_mb_;
609 double local_tolerance_scaling_cnv_;
611 int nldd_num_initial_newton_iter_{1};
612 int num_local_domains_{0};
613 double local_domain_partition_imbalance_{1.03};
614 std::string local_domain_partition_method_;
617 bool write_partitions_{
false};
622 dbhp_max_rel_= Parameters::get<TypeTag, Properties::DbhpMaxRel>();
625 relaxed_max_pv_fraction_ = Parameters::get<TypeTag, Properties::RelaxedMaxPvFraction>();
626 tolerance_mb_ = Parameters::get<TypeTag, Properties::ToleranceMb>();
628 tolerance_cnv_ = Parameters::get<TypeTag, Properties::ToleranceCnv>();
659 const auto approach = Parameters::get<TypeTag, Properties::LocalSolveApproach>();
660 if (approach ==
"jacobi") {
662 }
else if (approach ==
"gauss-seidel") {
665 throw std::runtime_error(
"Invalid domain solver approach '" + approach +
"' specified.");
668 max_local_solve_iterations_ = Parameters::get<TypeTag, Properties::MaxLocalSolveIterations>();
669 local_tolerance_scaling_mb_ = Parameters::get<TypeTag, Properties::LocalToleranceScalingMb>();
670 local_tolerance_scaling_cnv_ = Parameters::get<TypeTag, Properties::LocalToleranceScalingCnv>();
671 nldd_num_initial_newton_iter_ = Parameters::get<TypeTag, Properties::NlddNumInitialNewtonIter>();
672 num_local_domains_ = Parameters::get<TypeTag, Properties::NumLocalDomains>();
673 local_domain_partition_imbalance_ = std::max(1.0, Parameters::get<TypeTag, Properties::LocalDomainsPartitioningImbalance>());
674 local_domain_partition_method_ = Parameters::get<TypeTag, Properties::LocalDomainsPartitioningMethod>();
675 deck_file_name_ = Parameters::get<TypeTag, Properties::EclDeckFileName>();
678 local_domain_ordering_ = domainOrderingMeasureFromString(Parameters::get<TypeTag, Properties::LocalDomainsOrderingMeasure>());
679 write_partitions_ = Parameters::get<TypeTag, Properties::DebugEmitCellPartition>();
682 static void registerParameters()
684 Parameters::registerParam<TypeTag, Properties::DbhpMaxRel>
685 (
"Maximum relative change of the bottom-hole pressure in a single iteration");
686 Parameters::registerParam<TypeTag, Properties::DwellFractionMax>
687 (
"Maximum absolute change of a well's volume fraction in a single iteration");
688 Parameters::registerParam<TypeTag, Properties::MaxResidualAllowed>
689 (
"Absolute maximum tolerated for residuals without cutting the time step size");
690 Parameters::registerParam<TypeTag, Properties::RelaxedMaxPvFraction>
691 (
"The fraction of the pore volume of the reservoir "
692 "where the volumetric error (CNV) may be voilated "
693 "during strict Newton iterations.");
694 Parameters::registerParam<TypeTag, Properties::ToleranceMb>
695 (
"Tolerated mass balance error relative to total mass present");
696 Parameters::registerParam<TypeTag, Properties::ToleranceMbRelaxed>
697 (
"Relaxed tolerated mass balance error that applies for iterations "
698 "after the iterations with the strict tolerance");
699 Parameters::registerParam<TypeTag, Properties::ToleranceCnv>
700 (
"Local convergence tolerance (Maximum of local saturation errors)");
701 Parameters::registerParam<TypeTag, Properties::ToleranceCnvRelaxed>
702 (
"Relaxed local convergence tolerance that applies for iterations "
703 "after the iterations with the strict tolerance");
704 Parameters::registerParam<TypeTag, Properties::ToleranceWells>
705 (
"Well convergence tolerance");
706 Parameters::registerParam<TypeTag, Properties::ToleranceWellControl>
707 (
"Tolerance for the well control equations");
708 Parameters::registerParam<TypeTag, Properties::MaxWelleqIter>
709 (
"Maximum number of iterations to determine solution the well equations");
710 Parameters::registerParam<TypeTag, Properties::UseMultisegmentWell>
711 (
"Use the well model for multi-segment wells instead of the "
712 "one for single-segment wells");
713 Parameters::registerParam<TypeTag, Properties::TolerancePressureMsWells>
714 (
"Tolerance for the pressure equations for multi-segment wells");
715 Parameters::registerParam<TypeTag, Properties::RelaxedWellFlowTol>
716 (
"Relaxed tolerance for the well flow residual");
717 Parameters::registerParam<TypeTag, Properties::RelaxedPressureTolMsw>
718 (
"Relaxed tolerance for the MSW pressure solution");
719 Parameters::registerParam<TypeTag, Properties::MaxPressureChangeMsWells>
720 (
"Maximum relative pressure change for a single iteration "
721 "of the multi-segment well model");
722 Parameters::registerParam<TypeTag, Properties::MaxInnerIterMsWells>
723 (
"Maximum number of inner iterations for multi-segment wells");
724 Parameters::registerParam<TypeTag, Properties::StrictInnerIterWells>
725 (
"Number of inner well iterations with strict tolerance");
726 Parameters::registerParam<TypeTag, Properties::StrictOuterIterWells>
727 (
"Number of newton iterations for which wells are checked with strict tolerance");
728 Parameters::registerParam<TypeTag, Properties::MaxNewtonIterationsWithInnerWellIterations>
729 (
"Maximum newton iterations with inner well iterations");
730 Parameters::registerParam<TypeTag, Properties::ShutUnsolvableWells>
731 (
"Shut unsolvable wells");
732 Parameters::registerParam<TypeTag, Properties::MaxInnerIterWells>
733 (
"Maximum number of inner iterations for standard wells");
734 Parameters::registerParam<TypeTag, Properties::AlternativeWellRateInit>
735 (
"Use alternative well rate initialization procedure");
736 Parameters::registerParam<TypeTag, Properties::RegularizationFactorWells>
737 (
"Regularization factor for wells");
738 Parameters::registerParam<TypeTag, Properties::MaxSinglePrecisionDays>
739 (
"Maximum time step size where single precision floating point "
740 "arithmetic can be used solving for the linear systems of equations");
741 Parameters::registerParam<TypeTag, Properties::MinStrictCnvIter>
742 (
"Minimum number of Newton iterations before relaxed tolerances "
743 "can be used for the CNV convergence criterion");
744 Parameters::registerParam<TypeTag, Properties::MinStrictMbIter>
745 (
"Minimum number of Newton iterations before relaxed tolerances "
746 "can be used for the MB convergence criterion. "
747 "Default -1 means that the relaxed tolerance is used when maximum "
748 "number of Newton iterations are reached.");
749 Parameters::registerParam<TypeTag, Properties::SolveWelleqInitially>
750 (
"Fully solve the well equations before each iteration of the reservoir model");
751 Parameters::registerParam<TypeTag, Properties::UpdateEquationsScaling>
752 (
"Update scaling factors for mass balance equations during the run");
753 Parameters::registerParam<TypeTag, Properties::UseUpdateStabilization>
754 (
"Try to detect and correct oscillations or stagnation during the Newton method");
755 Parameters::registerParam<TypeTag, Properties::MatrixAddWellContributions>
756 (
"Explicitly specify the influences of wells between cells in "
757 "the Jacobian and preconditioner matrices");
758 Parameters::registerParam<TypeTag, Properties::EnableWellOperabilityCheck>
759 (
"Enable the well operability checking");
760 Parameters::registerParam<TypeTag, Properties::EnableWellOperabilityCheckIter>
761 (
"Enable the well operability checking during iterations");
762 Parameters::registerParam<TypeTag, Properties::MaximumNumberOfWellSwitches>
763 (
"Maximum number of times a well can switch to the same control");
764 Parameters::registerParam<TypeTag, Properties::UseAverageDensityMsWells>
765 (
"Approximate segment densitities by averaging over segment and its outlet");
766 Parameters::registerParam<TypeTag, Properties::LocalWellSolveControlSwitching>
767 (
"Allow control switching during local well solutions");
768 Parameters::registerParam<TypeTag, Properties::UseImplicitIpr>
769 (
"Compute implict IPR for stability checks and stable solution search");
770 Parameters::registerParam<TypeTag, Properties::NetworkMaxStrictIterations>
771 (
"Maximum iterations in network solver before relaxing tolerance");
772 Parameters::registerParam<TypeTag, Properties::NetworkMaxIterations>
773 (
"Maximum number of iterations in the network solver before giving up");
774 Parameters::registerParam<TypeTag, Properties::NonlinearSolver>
775 (
"Choose nonlinear solver. Valid choices are newton or nldd.");
776 Parameters::registerParam<TypeTag, Properties::LocalSolveApproach>
777 (
"Choose local solve approach. Valid choices are jacobi and gauss-seidel");
778 Parameters::registerParam<TypeTag, Properties::MaxLocalSolveIterations>
779 (
"Max iterations for local solves with NLDD nonlinear solver.");
780 Parameters::registerParam<TypeTag, Properties::LocalToleranceScalingMb>
781 (
"Set lower than 1.0 to use stricter convergence tolerance for local solves.");
782 Parameters::registerParam<TypeTag, Properties::LocalToleranceScalingCnv>
783 (
"Set lower than 1.0 to use stricter convergence tolerance for local solves.");
784 Parameters::registerParam<TypeTag, Properties::NlddNumInitialNewtonIter>
785 (
"Number of initial global Newton iterations when running the NLDD nonlinear solver.");
786 Parameters::registerParam<TypeTag, Properties::NumLocalDomains>
787 (
"Number of local domains for NLDD nonlinear solver.");
788 Parameters::registerParam<TypeTag, Properties::LocalDomainsPartitioningImbalance>
789 (
"Subdomain partitioning imbalance tolerance. 1.03 is 3 percent imbalance.");
790 Parameters::registerParam<TypeTag, Properties::LocalDomainsPartitioningMethod>
791 (
"Subdomain partitioning method. Allowed values are "
794 "and the name of a partition file ending with '.partition'.");
795 Parameters::registerParam<TypeTag, Properties::LocalDomainsOrderingMeasure>
796 (
"Subdomain ordering measure. Allowed values are "
800 Parameters::registerParam<TypeTag, Properties::DebugEmitCellPartition>
801 (
"Whether or not to emit cell partitions as a debugging aid.");
803 Parameters::hideParam<TypeTag, Properties::DebugEmitCellPartition>();
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition BlackoilPhases.hpp:27
DomainOrderingMeasure
Measure to use for domain ordering.
Definition SubDomain.hpp:39
DomainSolveApproach
Solver approach for NLDD.
Definition SubDomain.hpp:33
Solver parameters for the BlackoilModel.
Definition BlackoilModelParameters.hpp:484
bool shut_unsolvable_wells_
Whether to shut unsolvable well.
Definition BlackoilModelParameters.hpp:538
bool check_well_operability_
Whether to check well operability.
Definition BlackoilModelParameters.hpp:579
bool update_equations_scaling_
Update scaling factors for mass balance equations.
Definition BlackoilModelParameters.hpp:560
double maxSinglePrecisionTimeStep_
Tolerance for time step in seconds where single precision can be used for solving for the Jacobian.
Definition BlackoilModelParameters.hpp:548
double max_pressure_change_ms_wells_
Maximum pressure change over an iteratio for ms wells.
Definition BlackoilModelParameters.hpp:520
double tolerance_cnv_relaxed_
Relaxed local convergence tolerance (can be used when iter >= min_strict_cnv_iter_ && cnvViolatedPV <...
Definition BlackoilModelParameters.hpp:505
bool solve_welleq_initially_
Solve well equation initially.
Definition BlackoilModelParameters.hpp:557
double max_residual_allowed_
Absolute max limit for residuals.
Definition BlackoilModelParameters.hpp:494
bool use_implicit_ipr_
Whether to use implicit IPR for thp stability checks and solution search.
Definition BlackoilModelParameters.hpp:593
bool use_average_density_ms_wells_
Whether to approximate segment densities by averaging over segment and its outlet.
Definition BlackoilModelParameters.hpp:587
int min_strict_mb_iter_
Minimum number of Newton iterations before we can use relaxed MB convergence criterion.
Definition BlackoilModelParameters.hpp:554
double tolerance_wells_
Well convergence tolerance.
Definition BlackoilModelParameters.hpp:507
double tolerance_cnv_
Local convergence tolerance (max of local saturation errors).
Definition BlackoilModelParameters.hpp:503
double tolerance_pressure_ms_wells_
Tolerance for the pressure equations for multisegment wells.
Definition BlackoilModelParameters.hpp:512
int network_max_iterations_
Maximum number of iterations in the network solver before giving up.
Definition BlackoilModelParameters.hpp:599
int max_welleq_iter_
Maximum iteration number of the well equation solution.
Definition BlackoilModelParameters.hpp:544
bool matrix_add_well_contributions_
Whether to add influences of wells between cells to the matrix and preconditioner matrix.
Definition BlackoilModelParameters.hpp:576
double dbhp_max_rel_
Max relative change in bhp in single iteration.
Definition BlackoilModelParameters.hpp:490
bool local_well_solver_control_switching_
Whether to allow control switching during local well solutions.
Definition BlackoilModelParameters.hpp:590
int strict_outer_iter_wells_
Newton iteration where wells are stricly convergent.
Definition BlackoilModelParameters.hpp:529
std::string deck_file_name_
The file name of the deck.
Definition BlackoilModelParameters.hpp:573
int max_number_of_well_switches_
Maximum number of times a well can switch to the same controt.
Definition BlackoilModelParameters.hpp:584
DomainSolveApproach local_solve_approach_
'jacobi' and 'gauss-seidel' supported.
Definition BlackoilModelParameters.hpp:604
bool use_update_stabilization_
Try to detect oscillation or stagnation.
Definition BlackoilModelParameters.hpp:563
int max_niter_inner_well_iter_
Maximum newton iterations with inner well iterations.
Definition BlackoilModelParameters.hpp:535
double dwell_fraction_max_
Max absolute change in well volume fraction in single iteration.
Definition BlackoilModelParameters.hpp:492
double relaxed_tolerance_pressure_ms_well_
Relaxed tolerance for the MSW pressure solution.
Definition BlackoilModelParameters.hpp:517
std::string nonlinear_solver_
Nonlinear solver type: newton or nldd.
Definition BlackoilModelParameters.hpp:602
double tolerance_well_control_
Tolerance for the well control equations.
Definition BlackoilModelParameters.hpp:510
double regularization_factor_wells_
Regularization factor for wells.
Definition BlackoilModelParameters.hpp:532
double tolerance_mb_relaxed_
Relaxed mass balance tolerance (can be used when iter >= min_strict_mb_iter_).
Definition BlackoilModelParameters.hpp:501
bool use_multisegment_well_
Whether to use MultisegmentWell to handle multisegment wells it is something temporary before the mul...
Definition BlackoilModelParameters.hpp:570
int network_max_strict_iterations_
Maximum number of iterations in the network solver before relaxing tolerance.
Definition BlackoilModelParameters.hpp:596
int max_inner_iter_ms_wells_
Maximum inner iteration number for ms wells.
Definition BlackoilModelParameters.hpp:523
int max_inner_iter_wells_
Maximum inner iteration number for standard wells.
Definition BlackoilModelParameters.hpp:541
double relaxed_tolerance_flow_well_
Relaxed tolerance for for the well flow residual.
Definition BlackoilModelParameters.hpp:514
int min_strict_cnv_iter_
Minimum number of Newton iterations before we can use relaxed CNV convergence criterion.
Definition BlackoilModelParameters.hpp:551
BlackoilModelParameters()
Construct from user parameters or defaults.
Definition BlackoilModelParameters.hpp:620
bool check_well_operability_iter_
Whether to check well operability during iterations.
Definition BlackoilModelParameters.hpp:581
int strict_inner_iter_wells_
Strict inner iteration number for wells.
Definition BlackoilModelParameters.hpp:526
double tolerance_mb_
Relative mass balance tolerance (total mass balance error).
Definition BlackoilModelParameters.hpp:499
Definition BlackoilModelParameters.hpp:178
Definition BlackoilModelParameters.hpp:45
Definition BlackoilModelParameters.hpp:129
Definition BlackoilModelParameters.hpp:49
Definition BlackoilModelParameters.hpp:41
Definition BlackoilModelParameters.hpp:125
Definition BlackoilModelParameters.hpp:121
Definition BlackoilModelParameters.hpp:243
Definition BlackoilModelParameters.hpp:235
Definition BlackoilModelParameters.hpp:239
Definition BlackoilModelParameters.hpp:211
Definition BlackoilModelParameters.hpp:223
Definition BlackoilModelParameters.hpp:219
Definition BlackoilModelParameters.hpp:190
Definition BlackoilModelParameters.hpp:117
Definition BlackoilModelParameters.hpp:142
Definition BlackoilModelParameters.hpp:174
Definition BlackoilModelParameters.hpp:215
Definition BlackoilModelParameters.hpp:166
Definition BlackoilModelParameters.hpp:138
Definition BlackoilModelParameters.hpp:53
Definition BlackoilModelParameters.hpp:93
Definition BlackoilModelParameters.hpp:85
Definition BlackoilModelParameters.hpp:182
Definition BlackoilModelParameters.hpp:97
Definition BlackoilModelParameters.hpp:101
Definition BlackoilModelParameters.hpp:203
Definition BlackoilModelParameters.hpp:199
Definition BlackoilModelParameters.hpp:227
Definition BlackoilModelParameters.hpp:207
Definition BlackoilModelParameters.hpp:231
Definition BlackoilModelParameters.hpp:162
Definition BlackoilModelParameters.hpp:57
Definition BlackoilModelParameters.hpp:158
Definition BlackoilModelParameters.hpp:150
Definition BlackoilModelParameters.hpp:170
Definition BlackoilModelParameters.hpp:105
Definition BlackoilModelParameters.hpp:146
Definition BlackoilModelParameters.hpp:154
Definition BlackoilModelParameters.hpp:37
Definition BlackoilModelParameters.hpp:73
Definition BlackoilModelParameters.hpp:69
Definition BlackoilModelParameters.hpp:65
Definition BlackoilModelParameters.hpp:61
Definition BlackoilModelParameters.hpp:134
Definition BlackoilModelParameters.hpp:81
Definition BlackoilModelParameters.hpp:77
Definition BlackoilModelParameters.hpp:109
Definition BlackoilModelParameters.hpp:186
Definition BlackoilModelParameters.hpp:194
Definition BlackoilModelParameters.hpp:89
Definition BlackoilModelParameters.hpp:113