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

Parent class for defining a single iteration of a physics problem. More...

#include <CIteration.hpp>

Inheritance diagram for CIteration:
[legend]

Public Member Functions

 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 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)
 A virtual member.
 
virtual 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)
 A virtual member.
 
virtual void IterateDiscAdj (CGeometry ****geometry, CSolver *****solver, CConfig **config, unsigned short val_iZone, unsigned short val_iInst, bool CrossTerm)
 A virtual member.
 
virtual 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)
 A virtual member.
 
virtual 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)
 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.
 
virtual 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)
 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 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)
 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)
 

Protected Attributes

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

Parent class for defining a single iteration of a physics problem.

Author
T. Economon

Constructor & Destructor Documentation

◆ CIteration()

CIteration::CIteration ( const CConfig *  config)
inlineexplicit

Constructor of the class.

◆ ~CIteration()

virtual CIteration::~CIteration ( void  )
virtualdefault

Destructor of the class.

Member Function Documentation

◆ ComputeTurboPerformance()

void CIteration::ComputeTurboPerformance ( CSolver *****  solver,
CGeometry ****  geometry_container,
CConfig **  config_container 
)

Computes turboperformance.

◆ GetBladesPerformanceVector()

su2vector< std::shared_ptr< CTurboOutput > > CIteration::GetBladesPerformanceVector ( CSolver *****  solver,
unsigned short  nBladeRow 
)
inline

◆ InitializeAdjoint()

virtual void CIteration::InitializeAdjoint ( CSolver *****  solver,
CGeometry ****  geometry,
CConfig **  config,
unsigned short  iZone,
unsigned short  iInst 
)
inlinevirtual

◆ InitTurboPerformance()

void CIteration::InitTurboPerformance ( CGeometry *  geometry,
CConfig **  config,
CFluidModel *  fluid,
unsigned short  val_iZone 
)

Initialises turboperformance classes.

◆ Iterate()

virtual void CIteration::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 
)
inlinevirtual

A virtual member.

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 instantiation.

Reimplemented in CAdjFluidIteration, CFEAIteration, CFEMFluidIteration, CFluidIteration, CHeatIteration, and CPBFluidIteration.

◆ IterateDiscAdj()

virtual void CIteration::IterateDiscAdj ( CGeometry ****  geometry,
CSolver *****  solver,
CConfig **  config,
unsigned short  val_iZone,
unsigned short  val_iInst,
bool  CrossTerm 
)
inlinevirtual

A virtual member.

Parameters
[in]geometry- Geometrical definition of the problem.
[in]solver- Container vector with all the solutions.
[in]config- Definition of the particular problem.
[in]val_iZone- Index of the zone.
[in]val_iInst- Index of the instantiation.
[in]CrossTerm- Boolean for CrossTerm.

Reimplemented in CDiscAdjFEAIteration, CDiscAdjFluidIteration, and CDiscAdjHeatIteration.

◆ Monitor()

virtual bool CIteration::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 
)
inlinevirtual

A virtual member.

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 instantiation.

Reimplemented in CDiscAdjFEAIteration, CDiscAdjFluidIteration, CDiscAdjHeatIteration, CFEAIteration, and CFluidIteration.

◆ Output()

void CIteration::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.

Parameters
[in]output- Pointer to the COutput class.
[in]geometry- Geometrical definition of the problem.
[in]solver- Container vector with all the solutions.
[in]config- Definition of the particular problem.
[in]InnerIter- Current psuedo time iteration number.
[in]StopCalc- Boolean storing whether to stop the simulation
[in]val_iZone- Index of the zone.
[in]val_iInst- Index of the instantiation.

◆ Postprocess()

virtual void CIteration::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 
)
inlinevirtual

A virtual member.

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 instantiation.

Reimplemented in CHeatIteration, CDiscAdjFEAIteration, CFEMFluidIteration, CFluidIteration, and CTurboIteration.

◆ Predictor()

virtual void CIteration::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 
)
inlinevirtual

A virtual member.

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 instantiation.

