Documentation 6b54b78464
Loading...
Searching...
No Matches
CTurbSASolver.hpp
Go to the documentation of this file.
1/*!
2 * \file CTurbSASolver.hpp
3 * \brief Headers of the CTurbSASolver class
4 * \author A. Bueno.
5 * \version 8.5.0 "Harrier"
6 *
7 * SU2 Project Website: https://su2code.github.io
8 *
9 * The SU2 Project is maintained by the SU2 Foundation
10 * (http://su2foundation.org)
11 *
12 * Copyright 2012-2026, SU2 Contributors (cf. AUTHORS.md)
13 *
14 * SU2 is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU Lesser General Public
16 * License as published by the Free Software Foundation; either
17 * version 2.1 of the License, or (at your option) any later version.
18 *
19 * SU2 is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
22 * Lesser General Public License for more details.
23 *
24 * You should have received a copy of the GNU Lesser General Public
25 * License along with SU2. If not, see <http://www.gnu.org/licenses/>.
26 */
27
28
29#pragma once
30
31#include "CTurbSolver.hpp"
32
33/*!
34 * \class CTurbSASolver
35 * \brief Main class for defining the turbulence model solver.
36 * \ingroup Turbulence_Model
37 * \author A. Bueno.
38 */
39
40class CTurbSASolver final : public CTurbSolver {
41private:
42
43 su2double nu_tilde_Engine[4] = {0.0};
44 su2double nu_tilde_ActDisk[4] = {0.0};
45
46 /*!
47 * \brief A virtual member.
48 * \param[in] solver - Solver container
49 * \param[in] geometry - Geometrical definition.
50 * \param[in] config - Definition of the particular problem.
51 */
52 void SetDES_LengthScale(CSolver** solver,
53 CGeometry *geometry,
54 CConfig *config);
55
56 /*!
57 * \brief Mark the points that are located inside the box where the Stochastic Backscatter Model is active.
58 * \param[in] config - Definition of the particular problem.
59 * \param[in] geometry - Geometrical definition.
60 */
61 void SetBackscatterInBox(CConfig *config, CGeometry* geometry);
62
63 /*!
64 * \brief Update the source terms of the stochastic equations (Stochastic Backscatter Model).
65 * \param[in] config - Definition of the particular problem.
66 * \param[in] geometry - Geometrical definition.
67 */
68 void SetLangevinSourceTerms(CConfig *config, CGeometry* geometry);
69
70 /*!
71 * \brief Apply Laplacian smoothing to the source terms in Langevin equations (Stochastic Backscatter Model).
72 * \param[in] config - Definition of the particular problem.
73 * \param[in] geometry - Geometrical definition.
74 */
75 void SmoothLangevinSourceTerms(CConfig* config, CGeometry* geometry);
76
77 /*!
78 * \brief Compute nu tilde from the wall functions.
79 * \param[in] geometry - Geometrical definition of the problem.
80 * \param[in] solver_container - Container vector with all the solutions.
81 * \param[in] conv_numerics - Description of the numerical method.
82 * \param[in] visc_numerics - Description of the numerical method.
83 * \param[in] config - Definition of the particular problem.
84 * \param[in] val_marker - Surface marker where the boundary condition is applied.
85 */
86 void SetTurbVars_WF(CGeometry *geometry,
87 CSolver **solver_container,
88 const CConfig *config,
89 unsigned short val_marker);
90
91 /*!
92 * \brief Compute a suitable under-relaxation parameter to limit the change in the solution variables over
93 * a nonlinear iteration for stability.
94 * \param[in] config - Definition of the particular problem.
95 */
96 void ComputeUnderRelaxationFactor(CSolver** solver_container, const CConfig *config) final;
97
98 /*!
99 * \brief Resolve the compile-time parameters of CScalarFlux_SA and run one of this solver's
100 * boundaries through the shared boundary flux pass.
101 * \param[in] opt - Flags of the boundary, from one of ScalarFluxOptions' named constructors.
102 */
103 void BoundaryFlux(CGeometry* geometry, CSolver** solver_container, CConfig* config, const ScalarFluxOptions& opt,
104 unsigned short val_marker);
105
106public:
107 /*!
108 * \brief Constructor.
109 * \param[in] geometry - Geometrical definition of the problem.
110 * \param[in] config - Definition of the particular problem.
111 * \param[in] iMesh - Index of the mesh in multigrid computations.
112 * \param[in] FluidModel
113 */
114 CTurbSASolver(CGeometry *geometry, CConfig *config, const CSolver* flow_solver, unsigned short iMesh,
115 CFluidModel* FluidModel);
116
117 /*!
118 * \brief Destructor of the class.
119 */
120 ~CTurbSASolver() = default;
121
122 /*!
123 * \brief Restart residual and compute gradients.
124 * \param[in] geometry - Geometrical definition of the problem.
125 * \param[in] solver_container - Container vector with all the solutions.
126 * \param[in] config - Definition of the particular problem.
127 * \param[in] iMesh - Index of the mesh in multigrid computations.
128 * \param[in] iRKStep - Current step of the Runge-Kutta iteration.
129 * \param[in] RunTime_EqSystem - System of equations which is going to be solved.
130 * \param[in] Output - boolean to determine whether to print output.
131 */
132 void Preprocessing(CGeometry *geometry,
133 CSolver **solver_container,
134 CConfig *config,
135 unsigned short iMesh,
136 unsigned short iRKStep,
137 unsigned short RunTime_EqSystem,
138 bool Output) override;
139
140 /*!
141 * \brief A virtual member.
142 * \param[in] geometry - Geometrical definition of the problem.
143 * \param[in] solver_container - Container vector with all the solutions.
144 * \param[in] config - Definition of the particular problem.
145 */
146 void Postprocessing(CGeometry *geometry,
147 CSolver **solver_container,
148 CConfig *config,
149 unsigned short iMesh) override;
150
151 /*!
152 * \brief Compute the spatial integration using the CScalarFlux_SA edge kernel, which computes
153 * and writes both the convective and the diffusive term of every edge.
154 * \param[in] geometry - Geometrical definition of the problem.
155 * \param[in] solver_container - Container vector with all the solutions.
156 * \param[in] numerics_container - Unused, kept only for the boundary conditions.
157 * \param[in] config - Definition of the particular problem.
158 * \param[in] iMesh - Index of the mesh in multigrid computations.
159 */
160 void Upwind_Residual(CGeometry* geometry, CSolver** solver_container, CNumerics** numerics_container,
161 CConfig* config, unsigned short iMesh) override;
162
163 /*!
164 * \brief Impose the Far Field boundary condition, via the CScalarFlux_SA edge kernel.
165 * \param[in] geometry - Geometrical definition of the problem.
166 * \param[in] solver_container - Container vector with all the solutions.
167 * \param[in] conv_numerics - Unused, kept only for the boundary condition dispatch.
168 * \param[in] visc_numerics - Unused, kept only for the boundary condition dispatch.
169 * \param[in] config - Definition of the particular problem.
170 * \param[in] val_marker - Surface marker where the boundary condition is applied.
171 */
172 void BC_Far_Field(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics,
173 CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override;
174
175 /*!
176 * \brief Source term computation.
177 * \param[in] geometry - Geometrical definition of the problem.
178 * \param[in] solver_container - Container vector with all the solutions.
179 * \param[in] numerics_container - Description of the numerical method.
180 * \param[in] config - Definition of the particular problem.
181 * \param[in] iMesh - Index of the mesh in multigrid computations.
182 */
183 void Source_Residual(CGeometry *geometry,
184 CSolver **solver_container,
185 CNumerics **numerics_container,
186 CConfig *config,
187 unsigned short iMesh) override;
188
189 /*!
190 * \brief Source term computation.
191 * \param[in] geometry - Geometrical definition of the problem.
192 * \param[in] solver_container - Container vector with all the solutions.
193 * \param[in] numerics - Description of the numerical method.
194 * \param[in] config - Definition of the particular problem.
195 * \param[in] iMesh - Index of the mesh in multigrid computations.
196 */
197 void Source_Template(CGeometry *geometry,
198 CSolver **solver_container,
199 CNumerics *numerics,
200 CConfig *config,
201 unsigned short iMesh) override;
202
203 /*!
204 * \brief Impose the Navier-Stokes wall boundary condition.
205 * \param[in] geometry - Geometrical definition of the problem.
206 * \param[in] solver_container - Container vector with all the solutions.
207 * \param[in] conv_numerics - Description of the numerical method.
208 * \param[in] visc_numerics - Description of the numerical method.
209 * \param[in] config - Definition of the particular problem.
210 * \param[in] val_marker - Surface marker where the boundary condition is applied.
211 */
212 void BC_HeatFlux_Wall(CGeometry *geometry,
213 CSolver **solver_container,
214 CNumerics *conv_numerics,
215 CNumerics *visc_numerics,
216 CConfig *config,
217 unsigned short val_marker) override;
218
219 /*!
220 * \brief Impose the Navier-Stokes wall boundary condition.
221 * \param[in] geometry - Geometrical definition of the problem.
222 * \param[in] solver_container - Container vector with all the solutions.
223 * \param[in] conv_numerics - Description of the numerical method.
224 * \param[in] visc_numerics - Description of the numerical method.
225 * \param[in] config - Definition of the particular problem.
226 * \param[in] val_marker - Surface marker where the boundary condition is applied.
227 */
228 void BC_Isothermal_Wall(CGeometry *geometry,
229 CSolver **solver_container,
230 CNumerics *conv_numerics,
231 CNumerics *visc_numerics,
232 CConfig *config,
233 unsigned short val_marker) override;
234
235 /*!
236 * \brief Impose the inlet boundary condition.
237 * \param[in] geometry - Geometrical definition of the problem.
238 * \param[in] solver_container - Container vector with all the solutions.
239 * \param[in] conv_numerics - Description of the numerical method.
240 * \param[in] visc_numerics - Description of the numerical method.
241 * \param[in] config - Definition of the particular problem.
242 * \param[in] val_marker - Surface marker where the boundary condition is applied.
243 */
244 void BC_Inlet(CGeometry *geometry,
245 CSolver **solver_container,
246 CNumerics *conv_numerics,
247 CNumerics *visc_numerics,
248 CConfig *config,
249 unsigned short val_marker) override;
250
251 /*!
252 * \brief Impose the inlet boundary condition.
253 * \param[in] geometry - Geometrical definition of the problem.
254 * \param[in] solver_container - Container vector with all the solutions.
255 * \param[in] conv_numerics - Description of the numerical method.
256 * \param[in] visc_numerics - Description of the numerical method.
257 * \param[in] config - Definition of the particular problem.
258 * \param[in] val_marker - Surface marker where the boundary condition is applied.
259 */
260 void BC_Inlet_Turbo(CGeometry *geometry,
261 CSolver **solver_container,
262 CNumerics *conv_numerics,
263 CNumerics *visc_numerics,
264 CConfig *config,
265 unsigned short val_marker) override;
266
267 /*!
268 * \brief Impose the inlet boundary condition.
269 * \param[in] geometry - Geometrical definition of the problem.
270 * \param[in] solver_container - Container vector with all the solutions.
271 * \param[in] conv_numerics - Description of the numerical method.
272 * \param[in] visc_numerics - Description of the numerical method.
273 * \param[in] config - Definition of the particular problem.
274 * \param[in] val_marker - Surface marker where the boundary condition is applied.
275 */
276 void BC_Inlet_MixingPlane(CGeometry *geometry,
277 CSolver **solver_container,
278 CNumerics *conv_numerics,
279 CNumerics *visc_numerics,
280 CConfig *config,
281 unsigned short val_marker) override;
282
283 /*!
284 * \brief Impose the outlet boundary condition.
285 * \param[in] geometry - Geometrical definition of the problem.
286 * \param[in] solver_container - Container vector with all the solutions.
287 * \param[in] conv_numerics - Description of the numerical method.
288 * \param[in] visc_numerics - Description of the numerical method.
289 * \param[in] config - Definition of the particular problem.
290 * \param[in] val_marker - Surface marker where the boundary condition is applied.
291 */
292 void BC_Outlet(CGeometry *geometry,
293 CSolver **solver_container,
294 CNumerics *conv_numerics,
295 CNumerics *visc_numerics,
296 CConfig *config,
297 unsigned short val_marker) override;
298
299 /*!
300 * \brief Impose the engine inflow boundary condition.
301 * \param[in] geometry - Geometrical definition of the problem.
302 * \param[in] solver_container - Container vector with all the solutions.
303 * \param[in] conv_numerics - Description of the numerical method.
304 * \param[in] visc_numerics - Description of the numerical method.
305 * \param[in] config - Definition of the particular problem.
306 * \param[in] val_marker - Surface marker where the boundary condition is applied.
307 */
308 void BC_Engine_Inflow(CGeometry *geometry,
309 CSolver **solver_container,
310 CNumerics *conv_numerics,
311 CNumerics *visc_numerics,
312 CConfig *config,
313 unsigned short val_marker) override;
314
315 /*!
316 * \brief Impose the engine exhaust boundary condition.
317 * \param[in] geometry - Geometrical definition of the problem.
318 * \param[in] solver_container - Container vector with all the solutions.
319 * \param[in] conv_numerics - Description of the numerical method.
320 * \param[in] visc_numerics - Description of the numerical method.
321 * \param[in] config - Definition of the particular problem.
322 * \param[in] val_marker - Surface marker where the boundary condition is applied.
323 */
324 void BC_Engine_Exhaust(CGeometry *geometry,
325 CSolver **solver_container,
326 CNumerics *conv_numerics,
327 CNumerics *visc_numerics,
328 CConfig *config,
329 unsigned short val_marker) override;
330
331 /*!
332 * \brief Impose an actuator disk inlet boundary condition.
333 * \param[in] geometry - Geometrical definition of the problem.
334 * \param[in] solver_container - Container vector with all the solutions.
335 * \param[in] conv_numerics - Description of the numerical method.
336 * \param[in] visc_numerics - Description of the numerical method.
337 * \param[in] config - Definition of the particular problem.
338 * \param[in] val_marker - Surface marker where the boundary condition is applied.
339 */
340 void BC_ActDisk_Inlet(CGeometry *geometry,
341 CSolver **solver_container,
342 CNumerics *conv_numerics,
343 CNumerics *visc_numerics,
344 CConfig *config,
345 unsigned short val_marker) override;
346
347 /*!
348 * \brief Impose an actuator disk outlet boundary condition.
349 * \param[in] geometry - Geometrical definition of the problem.
350 * \param[in] solver_container - Container vector with all the solutions.
351 * \param[in] conv_numerics - Description of the numerical method.
352 * \param[in] visc_numerics - Description of the numerical method.
353 * \param[in] config - Definition of the particular problem.
354 * \param[in] val_marker - Surface marker where the boundary condition is applied.
355 */
356 void BC_ActDisk_Outlet(CGeometry *geometry,
357 CSolver **solver_container,
358 CNumerics *conv_numerics,
359 CNumerics *visc_numerics,
360 CConfig *config,
361 unsigned short val_marker) override;
362
363 /*!
364 * \brief Impose an actuator disk inlet boundary condition.
365 * \param[in] geometry - Geometrical definition of the problem.
366 * \param[in] solver_container - Container vector with all the solutions.
367 * \param[in] conv_numerics - Description of the numerical method.
368 * \param[in] visc_numerics - Description of the numerical method.
369 * \param[in] config - Definition of the particular problem.
370 * \param[in] val_marker - Surface marker where the boundary condition is applied.
371 * \param[in] val_inlet_surface - Boolean for whether val_marker is an inlet
372 */
373 void BC_ActDisk(CGeometry *geometry,
374 CSolver **solver_container,
375 CNumerics *conv_numerics,
376 CNumerics *visc_numerics,
377 CConfig *config,
378 unsigned short val_marker,
379 bool val_inlet_surface) override;
380
381 /*!
382 * \brief Impose the fluid interface (sliding mesh) boundary condition, via the CScalarFlux_SA
383 * edge kernel. The convective term is a per-donor weighted average, computed in the same
384 * pass that fills the ghost row of each donor; the diffusive term is computed once per
385 * vertex, after the donor loop, from the ghost state the last donor left behind.
386 * \param[in] geometry - Geometrical definition of the problem.
387 * \param[in] solver_container - Container vector with all the solutions.
388 * \param[in] conv_numerics - Unused, kept only for the boundary condition dispatch.
389 * \param[in] visc_numerics - Unused, kept only for the boundary condition dispatch.
390 * \param[in] config - Definition of the particular problem.
391 */
392 void BC_Fluid_Interface(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics,
393 CNumerics *visc_numerics, CConfig *config) override;
394
395 /*!
396 * \brief Store of a set of provided inlet profile values at a vertex.
397 * \param[in] val_inlet - vector containing the inlet values for the current vertex.
398 * \param[in] iMarker - Surface marker where the coefficient is computed.
399 * \param[in] iVertex - Vertex of the marker <i>iMarker</i> where the inlet is being set.
400 */
401 void SetInletAtVertex(const su2double *val_inlet,
402 unsigned short iMarker,
403 unsigned long iVertex) override;
404
405 /*!
406 * \brief Get the set of values imposed at an inlet.
407 * \param[in] iMarker - Index of the surface marker.
408 * \param[in] iVertex - Vertex of the marker <i>iMarker</i> where the inlet is being set.
409 * \param[in] geometry - Geometrical definition of the problem.
410 * \param[in,out] val_inlet - vector returning the inlet values for the current vertex.
411 * \return Value of the face area at the vertex.
412 */
413 su2double GetInletAtVertex(unsigned short iMarker, unsigned long iVertex,
414 const CGeometry* geometry, su2double* val_inlet) const override;
415
416 /*!
417 * \brief Set a uniform inlet profile
418 *
419 * The values at the inlet are set to match the values specified for
420 * inlets in the configuration file.
421 *
422 * \param[in] config - Definition of the particular problem.
423 * \param[in] iMarker - Surface marker where the coefficient is computed.
424 */
425 void SetUniformInlet(const CConfig* config, unsigned short iMarker) override;
426
427 /*!
428 * \brief Get the value of nu tilde at the far-field.
429 * \return Value of nu tilde at the far-field.
430 */
431 inline su2double GetNuTilde_Inf(void) const override { return Solution_Inf[0]; }
432
433};
Headers of the CTurbSolver class.
Main class for defining the problem; basically this class reads the configuration file,...
Definition CConfig.hpp:64
Main class for defining the Thermo-Physical Model.
Definition CFluidModel.hpp:47
Parent class for defining the geometry of the problem (complete geometry, multigrid agglomerated geom...
Definition CGeometry.hpp:75
Class for defining the numerical methods.
Definition CNumerics.hpp:48
su2double Solution_Inf[MAXNVAR]
Far-field solution.
Definition CScalarSolver.hpp:73
Definition CSolver.hpp:71
Main class for defining the turbulence model solver.
Definition CTurbSASolver.hpp:40
void BC_Inlet_MixingPlane(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose the inlet boundary condition.
Definition CTurbSASolver.cpp:814
void BC_ActDisk_Inlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose an actuator disk inlet boundary condition.
Definition CTurbSASolver.cpp:728
void BC_Fluid_Interface(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config) override
Impose the fluid interface (sliding mesh) boundary condition, via the CScalarFlux_SA edge kernel....
Definition CTurbSASolver.cpp:914
void BC_Outlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose the outlet boundary condition.
Definition CTurbSASolver.cpp:658
void Preprocessing(CGeometry *geometry, CSolver **solver_container, CConfig *config, unsigned short iMesh, unsigned short iRKStep, unsigned short RunTime_EqSystem, bool Output) override
Restart residual and compute gradients.
Definition CTurbSASolver.cpp:207
void BC_ActDisk_Outlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose an actuator disk outlet boundary condition.
Definition CTurbSASolver.cpp:735
void Source_Template(CGeometry *geometry, CSolver **solver_container, CNumerics *numerics, CConfig *config, unsigned short iMesh) override
Source term computation.
Definition CTurbSASolver.cpp:525
void BC_Isothermal_Wall(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose the Navier-Stokes wall boundary condition.
Definition CTurbSASolver.cpp:603
void BC_Engine_Inflow(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose the engine inflow boundary condition.
Definition CTurbSASolver.cpp:682
~CTurbSASolver()=default
Destructor of the class.
void BC_Engine_Exhaust(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose the engine exhaust boundary condition.
Definition CTurbSASolver.cpp:706
void BC_ActDisk(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker, bool val_inlet_surface) override
Impose an actuator disk inlet boundary condition.
Definition CTurbSASolver.cpp:742
void Upwind_Residual(CGeometry *geometry, CSolver **solver_container, CNumerics **numerics_container, CConfig *config, unsigned short iMesh) override
Compute the spatial integration using the CScalarFlux_SA edge kernel, which computes and writes both ...
Definition CTurbSASolver.cpp:346
void BC_Inlet_Turbo(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose the inlet boundary condition.
Definition CTurbSASolver.cpp:858
void BC_Inlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose the inlet boundary condition.
Definition CTurbSASolver.cpp:611
void SetInletAtVertex(const su2double *val_inlet, unsigned short iMarker, unsigned long iVertex) override
Store of a set of provided inlet profile values at a vertex.
Definition CTurbSASolver.cpp:1531
su2double GetNuTilde_Inf(void) const override
Get the value of nu tilde at the far-field.
Definition CTurbSASolver.hpp:431
su2double GetInletAtVertex(unsigned short iMarker, unsigned long iVertex, const CGeometry *geometry, su2double *val_inlet) const override
Get the set of values imposed at an inlet.
Definition CTurbSASolver.cpp:1540
void Source_Residual(CGeometry *geometry, CSolver **solver_container, CNumerics **numerics_container, CConfig *config, unsigned short iMesh) override
Source term computation.
Definition CTurbSASolver.cpp:385
void SetUniformInlet(const CConfig *config, unsigned short iMarker) override
Set a uniform inlet profile.
Definition CTurbSASolver.cpp:1553
void BC_Far_Field(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose the Far Field boundary condition, via the CScalarFlux_SA edge kernel.
Definition CTurbSASolver.cpp:366
void BC_HeatFlux_Wall(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose the Navier-Stokes wall boundary condition.
Definition CTurbSASolver.cpp:530
void Postprocessing(CGeometry *geometry, CSolver **solver_container, CConfig *config, unsigned short iMesh) override
A virtual member.
Definition CTurbSASolver.cpp:259
Main class for defining the turbulence model solver.
Definition CTurbSolver.hpp:40
passivedouble su2double
Definition code_config.hpp:181
Loop invariant flags for a scalar edge flux, built once outside the edge loop so the compiler can uns...
Definition scalar_edge_flux.hpp:55