GRINS-0.8.0
physics_naming.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------bl-
2 //--------------------------------------------------------------------------
3 //
4 // GRINS - General Reacting Incompressible Navier-Stokes
5 //
6 // Copyright (C) 2014-2017 Paul T. Bauman, Roy H. Stogner
7 // Copyright (C) 2010-2013 The PECOS Development Team
8 //
9 // This library is free software; you can redistribute it and/or
10 // modify it under the terms of the Version 2.1 GNU Lesser General
11 // Public License as published by the Free Software Foundation.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Lesser General Public License for more details.
17 //
18 // You should have received a copy of the GNU Lesser General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc. 51 Franklin Street, Fifth Floor,
21 // Boston, MA 02110-1301 USA
22 //
23 //-----------------------------------------------------------------------el-
24 
25 
26 #ifndef GRINS_PHYSICS_NAMING_H
27 #define GRINS_PHYSICS_NAMING_H
28 
29 #include <string>
30 
31 namespace GRINS
32 {
33  typedef std::string PhysicsName;
34 
36  {
37  public:
38 
39  static void set_suffix( const std::string& suff )
40  { PhysicsNaming::suffix() = suff; }
41 
42  static void clear_suffix()
43  { PhysicsNaming::suffix().clear(); }
44 
46 
47  static void extract_physics_and_suffix( const std::string& full_name,
48  std::string& physics_name,
49  std::string& suffix );
50 
52 
54  static std::string extract_physics( const std::string& full_name );
55 
57 
60  static std::string extract_suffix( const std::string& full_name );
61 
62  static PhysicsName stokes()
63  { return "Stokes"+suffix(); }
64 
65  static PhysicsName incompressible_navier_stokes()
66  { return "IncompressibleNavierStokes"+suffix(); }
67 
69  { return "IncompressibleNavierStokesAdjointStabilization"+suffix(); }
70 
72  { return "IncompressibleNavierStokesSPGSMStabilization"+suffix(); }
73 
74  static PhysicsName velocity_drag()
75  { return "VelocityDrag"+suffix(); }
76 
77  static PhysicsName velocity_drag_adjoint_stab()
78  { return "VelocityDragAdjointStabilization"+suffix(); }
79 
80  static PhysicsName velocity_penalty()
81  { return "VelocityPenalty"+suffix(); }
82 
83  static PhysicsName velocity_penalty2()
84  { return "VelocityPenalty2"+suffix(); }
85 
86  static PhysicsName velocity_penalty3()
87  { return "VelocityPenalty3"+suffix(); }
88 
89  static PhysicsName velocity_penalty_adjoint_stab()
90  { return "VelocityPenaltyAdjointStabilization"+suffix(); }
91 
92  static PhysicsName velocity_penalty2_adjoint_stab()
93  { return "VelocityPenalty2AdjointStabilization"+suffix(); }
94 
95  static PhysicsName velocity_penalty3_adjoint_stab()
96  { return "VelocityPenalty3AdjointStabilization"+suffix(); }
97 
98  static PhysicsName parsed_velocity_source()
99  { return "ParsedVelocitySource"+suffix(); }
100 
102  { return "ParsedVelocitySourceAdjointStabilization"+suffix(); }
103 
104  static PhysicsName averaged_fan()
105  { return "AveragedFan"+suffix(); }
106 
107  static PhysicsName averaged_fan_adjoint_stab()
108  { return "AveragedFanAdjointStabilization"+suffix(); }
109 
110  static PhysicsName averaged_turbine()
111  { return "AveragedTurbine"+suffix(); }
112 
113  static PhysicsName spalart_allmaras()
114  { return "SpalartAllmaras"+suffix(); }
115 
116  static PhysicsName spalart_allmaras_spgsm_stab()
117  { return "SpalartAllmarasSPGSMStabilization"+suffix(); }
118 
119  static PhysicsName scalar_ode()
120  { return "ScalarODE"+suffix(); }
121 
122  static PhysicsName heat_conduction()
123  { return "HeatConduction"+suffix(); }
124 
125  static PhysicsName heat_transfer()
126  { return "HeatTransfer"+suffix(); }
127 
128  static PhysicsName heat_transfer_adjoint_stab()
129  { return "HeatTransferAdjointStabilization"+suffix(); }
130 
131  static PhysicsName heat_transfer_spgsm_stab()
132  { return "HeatTransferSPGSMStabilization"+suffix(); }
133 
134  static PhysicsName axisymmetric_heat_transfer()
135  { return "AxisymmetricHeatTransfer"+suffix(); }
136 
137  static PhysicsName boussinesq_buoyancy()
138  { return "BoussinesqBuoyancy"+suffix(); }
139 
140  static PhysicsName boussinesq_buoyancy_adjoint_stab()
141  { return "BoussinesqBuoyancyAdjointStabilization"+suffix(); }
142 
143  static PhysicsName boussinesq_buoyancy_spgsm_stab()
144  { return "BoussinesqBuoyancySPGSMStabilization"+suffix(); }
145 
146  static PhysicsName axisymmetric_boussinesq_buoyancy()
147  { return "AxisymmetricBoussinesqBuoyancy"+suffix(); }
148 
149  static PhysicsName low_mach_navier_stokes()
150  { return "LowMachNavierStokes"+suffix(); }
151 
153  { return "LowMachNavierStokesBraackStabilization"+suffix(); }
154 
156  { return "LowMachNavierStokesSPGSMStabilization"+suffix(); }
157 
158  static PhysicsName low_mach_navier_stokes_vms_stab()
159  { return "LowMachNavierStokesVMSStabilization"+suffix(); }
160 
161  static PhysicsName reacting_low_mach_navier_stokes()
162  { return "ReactingLowMachNavierStokes"+suffix(); }
163 
165  { return "ReactingLowMachNavierStokesSPGSMStabilization"+suffix(); }
166 
167  static PhysicsName elastic_membrane()
168  { return "ElasticMembrane"+suffix(); }
169 
170  static PhysicsName elastic_cable()
171  { return "ElasticCable"+suffix(); }
172 
173  static PhysicsName elastic_cable_rayleigh_damping()
174  { return "ElasticCableRayleighDamping"+suffix(); }
175 
177  { return "ElasticMembraneRayleighDamping"+suffix(); }
178 
180  { return "ElasticMembraneConstantPressure"+suffix(); }
181 
182  static PhysicsName elastic_cable_constant_gravity()
183  { return "ElasticCableConstantGravity"+suffix(); }
184 
185  static PhysicsName constant_source_term()
186  { return "ConstantSourceTerm"+suffix(); }
187 
188  static PhysicsName parsed_source_term()
189  { return "ParsedSourceTerm"+suffix(); }
190 
191  static PhysicsName convection_diffusion()
192  { return "ConvectionDiffusion"+suffix(); }
193 
194  static PhysicsName variable_pinning()
195  { return "VariablePinning"+suffix(); }
196 
197  private:
198 
199  static std::string physics_name_delimiter()
200  { return ":"; }
201 
202  static std::string& suffix()
203  {
204  static std::string _suffix;
205  return _suffix;
206  };
207 
208  };
209 
210 }
211 
212 #endif //GRINS_PHYSICS_NAMING_H
static PhysicsName velocity_penalty_adjoint_stab()
static PhysicsName heat_transfer_adjoint_stab()
static PhysicsName heat_transfer()
static PhysicsName boussinesq_buoyancy_adjoint_stab()
static PhysicsName elastic_cable_rayleigh_damping()
static PhysicsName boussinesq_buoyancy_spgsm_stab()
static PhysicsName scalar_ode()
static PhysicsName heat_transfer_spgsm_stab()
static PhysicsName averaged_fan()
static PhysicsName reacting_low_mach_navier_stokes()
static PhysicsName parsed_velocity_source()
static PhysicsName velocity_drag_adjoint_stab()
static PhysicsName spalart_allmaras()
static PhysicsName incompressible_navier_stokes_adjoint_stab()
static PhysicsName low_mach_navier_stokes_braack_stab()
static PhysicsName axisymmetric_boussinesq_buoyancy()
static PhysicsName low_mach_navier_stokes()
static PhysicsName elastic_cable()
static PhysicsName velocity_penalty3_adjoint_stab()
static PhysicsName velocity_drag()
static PhysicsName elastic_membrane_constant_pressure()
static PhysicsName parsed_velocity_source_adjoint_stab()
static PhysicsName spalart_allmaras_spgsm_stab()
GRINS namespace.
static PhysicsName elastic_membrane()
static PhysicsName variable_pinning()
static std::string extract_physics(const std::string &full_name)
Extract the physics name from the full_name.
static void extract_physics_and_suffix(const std::string &full_name, std::string &physics_name, std::string &suffix)
Extract the physics name and the suffix from the full_name.
static PhysicsName velocity_penalty()
static PhysicsName velocity_penalty2()
static PhysicsName elastic_cable_constant_gravity()
static PhysicsName low_mach_navier_stokes_spgsm_stab()
std::string PhysicsName
static PhysicsName boussinesq_buoyancy()
static PhysicsName convection_diffusion()
static std::string & suffix()
static PhysicsName parsed_source_term()
static PhysicsName averaged_turbine()
static PhysicsName incompressible_navier_stokes()
static PhysicsName constant_source_term()
static PhysicsName stokes()
static PhysicsName axisymmetric_heat_transfer()
static PhysicsName reacting_low_mach_navier_stokes_spgsm_stab()
static PhysicsName velocity_penalty2_adjoint_stab()
static PhysicsName averaged_fan_adjoint_stab()
static PhysicsName heat_conduction()
static std::string extract_suffix(const std::string &full_name)
Extract the suffix from the full_name.
static PhysicsName low_mach_navier_stokes_vms_stab()
static std::string physics_name_delimiter()
static void clear_suffix()
static PhysicsName elastic_membrane_rayleigh_damping()
static void set_suffix(const std::string &suff)
static PhysicsName velocity_penalty3()
static PhysicsName incompressible_navier_stokes_spgsm_stab()

Generated on Tue Dec 19 2017 12:47:28 for GRINS-0.8.0 by  doxygen 1.8.9.1