18 params.
addRequiredParam<UserObjectName>(
"rhie_chow_user_object",
"The rhie-chow user-object");
24 "momentum_systems",
"The solver system(s) for the momentum equation(s).");
26 "The solver system for the pressure equation.");
27 params.
addParam<SolverSystemName>(
"energy_system",
"The solver system for the energy equation.");
28 params.
addParam<SolverSystemName>(
"solid_energy_system",
29 "The solver system for the solid energy equation.");
30 params.
addParam<std::vector<SolverSystemName>>(
31 "passive_scalar_systems", {},
"The solver system for each scalar advection equation.");
32 params.
addParam<std::vector<SolverSystemName>>(
33 "pm_radiation_systems",
35 "The solver system for each participating media radiation equation.");
36 params.
addParam<std::vector<SolverSystemName>>(
37 "turbulence_systems", {},
"The solver system for each surrogate turbulence equation.");
44 "momentum_equation_relaxation",
46 "0.0<momentum_equation_relaxation<=1.0",
47 "The relaxation which should be used for the momentum equation. (=1 for no relaxation, "
48 "diagonal dominance will still be enforced)");
52 "Singleton PETSc options for the momentum equation");
55 "Names of PETSc name/value pairs for the momentum equation");
56 params.
addParam<std::vector<std::string>>(
57 "momentum_petsc_options_value",
58 "Values of PETSc name/value pairs (must correspond with \"petsc_options_iname\" for the "
62 "momentum_absolute_tolerance",
64 "0.0<momentum_absolute_tolerance",
65 "The absolute tolerance(s) on the normalized residual(s) of the momentum equation(s). "
66 "If a single value is provided it is applied to all momentum components.");
70 "0.0<=momentum_l_tol & momentum_l_tol<1.0",
71 "The relative tolerance on the normalized residual in the "
72 "linear solver of the momentum equation.");
75 "0.0<momentum_l_abs_tol",
76 "The absolute tolerance on the normalized residual in the "
77 "linear solver of the momentum equation.");
81 "The maximum allowed iterations in the linear solver of the momentum equation.");
84 "momentum_equation_relaxation momentum_petsc_options momentum_petsc_options_iname "
85 "momentum_petsc_options_value momentum_petsc_options_value momentum_absolute_tolerance "
86 "momentum_l_tol momentum_l_abs_tol momentum_l_max_its momentum_systems",
93 "pressure_variable_relaxation",
95 "0.0<pressure_variable_relaxation<=1.0",
96 "The relaxation which should be used for the pressure variable (=1 for no relaxation).");
100 "Singleton PETSc options for the pressure equation");
103 "Names of PETSc name/value pairs for the pressure equation");
104 params.
addParam<std::vector<std::string>>(
105 "pressure_petsc_options_value",
106 "Values of PETSc name/value pairs (must correspond with \"petsc_options_iname\" for the "
107 "pressure equation");
110 "pressure_absolute_tolerance",
112 "0.0<pressure_absolute_tolerance",
113 "The absolute tolerance on the normalized residual of the pressure equation.");
117 "0.0<=pressure_l_tol & pressure_l_tol<1.0",
118 "The relative tolerance on the normalized residual in the "
119 "linear solver of the pressure equation.");
122 "0.0<pressure_l_abs_tol",
123 "The absolute tolerance on the normalized residual in the "
124 "linear solver of the pressure equation.");
126 "pressure_l_max_its",
128 "The maximum allowed iterations in the linear solver of the pressure equation.");
131 "pressure_variable_relaxation pressure_petsc_options pressure_petsc_options_iname "
132 "pressure_petsc_options_value pressure_petsc_options_value pressure_absolute_tolerance "
133 "pressure_l_tol pressure_l_abs_tol pressure_l_max_its pressure_system",
134 "Pressure Equation");
141 "pin_pressure",
false,
"If the pressure field needs to be pinned at a point.");
143 "pressure_pin_value", 0.0,
"The value which needs to be enforced for the pressure.");
144 params.
addParam<Point>(
"pressure_pin_point",
"The point where the pressure needs to be pinned.");
146 params.
addParamNamesToGroup(
"pin_pressure pressure_pin_value pressure_pin_point",
"Pressure Pin");
151 "Use this to print the coupling and solution fields and matrices throughout the iteration.");
158 "energy_equation_relaxation",
160 "0.0<energy_equation_relaxation<=1.0",
161 "The relaxation which should be used for the energy equation. (=1 for no relaxation, "
162 "diagonal dominance will still be enforced)");
166 "Singleton PETSc options for the energy equation");
169 "Names of PETSc name/value pairs for the energy equation");
170 params.
addParam<std::vector<std::string>>(
171 "energy_petsc_options_value",
172 "Values of PETSc name/value pairs (must correspond with \"petsc_options_iname\" for the "
176 "energy_absolute_tolerance",
178 "0.0<energy_absolute_tolerance",
179 "The absolute tolerance on the normalized residual of the energy equation.");
183 "0.0<=energy_l_tol & energy_l_tol<1.0",
184 "The relative tolerance on the normalized residual in the "
185 "linear solver of the energy equation.");
188 "0.0<energy_l_abs_tol",
189 "The absolute tolerance on the normalized residual in the "
190 "linear solver of the energy equation.");
194 "0<energy_l_max_its",
195 "The maximum allowed iterations in the linear solver of the energy equation.");
198 "energy_equation_relaxation energy_petsc_options energy_petsc_options_iname "
199 "energy_petsc_options_value energy_petsc_options_value energy_absolute_tolerance "
200 "energy_l_tol energy_l_abs_tol energy_l_max_its",
209 "Singleton PETSc options for the solid energy equation");
212 "Names of PETSc name/value pairs for the solid energy equation");
213 params.
addParam<std::vector<std::string>>(
214 "solid_energy_petsc_options_value",
215 "Values of PETSc name/value pairs (must correspond with \"petsc_options_iname\" for the "
216 "solid energy equation");
219 "solid_energy_absolute_tolerance",
221 "0.0<solid_energy_absolute_tolerance",
222 "The absolute tolerance on the normalized residual of the solid energy equation.");
226 "0.0<=solid_energy_l_tol & solid_energy_l_tol<1.0",
227 "The relative tolerance on the normalized residual in the "
228 "linear solver of the solid energy equation.");
232 "0.0<solid_energy_l_abs_tol",
233 "The absolute tolerance on the normalized residual in the "
234 "linear solver of the solid energy equation.");
236 "solid_energy_l_max_its",
238 "0<solid_energy_l_max_its",
239 "The maximum allowed iterations in the linear solver of the solid energy equation.");
242 "solid_energy_petsc_options_value solid_energy_absolute_tolerance "
243 "solid_energy_l_tol solid_energy_l_abs_tol solid_energy_l_max_its",
244 "Solid Energy Equation");
249 params.
addParam<std::vector<Real>>(
"passive_scalar_equation_relaxation",
251 "The relaxation which should be used for the passive scalar "
252 "equations. (=1 for no relaxation, "
253 "diagonal dominance will still be enforced)");
257 "Singleton PETSc options for the passive scalar equation(s)");
259 "passive_scalar_petsc_options_iname",
261 "Names of PETSc name/value pairs for the passive scalar equation(s)");
262 params.
addParam<std::vector<std::string>>(
263 "passive_scalar_petsc_options_value",
264 "Values of PETSc name/value pairs (must correspond with \"petsc_options_iname\" for the "
265 "passive scalar equation(s)");
267 "passive_scalar_absolute_tolerance",
269 "The absolute tolerance(s) on the normalized residual(s) of the passive scalar equation(s).");
272 "0.0<=passive_scalar_l_tol & passive_scalar_l_tol<1.0",
273 "The relative tolerance on the normalized residual in the "
274 "linear solver of the passive scalar equation(s).");
277 "0.0<passive_scalar_l_abs_tol",
278 "The absolute tolerance on the normalized residual in the "
279 "linear solver of the passive scalar equation(s).");
281 "passive_scalar_l_max_its",
283 "The maximum allowed iterations in the linear solver of the turbulence equation.");
286 "passive_scalar_systems passive_scalar_equation_relaxation passive_scalar_petsc_options "
287 "passive_scalar_petsc_options_iname "
288 "passive_scalar_petsc_options_value passive_scalar_petsc_options_value "
289 "passive_scalar_absolute_tolerance "
290 "passive_scalar_l_tol passive_scalar_l_abs_tol passive_scalar_l_max_its",
291 "Passive Scalars Advection Equation");
297 "pm_radiation_equation_relaxation",
299 "The relaxation which should be used for the participating media radiation "
300 "equations. (=1 for no relaxation, "
301 "diagonal dominance will still be enforced)");
304 "pm_radiation_petsc_options",
306 "Singleton PETSc options for the participating media radiation equation(s)");
308 "pm_radiation_petsc_options_iname",
310 "Names of PETSc name/value pairs for the participating media radiation equation(s)");
311 params.
addParam<std::vector<std::string>>(
312 "pm_radiation_petsc_options_value",
313 "Values of PETSc name/value pairs (must correspond with \"petsc_options_iname\" for the "
314 "participating media radiation equation(s)");
315 params.
addParam<std::vector<Real>>(
"pm_radiation_absolute_tolerance",
317 "The absolute tolerance(s) on the normalized residual(s) of "
318 "the participating media radiation equation(s).");
320 "pm_radiation_l_tol",
322 "0.0<=pm_radiation_l_tol & pm_radiation_l_tol<1.0",
323 "The relative tolerance on the normalized residual in the "
324 "linear solver of the participating media radiation equation(s).");
326 "pm_radiation_l_abs_tol",
328 "0.0<pm_radiation_l_abs_tol",
329 "The absolute tolerance on the normalized residual in the "
330 "linear solver of the participating media radiation equation(s).");
331 params.
addParam<
unsigned int>(
"pm_radiation_l_max_its",
333 "The maximum allowed iterations in the linear solver of the "
334 "participating media radiation equation.");
337 "pm_radiation_systems pm_radiation_equation_relaxation pm_radiation_petsc_options "
338 "pm_radiation_petsc_options_iname "
339 "pm_radiation_petsc_options_value pm_radiation_petsc_options_value "
340 "pm_radiation_absolute_tolerance "
341 "pm_radiation_l_tol pm_radiation_l_abs_tol pm_radiation_l_max_its",
342 "Participating Medium Radiation Equation");
347 params.
addParam<std::vector<Real>>(
"turbulence_equation_relaxation",
349 "The relaxation which should be used for the turbulence "
350 "equations. (=1 for no relaxation, "
351 "diagonal dominance will still be enforced)");
353 params.
addParam<std::vector<Real>>(
"turbulence_field_relaxation",
355 "The relaxation which should be used for the turbulence "
359 "turbulence_field_min_limit",
361 "The lower limit imposed on turbulent quantities. The recommended value for robustness "
362 "is 1e-8. This is the imposed default if not set.");
366 "Singleton PETSc options for the turbulence equation(s)");
369 "Names of PETSc name/value pairs for the turbulence equation(s)");
370 params.
addParam<std::vector<std::string>>(
371 "turbulence_petsc_options_value",
372 "Values of PETSc name/value pairs (must correspond with \"petsc_options_iname\" for the "
373 "turbulence equation(s)");
375 "turbulence_absolute_tolerance",
377 "The absolute tolerance(s) on the normalized residual(s) of the turbulence equation(s).");
380 "0.0<=turbulence_l_tol & turbulence_l_tol<1.0",
381 "The relative tolerance on the normalized residual in the "
382 "linear solver of the turbulence equation(s).");
385 "0.0<turbulence_l_abs_tol",
386 "The absolute tolerance on the normalized residual in the "
387 "linear solver of the turbulence equation(s).");
389 "turbulence_l_max_its",
391 "The maximum allowed iterations in the linear solver of the turbulence equation.");
394 "turbulence_equation_relaxation "
395 "turbulence_field_relaxation "
396 "turbulence_field_min_limit "
397 "turbulence_petsc_options "
398 "turbulence_petsc_options_iname "
399 "turbulence_petsc_options_value turbulence_petsc_options_value "
400 "turbulence_absolute_tolerance "
401 "turbulence_l_tol turbulence_l_abs_tol turbulence_l_max_its",
402 "Turbulence Equations");
412 "The number of momentum-pressure-(other fields) iterations needed.");
414 params.
addParam<
bool>(
"continue_on_max_its",
416 "If solve should continue if maximum number of iterations is hit.");
424 _momentum_system_names(getParam<
std::vector<SolverSystemName>>(
"momentum_systems")),
425 _momentum_l_abs_tol(getParam<Real>(
"momentum_l_abs_tol")),
426 _momentum_equation_relaxation(getParam<Real>(
"momentum_equation_relaxation")),
427 _pressure_system_name(getParam<SolverSystemName>(
"pressure_system")),
428 _pressure_l_abs_tol(getParam<Real>(
"pressure_l_abs_tol")),
429 _pressure_variable_relaxation(getParam<Real>(
"pressure_variable_relaxation")),
430 _pin_pressure(getParam<bool>(
"pin_pressure")),
431 _pressure_pin_value(getParam<Real>(
"pressure_pin_value")),
432 _pressure_pin_dof(
libMesh::invalid_uint),
433 _has_energy_system(isParamValid(
"energy_system")),
434 _energy_equation_relaxation(getParam<Real>(
"energy_equation_relaxation")),
435 _energy_l_abs_tol(getParam<Real>(
"energy_l_abs_tol")),
436 _has_solid_energy_system(_has_energy_system && isParamValid(
"solid_energy_system")),
437 _solid_energy_l_abs_tol(getParam<Real>(
"solid_energy_l_abs_tol")),
438 _passive_scalar_system_names(getParam<
std::vector<SolverSystemName>>(
"passive_scalar_systems")),
439 _has_passive_scalar_systems(!_passive_scalar_system_names.empty()),
440 _passive_scalar_equation_relaxation(
441 getParam<
std::vector<Real>>(
"passive_scalar_equation_relaxation")),
442 _passive_scalar_l_abs_tol(getParam<Real>(
"passive_scalar_l_abs_tol")),
443 _pm_radiation_system_names(getParam<
std::vector<SolverSystemName>>(
"pm_radiation_systems")),
444 _has_pm_radiation_systems(!_pm_radiation_system_names.empty()),
445 _pm_radiation_equation_relaxation(
446 getParam<
std::vector<Real>>(
"pm_radiation_equation_relaxation")),
447 _pm_radiation_l_abs_tol(getParam<Real>(
"pm_radiation_l_abs_tol")),
448 _turbulence_system_names(getParam<
std::vector<SolverSystemName>>(
"turbulence_systems")),
449 _has_turbulence_systems(!_turbulence_system_names.empty()),
450 _turbulence_equation_relaxation(getParam<
std::vector<Real>>(
"turbulence_equation_relaxation")),
451 _turbulence_field_relaxation(getParam<
std::vector<Real>>(
"turbulence_field_relaxation")),
452 _turbulence_field_min_limit(getParam<
std::vector<Real>>(
"turbulence_field_min_limit")),
453 _turbulence_l_abs_tol(getParam<Real>(
"turbulence_l_abs_tol")),
454 _momentum_absolute_tolerance(getParam<
std::vector<Real>>(
"momentum_absolute_tolerance")),
455 _pressure_absolute_tolerance(getParam<Real>(
"pressure_absolute_tolerance")),
456 _energy_absolute_tolerance(getParam<Real>(
"energy_absolute_tolerance")),
457 _solid_energy_absolute_tolerance(getParam<Real>(
"solid_energy_absolute_tolerance")),
458 _passive_scalar_absolute_tolerance(
459 getParam<
std::vector<Real>>(
"passive_scalar_absolute_tolerance")),
460 _pm_radiation_absolute_tolerance(
461 getParam<
std::vector<Real>>(
"pm_radiation_absolute_tolerance")),
462 _turbulence_absolute_tolerance(getParam<
std::vector<Real>>(
"turbulence_absolute_tolerance")),
463 _num_iterations(getParam<unsigned
int>(
"num_iterations")),
464 _continue_on_max_its(getParam<bool>(
"continue_on_max_its")),
465 _print_fields(getParam<bool>(
"print_fields"))
472 "The number of momentum absolute tolerances must be one or match the number of "
473 "momentum systems.");
475 const auto & momentum_petsc_options = getParam<MultiMooseEnum>(
"momentum_petsc_options");
476 const auto & momentum_petsc_pair_options = getParam<MooseEnumItem, std::string>(
477 "momentum_petsc_options_iname",
"momentum_petsc_options_value");
486 getParam<unsigned int>(
"momentum_l_max_its");
488 const auto & pressure_petsc_options = getParam<MultiMooseEnum>(
"pressure_petsc_options");
489 const auto & pressure_petsc_pair_options = getParam<MooseEnumItem, std::string>(
490 "pressure_petsc_options_iname",
"pressure_petsc_options_value");
499 getParam<unsigned int>(
"pressure_l_max_its");
503 const auto & energy_petsc_options = getParam<MultiMooseEnum>(
"energy_petsc_options");
504 const auto & energy_petsc_pair_options = getParam<MooseEnumItem, std::string>(
505 "energy_petsc_options_iname",
"energy_petsc_options_value");
517 {
"energy_petsc_options",
518 "energy_petsc_options_iname",
519 "energy_petsc_options_value",
523 "energy_absolute_tolerance",
524 "energy_equation_relaxation"},
529 const auto & solid_energy_petsc_options =
530 getParam<MultiMooseEnum>(
"solid_energy_petsc_options");
531 const auto & solid_energy_petsc_pair_options = getParam<MooseEnumItem, std::string>(
532 "solid_energy_petsc_options_iname",
"solid_energy_petsc_options_value");
543 getParam<Real>(
"solid_energy_l_abs_tol");
545 getParam<unsigned int>(
"solid_energy_l_max_its");
549 {
"solid_energy_petsc_options",
550 "solid_energy_petsc_options_iname",
551 "solid_energy_petsc_options_value",
552 "solid_energy_l_tol",
553 "solid_energy_l_abs_tol",
554 "solid_energy_l_max_its",
555 "solid_energy_absolute_tolerance",
556 "solid_energy_equation_relaxation"},
564 paramError(
"pm_radiation_equation_relaxation",
565 "The number of equation relaxation parameters does not match the number of "
566 "participating media radiation equations!");
569 "The number of absolute tolerances does not match the number of "
570 "participating media radiation equations!");
574 const auto & pm_radiation_petsc_options =
575 getParam<MultiMooseEnum>(
"pm_radiation_petsc_options");
576 const auto & pm_radiation_petsc_pair_options = getParam<MooseEnumItem, std::string>(
577 "pm_radiation_petsc_options_iname",
"pm_radiation_petsc_options_value");
588 getParam<Real>(
"pm_radiation_l_abs_tol");
590 getParam<unsigned int>(
"pm_radiation_l_max_its");
594 {
"pm_radiation_petsc_options",
595 "pm_radiation_petsc_options_iname",
596 "pm_radiation_petsc_options_value",
597 "pm_radiation_l_tol",
598 "pm_radiation_l_abs_tol",
599 "pm_radiation_l_max_its",
600 "pm_radiation_equation_relaxation",
601 "pm_radiation_absolute_tolerance"},
609 paramError(
"passive_scalar_equation_relaxation",
610 "The number of equation relaxation parameters does not match the number of "
611 "passive scalar equations!");
613 paramError(
"passive_scalar_absolute_tolerance",
614 "The number of absolute tolerances does not match the number of "
615 "passive scalar equations!");
619 const auto & passive_scalar_petsc_options =
620 getParam<MultiMooseEnum>(
"passive_scalar_petsc_options");
621 const auto & passive_scalar_petsc_pair_options = getParam<MooseEnumItem, std::string>(
622 "passive_scalar_petsc_options_iname",
"passive_scalar_petsc_options_value");
632 getParam<Real>(
"passive_scalar_l_tol");
634 getParam<Real>(
"passive_scalar_l_abs_tol");
636 getParam<unsigned int>(
"passive_scalar_l_max_its");
640 {
"passive_scalar_petsc_options",
641 "passive_scalar_petsc_options_iname",
642 "passive_scalar_petsc_options_value",
643 "passive_scalar_l_tol",
644 "passive_scalar_l_abs_tol",
645 "passive_scalar_l_max_its",
646 "passive_scalar_equation_relaxation",
647 "passive_scalar_absolute_tolerance"},
656 "The number of equation relaxation parameters does not match the number of "
657 "turbulence equations!");
660 "The number of absolute tolerances does not match the number of "
661 "turbulence equations!");
670 const auto & turbulence_petsc_options = getParam<MultiMooseEnum>(
"turbulence_petsc_options");
671 const auto & turbulence_petsc_pair_options = getParam<MooseEnumItem, std::string>(
672 "turbulence_petsc_options_iname",
"turbulence_petsc_options_value");
684 getParam<unsigned int>(
"turbulence_l_max_its");
688 {
"turbulence_petsc_options",
689 "turbulence_petsc_options_iname",
690 "turbulence_petsc_options_value",
692 "turbulence_l_abs_tol",
693 "turbulence_l_max_its",
694 "turbulence_equation_relaxation",
695 "turbulence_field_relaxation",
696 "turbulence_field_min_limit",
697 "turbulence_absolute_tolerance"},
707 getParam<Point>(
"pressure_pin_point"));
712 const std::vector<std::string> & dependent_parameters,
713 const bool should_be_defined)
715 for (
const auto & param : dependent_parameters)
718 "This parameter should " + std::string(should_be_defined ?
"" :
"not") +
719 " be given by the user with the corresponding " + main_parameter +
void ErrorVector unsigned int
virtual const MooseVariableFieldBase & getVariable(const THREAD_ID tid, const std::string &var_name, Moose::VarKindType expected_var_type=Moose::VarKindType::VAR_ANY, Moose::VarFieldType expected_var_field_type=Moose::VarFieldType::VAR_FIELD_ANY) const override
virtual MooseMesh & mesh() override
const InputParameters & parameters() const
void paramError(const std::string ¶m, Args... args) const
virtual unsigned int dimension() const
const std::vector< Real > _turbulence_equation_relaxation
The user-defined relaxation parameter(s) for the turbulence equation(s)
const bool _has_energy_system
Boolean for easy check if a fluid energy system shall be solved or not.
dof_id_type _pressure_pin_dof
The dof ID where the pressure needs to be pinned.
const bool _has_turbulence_systems
Boolean for easy check if a turbulence scalar systems shall be solved or not.
SIMPLESolverConfiguration _pm_radiation_linear_control
Options for the linear solver of the participating media radiation equation(s)
const std::vector< SolverSystemName > & _passive_scalar_system_names
The names of the passive scalar systems.
const std::vector< Real > _pm_radiation_absolute_tolerance
The user-defined absolute tolerance for determining the convergence in participating media radiation.
Moose::PetscSupport::PetscOptions _turbulence_petsc_options
Options which hold the petsc settings for the turbulence equation(s)
const bool _has_pm_radiation_systems
Boolean for easy check if participating media radiation systems shall be solved or not.
const std::vector< SolverSystemName > & _turbulence_system_names
The names of the turbulence systems.
const std::vector< Real > _passive_scalar_equation_relaxation
The user-defined relaxation parameter(s) for the passive scalar equation(s)
const bool _has_solid_energy_system
Boolean for easy check if a solid energy system shall be solved or not.
Moose::PetscSupport::PetscOptions _passive_scalar_petsc_options
Options which hold the petsc settings for the passive scalar equation(s)
SIMPLESolverConfiguration _pressure_linear_control
Options for the linear solver of the pressure equation.
static InputParameters validParams()
std::vector< Real > _turbulence_field_relaxation
The user-defined relaxation parameter(s) for the turbulence field(s)
const std::vector< Real > _turbulence_absolute_tolerance
The user-defined absolute tolerance for determining the convergence turbulence variables.
const std::vector< Real > _momentum_absolute_tolerance
The user-defined absolute tolerance(s) for determining the convergence in momentum.
SIMPLESolverConfiguration _solid_energy_linear_control
Options for the linear solver of the energy equation.
void setupPressurePin()
Setup pressure pin if there is need for one.
const bool _has_passive_scalar_systems
Boolean for easy check if a passive scalar systems shall be solved or not.
std::vector< Real > _turbulence_field_min_limit
The user-defined lower limit for turbulent quantities e.g. k, eps/omega, etc..
Moose::PetscSupport::PetscOptions _pm_radiation_petsc_options
Options which hold the petsc settings for the participating media radiation equation(s)
const std::vector< SolverSystemName > & _pm_radiation_system_names
The names of the participating media radiation systems.
Moose::PetscSupport::PetscOptions _momentum_petsc_options
Options which hold the petsc settings for the momentum equation.
SIMPLESolveBase(Executioner &ex)
SIMPLESolverConfiguration _energy_linear_control
Options for the linear solver of the energy equation.
Moose::PetscSupport::PetscOptions _solid_energy_petsc_options
Options which hold the petsc settings for the fluid energy equation.
Moose::PetscSupport::PetscOptions _pressure_petsc_options
Options which hold the petsc settings for the pressure equation.
void checkDependentParameterError(const std::string &main_parameter, const std::vector< std::string > &dependent_parameters, const bool should_be_defined)
const std::vector< Real > _passive_scalar_absolute_tolerance
The user-defined absolute tolerance for determining the convergence in passive scalars.
SIMPLESolverConfiguration _turbulence_linear_control
Options for the linear solver of the turbulence equation(s)
const std::vector< SolverSystemName > & _momentum_system_names
The names of the momentum systems.
SIMPLESolverConfiguration _momentum_linear_control
Options for the linear solver of the momentum equation.
SIMPLESolverConfiguration _passive_scalar_linear_control
Options for the linear solver of the passive scalar equation(s)
const bool _pin_pressure
If the pressure needs to be pinned.
Moose::PetscSupport::PetscOptions _energy_petsc_options
Options which hold the petsc settings for the fluid energy equation.
const std::vector< Real > _pm_radiation_equation_relaxation
The user-defined relaxation parameter(s) for the participating media radiation equation(s)
std::map< std::string, int > int_valued_data
std::map< std::string, Real > real_valued_data
MultiMooseEnum getCommonPetscFlags()
MultiMooseEnum getCommonPetscKeys()
void addPetscFlagsToPetscOptions(const MultiMooseEnum &petsc_flags, std::string prefix, const ParallelParamObject ¶m_object, PetscOptions &petsc_options)
void addPetscPairsToPetscOptions(const std::vector< std::pair< MooseEnumItem, std::string > > &petsc_pair_options, const unsigned int mesh_dimension, std::string prefix, const ParallelParamObject ¶m_object, PetscOptions &petsc_options)
dof_id_type findPointDoFID(const MooseVariableFieldBase &variable, const MooseMesh &mesh, const Point &point)
Find the ID of the degree of freedom which corresponds to the variable and a given point on the mesh.
The following methods are specializations for using the Parallel::packed_range_* routines for a vecto...