Reimplemented in CFEAIteration.

◆ Preprocess()

virtual void CIteration::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 
)
inlinevirtual

A virtual member.

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 instantiation.

Reimplemented in CHeatIteration, CAdjFluidIteration, CDiscAdjFEAIteration, CDiscAdjFluidIteration, CDiscAdjHeatIteration, CFEMFluidIteration, CFluidIteration, and CTurboIteration.

◆ RegisterInput()

virtual void CIteration::RegisterInput ( CSolver *****  solver,
CGeometry ****  geometry,
CConfig **  config,
unsigned short  iZone,
unsigned short  iInst,
RECORDING  kind_recording 
)
inlinevirtual

◆ RegisterOutput()

virtual void CIteration::RegisterOutput ( CSolver *****  solver,
CGeometry ****  geometry,
CConfig **  config,
unsigned short  iZone,
unsigned short  iInst 
)
inlinevirtual

◆ Relaxation()

virtual void CIteration::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 
)
inlinevirtual

A virtual member.

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 instantiation.

Reimplemented in CFEAIteration.

◆ SetDependencies()

virtual void CIteration::SetDependencies ( CSolver *****  solver,
CGeometry ****  geometry,
CNumerics ******  numerics,
CConfig **  config,
unsigned short  iZone,
unsigned short  iInst,
RECORDING  kind_recording 
)
inlinevirtual

◆ SetGrid_Movement()

void CIteration::SetGrid_Movement ( CGeometry **  geometry,
CSurfaceMovement *  surface_movement,
CVolumetricMovement *  grid_movement,
CSolver ***  solver,
CConfig *  config,
unsigned long  IntIter,
unsigned long  TimeIter 
)
virtual

Updates the positions and grid velocities for dynamic meshes between physical time steps.

Author
T. Economon
Parameters
[in]geometry- Geometrical definition of the problem.
[in]surface_movement- Surface movement classes of the problem.
[in]grid_movement- Volume grid movement classes of the problem.
[in]solver- Container vector with all the solutions.
[in]config- Definition of the particular problem.
[in]IntIter- Current psuedo time iteration number.
[in]TimeIter- Current physical time iteration number.

◆ SetMesh_Deformation()

void CIteration::SetMesh_Deformation ( CGeometry **  geometry,
CSolver **  solver_container,
CNumerics ***  numerics_container,
CConfig *  config_container,
RECORDING  kind_recording 
)

Run the mesh deformation algorithms.

Author
R. Sanchez
Parameters
[in]geometry- Geometrical definition of the problem.
[in]solver_container- Container vector with all the solutions.
[in]config_container- Definition of the particular problem.
[in]kind_recording- Current kind of recording.

◆ Solve()

virtual void CIteration::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 
)
inlinevirtual

A virtual member.

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 instantiation.

Reimplemented in CFEAIteration, and CFluidIteration.

◆ Update()

virtual void CIteration::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 
)
inlinevirtual

A virtual member.

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 instantiation.

Reimplemented in CAdjFluidIteration, CFEAIteration, CFEMFluidIteration, CFluidIteration, and CHeatIteration.

Member Data Documentation

◆ multizone

const bool CIteration::multizone
protected

Flag for multizone problems.

◆ nInst

const unsigned short CIteration::nInst
protected

Total number of instances in the problem.

◆ nZone

const unsigned short CIteration::nZone
protected

Total number of zones in the problem.

◆ rank

const int CIteration::rank
protected

MPI Rank.

◆ singlezone

const bool CIteration::singlezone
protected

Flag for singlezone problems.

◆ size

const int CIteration::size
protected

MPI Size.

◆ StartTime

su2double CIteration::StartTime {0.0}
protected

Tracking wall time.

◆ StopTime

su2double CIteration::StopTime {0.0}
protected

◆ TurbomachineryStagePerformance

std::shared_ptr<CTurbomachineryStagePerformance> CIteration::TurbomachineryStagePerformance
protected

turbo stage performance calculator.

◆ UsedTime

su2double CIteration::UsedTime {0.0}
protected

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