Documentation a537f1bdf2
Loading...
Searching...
No Matches
CDiscAdjHeatIteration Class Referencefinal

Class for driving an iteration of the discrete adjoint heat equation. More...

#include <CDiscAdjHeatIteration.hpp>

Inheritance diagram for CDiscAdjHeatIteration:
[legend]

Public Member Functions

 CDiscAdjHeatIteration (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
 Perform a single iteration of the adjoint heat problem.
 
void IterateDiscAdj (CGeometry ****geometry, CSolver *****solver, CConfig **config, unsigned short val_iZone, unsigned short val_iInst, bool CrossTerm) override
 Perform a single iteration of the adjoint heat problem.
 
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 discrete adjoint heat problem.
 
void InitializeAdjoint (CSolver *****solver, CGeometry ****geometry, CConfig **config, unsigned short iZone, unsigned short iInst) override
 Registers all input variables of the fluid iteration.
 
void RegisterInput (CSolver *****solver, CGeometry ****geometry, CConfig **config, unsigned short iZone, unsigned short iInst, RECORDING kind_recording) override
 Registers all output variables of the fluid iteration.
 
void RegisterOutput (CSolver *****solver, CGeometry ****geometry, CConfig **config, unsigned short iZone, unsigned short iInst) override
 Initializes the adjoints of the output variables of the fluid iteration.
 
void SetDependencies (CSolver *****solver, CGeometry ****geometry, CNumerics ******numerics, CConfig **config, unsigned short iZone, unsigned short iInst, RECORDING kind_recording) override
 Compute necessary variables that depend on the conservative variables or the mesh node positions (e.g. turbulent variables, normals, volumes).
 
- 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 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 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.
 
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.
 
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 discrete adjoint heat equation.

Author
O. Burghardt

Constructor & Destructor Documentation

◆ CDiscAdjHeatIteration()

CDiscAdjHeatIteration::CDiscAdjHeatIteration ( const CConfig *  config)
inlineexplicit

Constructor of the class.

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

Member Function Documentation

◆ InitializeAdjoint()

void CDiscAdjHeatIteration::InitializeAdjoint ( CSolver *****  solver,
CGeometry ****  geometry,
CConfig **  config,
unsigned short  iZone,
unsigned short  iInst 
)
overridevirtual

Registers all input variables of the fluid iteration.

Parameters
[in]solver- Container vector with all the solutions.
[in]geometry- Geometrical definition of the problem.
[in]config- Definition of the particular problem.
[in]iZone- Index of the zone.
[in]val_iInst- Index of the instance layer.

Reimplemented from CIteration.

◆ IterateDiscAdj()

void CDiscAdjHeatIteration::IterateDiscAdj ( CGeometry ****  geometry,
CSolver *****  solver,
CConfig **  config,
unsigned short  val_iZone,
unsigned short  val_iInst,
bool  CrossTerm 
)
overridevirtual

Perform a single iteration of the adjoint heat problem.

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 instance.
[in]CrossTerm- Boolean for CrossTerm.

Reimplemented from CIteration.

◆ Monitor()

bool CDiscAdjHeatIteration::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 discrete adjoint heat problem.

Reimplemented from CIteration.

◆ Preprocess()

void CDiscAdjHeatIteration::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

Perform a single iteration of the adjoint heat problem.

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.

◆ RegisterInput()

void CDiscAdjHeatIteration::RegisterInput ( CSolver *****  solver,
CGeometry ****  geometry,
CConfig **  config,
unsigned short  iZone,
unsigned short  iInst,
RECORDING  kind_recording 
)
overridevirtual

Registers all output variables of the fluid iteration.

Parameters
[in]solver- Container vector with all the solutions.
[in]geometry- Geometrical definition of the problem.
[in]config- Definition of the particular problem.
[in]iZone- Index of the zone.
[in]val_iInst- Index of the instance layer.
[in]kind_recording- Kind of recording.

Reimplemented from CIteration.

◆ RegisterOutput()

void CDiscAdjHeatIteration::RegisterOutput ( CSolver *****  solver,
CGeometry ****  geometry,
CConfig **  config,
unsigned short  iZone,
unsigned short  iInst 
)
overridevirtual

Initializes the adjoints of the output variables of the fluid iteration.

Parameters
[in]solver- Container vector with all the solutions.
[in]geometry- Geometrical definition of the problem.
[in]config- Definition of the particular problem.
[in]iZone- Index of the zone.
[in]val_iInst- Index of the instance layer.

Reimplemented from CIteration.

◆ SetDependencies()

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

Compute necessary variables that depend on the conservative variables or the mesh node positions (e.g. turbulent variables, normals, volumes).

Parameters
[in]solver- Container vector with all the solutions.
[in]geometry- Geometrical definition of the problem.
[in]config- Definition of the particular problem.
[in]iZone- Index of the zone.
[in]val_iInst- Index of the instance layer.
[in]kind_recording- The kind of recording.

Reimplemented from CIteration.


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