Documentation a537f1bdf2
Loading...
Searching...
No Matches
CTurboIteration.hpp
Go to the documentation of this file.
1/*!
2 * \file CTurboIteration.hpp
3 * \brief Headers of the iteration classes used by SU2_CFD.
4 * Each CIteration class represents an available physics package.
5 * \author F. Palacios, T. Economon
6 * \version 8.5.0 "Harrier"
7 *
8 * SU2 Project Website: https://su2code.github.io
9 *
10 * The SU2 Project is maintained by the SU2 Foundation
11 * (http://su2foundation.org)
12 *
13 * Copyright 2012-2026, SU2 Contributors (cf. AUTHORS.md)
14 *
15 * SU2 is free software; you can redistribute it and/or
16 * modify it under the terms of the GNU Lesser General Public
17 * License as published by the Free Software Foundation; either
18 * version 2.1 of the License, or (at your option) any later version.
19 *
20 * SU2 is distributed in the hope that it will be useful,
21 * but WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23 * Lesser General Public License for more details.
24 *
25 * You should have received a copy of the GNU Lesser General Public
26 * License along with SU2. If not, see <http://www.gnu.org/licenses/>.
27 */
28
29#pragma once
30
31#include "CFluidIteration.hpp"
32
33/*!
34 * \class CTurboIteration
35 * \ingroup Drivers
36 * \brief Class for driving an iteration for turbomachinery simulation.
37 * \author T. Economon
38 */
40 public:
41 /*!
42 * \brief Constructor of the class.
43 * \param[in] config - Definition of the particular problem.
44 */
45 explicit CTurboIteration(const CConfig *config) : CFluidIteration(config) {}
46
47 /*!
48 * \brief Preprocessing to prepare for an iteration of the physics.
49 * \param[in] ??? - Description here.
50 */
51 void Preprocess(COutput* output, CIntegration**** integration, CGeometry**** geometry, CSolver***** solver,
52 CNumerics****** numerics, CConfig** config, CSurfaceMovement** surface_movement,
53 CVolumetricMovement*** grid_movement, CFreeFormDefBox*** FFDBox, unsigned short val_iZone,
54 unsigned short val_iInst) override;
55
56 /*!
57 * \brief Postprocesses the fluid system before heading to another physics system or the next iteration.
58 * \param[in] solver - Container vector with all the solutions.
59 * \param[in] geometry - Geometrical definition of the problem.
60 * \param[in] config - Definition of the particular problem.
61 */
62 void Postprocess(COutput* output, CIntegration**** integration, CGeometry**** geometry, CSolver***** solver,
63 CNumerics****** numerics, CConfig** config, CSurfaceMovement** surface_movement,
64 CVolumetricMovement*** grid_movement, CFreeFormDefBox*** FFDBox, unsigned short val_iZone,
65 unsigned short val_iInst) override;
66
67 /*!
68 * \brief Initialises turboperformance classes.
69 */
70 void InitTurboPerformance(CGeometry *geometry, CConfig** config, CFluidModel *fluid);
71
72};
Main class for defining the problem; basically this class reads the configuration file,...
Definition CConfig.hpp:64
Class for driving an iteration of the fluid system.
Definition CFluidIteration.hpp:39
Main class for defining the Thermo-Physical Model.
Definition CFluidModel.hpp:47
Class for defining the free form FFDBox structure.
Definition CFreeFormDefBox.hpp:38
Parent class for defining the geometry of the problem (complete geometry, multigrid agglomerated geom...
Definition CGeometry.hpp:75
Main class for doing the space integration, time integration, and monitoring of a system of Partial D...
Definition CIntegration.hpp:47
Class for defining the numerical methods.
Definition CNumerics.hpp:48
Class for writing the convergence history and to write solution data to file.
Definition COutput.hpp:68
Definition CSolver.hpp:71
Class for moving the surface numerical grid.
Definition CSurfaceMovement.hpp:38
Class for driving an iteration for turbomachinery simulation.
Definition CTurboIteration.hpp:39
void Postprocess(COutput *output, CIntegration ****integration, CGeometry ****geometry, CSolver *****solver, CNumerics ******numerics, CConfig **config, CSurfaceMovement **surface_movement, CVolumetricMovement ***grid_movement, CFreeFormDefBox ***FFDBox, unsigned short val_iZone, unsigned short val_iInst) override
Postprocesses the fluid system before heading to another physics system or the next iteration.
Definition CTurboIteration.cpp:47
void Preprocess(COutput *output, CIntegration ****integration, CGeometry ****geometry, CSolver *****solver, CNumerics ******numerics, CConfig **config, CSurfaceMovement **surface_movement, CVolumetricMovement ***grid_movement, CFreeFormDefBox ***FFDBox, unsigned short val_iZone, unsigned short val_iInst) override
Preprocessing to prepare for an iteration of the physics.
Definition CTurboIteration.cpp:32
void InitTurboPerformance(CGeometry *geometry, CConfig **config, CFluidModel *fluid)
Initialises turboperformance classes.
Definition CTurboIteration.cpp:67
CTurboIteration(const CConfig *config)
Constructor of the class.
Definition CTurboIteration.hpp:45
Class for moving the volumetric numerical grid.
Definition CVolumetricMovement.hpp:37