[P]arallel [Hi]gh-order [Li]brary for [P]DEs  Latest
Parallel High-Order Library for PDEs through hp-adaptive Discontinuous Galerkin methods
parameters_navier_stokes.cpp
1 #include "parameters/parameters_navier_stokes.h"
2 
3 namespace PHiLiP {
4 namespace Parameters {
5 
6 void NavierStokesParam::declare_parameters (dealii::ParameterHandler &prm)
7 {
8  prm.enter_subsection("navier_stokes");
9  {
10  prm.declare_entry("prandtl_number", "0.72",
11  dealii::Patterns::Double(1e-15, dealii::Patterns::Double::max_double_value),
12  "Prandlt number. Default value is 0.72. "
13  "NOTE: Must be consitent with temperature_inf.");
14  prm.declare_entry("reynolds_number_inf", "10000000.0",
15  dealii::Patterns::Double(1e-15, dealii::Patterns::Double::max_double_value),
16  "Farfield Reynolds number");
17  prm.declare_entry("temperature_inf", "273.15",
18  dealii::Patterns::Double(1e-15, dealii::Patterns::Double::max_double_value),
19  "Farfield temperature in degree Kelvin [K]. Default value is 273.15K. "
20  "NOTE: Must be consistent with specified Prandtl number.");
21  prm.declare_entry("nondimensionalized_isothermal_wall_temperature", "1.0",
22  dealii::Patterns::Double(1e-15, dealii::Patterns::Double::max_double_value),
23  "Nondimensionalized isothermal wall temperature.");
24  prm.declare_entry("thermal_boundary_condition_type", "adiabatic",
25  dealii::Patterns::Selection("adiabatic|isothermal"),
26  "Type of thermal boundary conditions to be imposed. "
27  "Choices are <adiabatic|isothermal>.");
28  prm.declare_entry("use_constant_viscosity","false",
29  dealii::Patterns::Bool(),
30  "Set as false by default (i.e. use Sutherland's law of viscosity). "
31  "If true, uses a constant viscosity.");
32  prm.declare_entry("nondimensionalized_constant_viscosity","1.0",
33  dealii::Patterns::Double(1e-15, dealii::Patterns::Double::max_double_value),
34  "Nondimensionalized constant viscosity value. Default is 1.0.");
35  }
36  prm.leave_subsection();
37 }
38 
39 void NavierStokesParam::parse_parameters (dealii::ParameterHandler &prm)
40 {
41  prm.enter_subsection("navier_stokes");
42  {
43  prandtl_number = prm.get_double("prandtl_number");
44  reynolds_number_inf = prm.get_double("reynolds_number_inf");
45  temperature_inf = prm.get_double("temperature_inf");
46  nondimensionalized_isothermal_wall_temperature = prm.get_double("nondimensionalized_isothermal_wall_temperature");
47 
48  const std::string thermal_boundary_condition_type_string = prm.get("thermal_boundary_condition_type");
49  if (thermal_boundary_condition_type_string == "adiabatic") thermal_boundary_condition_type = ThermalBoundaryCondition::adiabatic;
50  if (thermal_boundary_condition_type_string == "isothermal") thermal_boundary_condition_type = ThermalBoundaryCondition::isothermal;
51 
52  use_constant_viscosity = prm.get_bool("use_constant_viscosity");
53  nondimensionalized_constant_viscosity = prm.get_double("nondimensionalized_constant_viscosity");
54  }
55  prm.leave_subsection();
56 }
57 
58 } // Parameters namespace
59 } // PHiLiP namespace
Files for the baseline physics.
Definition: ADTypes.hpp:10
double nondimensionalized_constant_viscosity
Flag for using constant viscosity.
double reynolds_number_inf
Farfield Reynolds number.
void parse_parameters(dealii::ParameterHandler &prm)
Parses input file and sets the variables.
double temperature_inf
Farfield temperature in degree Kelvin [K].
static void declare_parameters(dealii::ParameterHandler &prm)
Declares the possible variables and sets the defaults.
double nondimensionalized_isothermal_wall_temperature
Nondimensionalized isothermal wall temperature.
ThermalBoundaryCondition thermal_boundary_condition_type
Store thermal boundary condition type.