Documentation 6b54b78464
Loading...
Searching...
No Matches
CFluidIteration Class Reference

Class for driving an iteration of the fluid system. More...

#include <CFluidIteration.hpp>

Inheritance diagram for CFluidIteration:
[legend]

Public Member Functions

 CFluidIteration (const CConfig *config)
 Constructor of the class.
 
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.
 
void Iterate (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
 Perform a single iteration of the fluid system.
 
void CommonAuxiliarySolvers (CIntegration ****integration, CGeometry ****geometry, CSolver *****solver, CNumerics ******numerics, CConfig **config, unsigned short val_iZone, unsigned short val_iInst, MAIN_SOLVER main_solver, bool frozen_visc)
 Perform auxiliary solvers iterations after the main flow solver.
 
void Solve (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
 Iterate the fluid system for a number of Inner_Iter iterations.
 
void Update (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
 Updates the containers for the fluid system.
 
bool Monitor (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
 Monitors the convergence and other metrics for the fluid system.
 
void UpdateRamps (CGeometry ****geometry_container, CConfig **config_container, unsigned long iter, unsigned short iZone, RAMP_TYPE ramp_flag)
 Monitors and updates ramps.
 
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.
 
- Public Member Functions inherited from CIteration
 CIteration (const CConfig *config)
 Constructor of the class.
 
virtual ~CIteration (void)=default
 Destructor of the class.
 
virtual void SetGrid_Movement (CGeometry **geometry, CSurfaceMovement *surface_movement, CVolumetricMovement *grid_movement, CSolver ***solver, CConfig *config, unsigned long IntIter, unsigned long TimeIter)
 Updates the positions and grid velocities for dynamic meshes between physical time steps.
 
void SetMesh_Deformation (CGeometry **geometry, CSolver **solver_container, CNumerics ***numerics_container, CConfig *config_container, RECORDING kind_recording)
 Run the mesh deformation algorithms.
 
virtual void IterateDiscAdj (CGeometry ****geometry, CSolver *****solver, CConfig **config, unsigned short val_iZone, unsigned short val_iInst, bool CrossTerm)
 A virtual member.
 
virtual void Predictor (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)
 A virtual member.
 
virtual void Relaxation (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)
 A virtual member.
 
void Output (COutput *output, CGeometry ****geometry, CSolver *****solver, CConfig **config, unsigned long InnerIter, bool StopCalc, unsigned short val_iZone, unsigned short val_iInst)
 A virtual member.
 
virtual void InitializeAdjoint (CSolver *****solver, CGeometry ****geometry, CConfig **config, unsigned short iZone, unsigned short iInst)
 
virtual void RegisterInput (CSolver *****solver, CGeometry ****geometry, CConfig **config, unsigned short iZone, unsigned short iInst, RECORDING kind_recording)
 
virtual void SetDependencies (CSolver *****solver, CGeometry ****geometry, CNumerics ******numerics, CConfig **config, unsigned short iZone, unsigned short iInst, RECORDING kind_recording)
 
virtual void RegisterOutput (CSolver *****solver, CGeometry ****geometry, CConfig **config, unsigned short iZone, unsigned short iInst)
 
void ComputeTurboPerformance (CSolver *****solver, CGeometry ****geometry_container, CConfig **config_container)
 Computes turboperformance.
 
void InitTurboPerformance (CGeometry *geometry, CConfig **config, CFluidModel *fluid, unsigned short val_iZone)
 Initialises turboperformance classes.
 
su2vector< std::shared_ptr< CTurboOutput > > GetBladesPerformanceVector (CSolver *****solver, unsigned short nBladeRow)
 

Additional Inherited Members

- Protected Attributes inherited from CIteration
const int rank
 MPI Rank.
 
const int size
 MPI Size.
 
const unsigned short nZone
 Total number of zones in the problem.
 
const unsigned short nInst
 Total number of instances in the problem.
 
const bool multizone
 Flag for multizone problems.
 
const bool singlezone
 Flag for singlezone problems.
 
su2double StartTime {0.0}
 Tracking wall time.
 
su2double StopTime {0.0}
 
su2double UsedTime {0.0}
 
std::shared_ptr< CTurbomachineryStagePerformance > TurbomachineryStagePerformance
 turbo stage performance calculator.
 

Detailed Description

Class for driving an iteration of the fluid system.

Author
T. Economon

Constructor & Destructor Documentation

◆ CFluidIteration()

CFluidIteration::CFluidIteration ( const CConfig *  config)
inlineexplicit

Constructor of the class.

Parameters
[in]config- Definition of the particular problem.

Member Function Documentation

◆ CommonAuxiliarySolvers()

void CFluidIteration::CommonAuxiliarySolvers ( CIntegration ****  integration,
CGeometry ****  geometry,
CSolver *****  solver,
CNumerics ******  numerics,
CConfig **  config,
unsigned short  val_iZone,
unsigned short  val_iInst,
MAIN_SOLVER  main_solver,
bool  frozen_visc 
)

Perform auxiliary solvers iterations after the main flow solver.

Parameters
[in]integration- Container vector with all the integration methods.
[in]geometry- Geometrical definition of the problem.
[in]solver- Container vector with all the solutions.
[in]numerics- Description of the numerical method (the way in which the equations are solved).
[in]config- Definition of the particular problem.
[in]val_iZone- Index of the zone.
[in]val_iInst- Index of the instance layer.
[in]main_solver- Main solver.
[in]frozen_visc- Flag for frozen viscosity.

◆ Iterate()

void CFluidIteration::Iterate ( 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 
)
overridevirtual

Perform a single iteration of the fluid system.

Parameters
[in]output- Pointer to the COutput class.
[in]integration- Container vector with all the integration methods.
[in]geometry- Geometrical definition of the problem.
[in]solver- Container vector with all the solutions.
[in]numerics- Description of the numerical method (the way in which the equations are solved).
[in]config- Definition of the particular problem.
[in]surface_movement- Surface movement classes of the problem.
[in]grid_movement- Volume grid movement classes of the problem.
[in]FFDBox- FFD FFDBoxes of the problem.
[in]val_iZone- Index of the zone.
[in]val_iInst- Index of the instance layer.

Reimplemented from CIteration.

Reimplemented in CHeatIteration, and CPBFluidIteration.

◆ Monitor()

bool CFluidIteration::Monitor ( 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 
)
overridevirtual

Monitors the convergence and other metrics for the fluid system.

Parameters
[in]???- Description here.

Reimplemented from CIteration.

◆ Postprocess()

void CFluidIteration::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 
)
overridevirtual

Postprocesses the fluid system before heading to another physics system or the next iteration.

Parameters
[in]solver- Container vector with all the solutions.
[in]geometry- Geometrical definition of the problem.
[in]config- Definition of the particular problem.

Reimplemented from CIteration.

Reimplemented in CHeatIteration, and CTurboIteration.

◆ Preprocess()

void CFluidIteration::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 
)
overridevirtual

Preprocessing to prepare for an iteration of the physics.

Parameters
[in]???- Description here.

Reimplemented from CIteration.

Reimplemented in CHeatIteration, and CTurboIteration.

◆ Solve()

void CFluidIteration::Solve ( 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 
)
overridevirtual

Iterate the fluid system for a number of Inner_Iter iterations.

Parameters
[in]output- Pointer to the COutput class.
[in]integration- Container vector with all the integration methods.
[in]geometry- Geometrical definition of the problem.
[in]solver- Container vector with all the solutions.
[in]numerics- Description of the numerical method (the way in which the equations are solved).
[in]config- Definition of the particular problem.
[in]surface_movement- Surface movement classes of the problem.
[in]grid_movement- Volume grid movement classes of the problem.
[in]FFDBox- FFD FFDBoxes of the problem.

Reimplemented from CIteration.

◆ Update()

void CFluidIteration::Update ( 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 
)
overridevirtual

Updates the containers for the fluid system.

Parameters
[in]???- Description here.

Reimplemented from CIteration.

Reimplemented in CHeatIteration.

◆ UpdateRamps()

void CFluidIteration::UpdateRamps ( CGeometry ****  geometry_container,
CConfig **  config_container,
unsigned long  iter,
unsigned short  iZone,
RAMP_TYPE  ramp_flag 
)

Monitors and updates ramps.

Parameters
[in]geometry_container- Geometrical definition of the problem
[in]config_container- Defintion of the particular problem
[in]ExtIter- The current iteration of the problem
[in]iZone- The current zone
[in]ramp_flag- Flag indicating type of ramp (grid or boundary)

The documentation for this class was generated from the following files: