Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
92 commits
Select commit Hold shift + click to select a range
8804def
extend driver for time-accurate problems
cvencro Jan 18, 2021
880b8ca
identify and update previous time solutions for diagonal terms only
cvencro Jan 18, 2021
2fefad6
create previous time sensitivity variables
cvencro Jan 18, 2021
80c60de
set sensitivity in domain solver for current time only
cvencro Jan 18, 2021
db4d175
remove error
cvencro Jan 18, 2021
8a4f6ce
Merge branch 'feature_velocity_bc_fsi' into feature_dynFSIAD
cvencro Jan 19, 2021
91dfb9e
Merge branch 'develop' into feature_dynFSIAD
cvencro Jan 19, 2021
655e7cb
add call to predicted structural velocity
cvencro Jan 26, 2021
1751907
register and extract again
cvencro Jan 26, 2021
42554b6
do not set previous time structural solutions here again for AD problems
cvencro Jan 26, 2021
bed3c05
set FSI flag correctly for adjoint problems
cvencro Jan 26, 2021
be6757e
load from adjoint time iteration for AD
cvencro Jan 26, 2021
a16e929
reload grid volumes correctly in AD run
cvencro Jan 26, 2021
252a3c6
add velocity source term similar to displacement
cvencro Jan 26, 2021
52db11a
do not set initial conditions again for AD problems
cvencro Jan 26, 2021
4da496a
always register coordinates and MPI comms
cvencro Jan 26, 2021
f7eb0ae
add indexed calls for time accurate AD variables
cvencro Jan 26, 2021
9bf4a70
temporary output of structural dv gradient
cvencro Jan 26, 2021
049dcc0
Merge branch 'feature_velocity_bc_fsi' into feature_dynFSIAD
cvencro Jan 26, 2021
a40d9cb
correct time for adjoint problems with gust
cvencro Feb 5, 2021
93f2a2c
remove reset of grid velocity
cvencro Feb 15, 2021
1bdc1ed
reset still needed for fluid only problems
cvencro Feb 24, 2021
ead257f
Merge branch 'feature_velocity_bc_fsi' into feature_dynFSIAD after fi…
cvencro Mar 28, 2021
ea8a911
Merge branch 'fix_tavg_output' into feature_dynFSIAD
cvencro Mar 28, 2021
baea20c
Merge branch 'develop' into feature_dynFSIAD after fixing conflicts
cvencro Apr 10, 2021
b6958d9
switch on/off grid velocity
cvencro Apr 11, 2021
a9c1a08
Add test case
cvencro Apr 11, 2021
1fc2345
tidy up
cvencro Apr 11, 2021
d912132
update time averaging values - add for new time or replace for existi…
cvencro Apr 13, 2021
04cc74b
Revert "update time averaging values - add for new time or replace fo…
cvencro Apr 13, 2021
b8a0acc
Merge branch 'develop' into feature_dynFSIAD
cvencro Apr 18, 2021
eb4187f
Merge branch 'feature_velocity_bc_fsi' into feature_dynFSIAD
cvencro Apr 18, 2021
12345a6
build fixes
cvencro Apr 18, 2021
191a1d0
more build fixes
cvencro Apr 18, 2021
8de46db
Merge branch 'feature_dynFSIAD' of https://github.com/su2code/SU2 int…
cvencro Apr 18, 2021
4191e45
try build fix - initialize with no solver
cvencro Apr 18, 2021
b35208e
build fix - add missing reference
cvencro Apr 19, 2021
8c5aae0
Merge branch 'feature_velocity_bc_fsi' into feature_dynFSIAD
cvencro Apr 19, 2021
0986437
remove separate predict velocity call
cvencro Apr 19, 2021
a9c17de
fixes for disc adj cht reg test
cvencro Apr 21, 2021
1c171f3
update test to match zero disp for negative time steps
cvencro Apr 21, 2021
dd965e2
Merge branch 'develop' into feature_dynFSIAD
cvencro Apr 21, 2021
caaf295
Merge branch 'feature_velocity_bc_fsi' into feature_dynFSIAD
cvencro Apr 27, 2021
2ab6a61
Merge branch 'develop' into feature_dynFSIAD
pcarruscag Apr 28, 2021
7eb05f9
combine disp, vel, accel into solution for dynamic problems
cvencro May 2, 2021
86cbc3b
Merge branch 'develop' into feature_dynFSIAD after minor conflicts
cvencro May 2, 2021
ebfd56e
remove unused variables
cvencro May 2, 2021
d9da2ee
remove more unused variables
cvencro May 2, 2021
df2ef6d
update predicted solution to include velocity
cvencro May 3, 2021
eee4f17
missed dynamic flag
cvencro May 3, 2021
6ebed52
another missed dynamic flag
cvencro May 3, 2021
61d9883
undo changes to the primal variables
cvencro May 3, 2021
e9b729e
fix modified variables and indices
cvencro May 3, 2021
8c26d1b
unused dynamic flag
cvencro May 3, 2021
cb3ff26
undo changes to interface
cvencro May 3, 2021
58d939b
Merge branch 'develop' into feature_dynFSIAD
cvencro May 4, 2021
84f446b
try halfway with updated primal solution with small solver changes
cvencro May 4, 2021
6c6af76
alternative approach with combining dynamic structural solution for a…
cvencro May 4, 2021
2c261d3
more general treatment of FEA adjoint state
pcarruscag May 4, 2021
3cdb727
fix issues
pcarruscag May 4, 2021
d6ab86d
CDiscAdjFEAVariable replaced by CDiscAdjVariable
pcarruscag May 5, 2021
6d8209a
Merge remote-tracking branch 'origin/develop' into feature_dynFSIAD
TobiKattmann May 6, 2021
2fc6555
Fix build
TobiKattmann May 6, 2021
8f8e007
Clean CDiscAdjVar.hpp: Added briefs, deleted superfluous inputs, line…
TobiKattmann May 6, 2021
64897d3
some cleanup
pcarruscag May 6, 2021
b282d20
more cleaning of old things
pcarruscag May 6, 2021
d8ef5f3
multizone output only for reg test compare
cvencro May 7, 2021
34061a6
fix for dynamic AD convergence
cvencro May 7, 2021
97ba004
only for deformation problems
cvencro May 7, 2021
04b8a6e
move some chunks out of CDiscAdjMultizoneDriver::Run to make it more …
pcarruscag May 7, 2021
ee29c33
temporarily revert dualtime derivative changes to external
cvencro May 8, 2021
a0a68ad
fix potential issue when registering mesh coordinates
pcarruscag May 8, 2021
7f07000
dual time in external, now without breaking it
pcarruscag May 8, 2021
5eafa5a
special "iterate" for discrete adjoint iterations
pcarruscag May 8, 2021
7e08678
indentation
pcarruscag May 10, 2021
ee76b68
numeric limits instead of large number
pcarruscag May 10, 2021
c8b094f
spacing
pcarruscag May 10, 2021
e6a9a3a
Apply suggestions from code review
pcarruscag May 10, 2021
d64d7ee
typo
pcarruscag May 10, 2021
947fdfa
Update SU2_CFD/src/python_wrapper_structure.cpp
pcarruscag May 10, 2021
34b5387
Update SU2_CFD/src/variables/CVariable.cpp
pcarruscag May 10, 2021
5269355
Merge branch 'develop' into feature_dynFSIAD
TobiKattmann May 10, 2021
e730626
add regression test
cvencro May 11, 2021
8ed0250
Update parallel_regression_AD.py for dynamic fsi
cvencro May 11, 2021
1fab0e3
read binary restart files
cvencro May 12, 2021
afbb343
remove test cases
cvencro May 12, 2021
003aba3
Merge branch 'feature_dynFSIAD' of https://github.com/su2code/SU2 int…
cvencro May 12, 2021
38afb5e
add gradient reference
cvencro May 12, 2021
5d5f2b8
Enable regression
pcarruscag May 13, 2021
7fe3d48
move new test
cvencro May 13, 2021
6985d5d
Merge update
cvencro May 13, 2021
590fddd
fix file output issues
pcarruscag May 18, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions Common/include/geometry/dual_grid/CPoint.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,9 @@ class CPoint {
su2activevector Volume; /*!< \brief Volume or Area of the control volume in 3D and 2D. */
su2activevector Volume_n; /*!< \brief Volume at time n. */
su2activevector Volume_nM1; /*!< \brief Volume at time n-1. */
su2activevector Volume_Old; /*!< \brief Old containers for Volume. */
su2activevector Volume_n_Old; /*!< \brief Old containers for Volume at time n. */
su2activevector Volume_nM1_Old; /*!< \brief Old containers for Volume at time n-1. */
su2activevector Periodic_Volume; /*!< \brief Missing component of volume or area of a control volume on a periodic marker in 3D and 2D. */

su2vector<bool> Domain; /*!< \brief Indicates if a point must be computed or belong to another boundary */
Expand Down Expand Up @@ -544,6 +547,31 @@ class CPoint {
*/
void SetVolume_nM1();

/*!
* \brief Set the volume of the control volume at time n using n-1.
*/
void SetVolume_n_from_OldnM1();

/*!
* \brief Set the volume of the control volume at current time using time n.
*/
void SetVolume_from_Oldn();

/*!
* \brief Set the Volume to Volume_Old.
*/
void SetVolume_Old();

/*!
* \brief Set the Volume_n to Volume_n_Old.
*/
void SetVolume_n_Old();

/*!
* \brief Set the Volume_nM1 to Volume_nM1_Old.
*/
void SetVolume_nM1_Old();

/*!
* \brief Set the parent control volume of an agglomerated control volume.
* \param[in] iPoint - Index of the point.
Expand Down
8 changes: 1 addition & 7 deletions Common/src/CConfig.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4873,16 +4873,10 @@ void CConfig::SetPostprocessing(SU2_COMPONENT val_software, unsigned short val_i
Kind_Linear_Solver = Kind_DiscAdj_Linear_Solver;
Kind_Linear_Solver_Prec = Kind_DiscAdj_Linear_Prec;

if (TimeMarching != TIME_MARCHING::STEADY) {
if (Time_Domain) {

Restart_Flow = false;

if (GetKind_GridMovement() != RIGID_MOTION &&
GetKind_GridMovement() != NO_MOVEMENT) {
SU2_MPI::Error(string("Dynamic mesh movement currently only supported for the discrete adjoint solver for\n") +
string("GRID_MOVEMENT = RIGID_MOTION."), CURRENT_FUNCTION);
}

if (Unst_AdjointIter- long(nTimeIter) < 0){
SU2_MPI::Error(string("Invalid iteration number requested for unsteady adjoint.\n" ) +
string("Make sure EXT_ITER is larger or equal than UNST_ADJOINT_ITER."),
Expand Down
30 changes: 30 additions & 0 deletions Common/src/geometry/dual_grid/CPoint.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,11 @@ void CPoint::FullAllocation(unsigned short imesh, const CConfig *config) {
if (config->GetTime_Marching() != TIME_MARCHING::STEADY) {
Volume_n.resize(npoint) = su2double(0.0);
Volume_nM1.resize(npoint) = su2double(0.0);
if (config->GetDynamic_Grid() && config->GetDiscrete_Adjoint()) {
Volume_Old.resize(npoint) = su2double(0.0);
Volume_n_Old.resize(npoint) = su2double(0.0);
Volume_nM1_Old.resize(npoint) = su2double(0.0);
}
}

if(config->GetAD_Mode() && config->GetMultizone_Problem()) {
Expand Down Expand Up @@ -163,6 +168,31 @@ void CPoint::SetVolume_nM1() {
parallelCopy(Volume_n.size(), Volume_n.data(), Volume_nM1.data());
}

void CPoint::SetVolume_Old() {
assert(Volume_Old.size() == Volume.size());
parallelCopy(Volume.size(), Volume.data(), Volume_Old.data());
}

void CPoint::SetVolume_n_Old() {
assert(Volume_n_Old.size() == Volume_n.size());
parallelCopy(Volume_n.size(), Volume_n.data(), Volume_n_Old.data());
}

void CPoint::SetVolume_nM1_Old() {
assert(Volume_nM1_Old.size() == Volume_nM1.size());
parallelCopy(Volume_nM1.size(), Volume_nM1.data(), Volume_nM1_Old.data());
}

void CPoint::SetVolume_n_from_OldnM1() {
assert(Volume_n.size() == Volume_nM1_Old.size());
parallelCopy(Volume_nM1_Old.size(), Volume_nM1_Old.data(), Volume_n.data());
}

void CPoint::SetVolume_from_Oldn() {
assert(Volume.size() == Volume_n_Old.size());
parallelCopy(Volume_n_Old.size(), Volume_n_Old.data(), Volume.data());
}

void CPoint::SetCoord_n() {
assert(Coord_n.size() == Coord.size());
parallelCopy(Coord.size(), Coord.data(), Coord_n.data());
Expand Down
28 changes: 25 additions & 3 deletions SU2_CFD/include/drivers/CDiscAdjMultizoneDriver.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ class CDiscAdjMultizoneDriver : public CMultizoneDriver {
COutput** direct_output; /*!< \brief Array of pointers to the direct outputs. */
vector<unsigned short> direct_nInst; /*!< \brief Total number of instances in the direct problem. */
vector<unsigned long> nInnerIter; /*!< \brief Number of inner iterations for each zone. */
unsigned long wrt_sol_freq = std::numeric_limits<unsigned long>::max(); /*!< \brief File output frequency. */

su2vector<bool> Has_Deformation; /*!< \brief True if iZone has mesh deformation (used for
lazy evaluation of TRANSFER tape section). */
Expand Down Expand Up @@ -138,6 +139,11 @@ class CDiscAdjMultizoneDriver : public CMultizoneDriver {

protected:

/*!
* \brief Preprocess the multizone iteration
*/
void Preprocess(unsigned long TimeIter) override;

/*!
* \brief [Overload] Run an discrete adjoint update of all solvers within multiple zones.
*/
Expand All @@ -149,12 +155,23 @@ class CDiscAdjMultizoneDriver : public CMultizoneDriver {
*/
bool Iterate(unsigned short iZone, unsigned long iInnerIter, bool KrylovMode = false);

/*!
* \brief Run inner iterations using a Krylov method (GMRES atm).
*/
void KrylovInnerIters(unsigned short iZone);

/*!
* \brief Evaluate the gradient of the objective function and add to "External".
* \return "True" if the gradient is numerically 0.
*/
bool EvaluateObjectiveFunctionGradient();

/*!
* \brief Evaluate sensitivites for the current adjoint solution and output files.
* \param[in] iOuterIter - Current outer iteration.
* \param[in] StopCalc - Final iteration flag (converged or reached max number of iters).
* \param[in] Iter - Current outer or time iteration.
* \param[in] force_writing - Force file output.
*/
void EvaluateSensitivities(unsigned long iOuterIter, bool StopCalc);
void EvaluateSensitivities(unsigned long Iter, bool force_writing);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 StopCalc is a visible class boolean so it shouldn't be used as a member var in the same class anyway


/*!
* \brief Setup the matrix of cross-terms. Allocate necessary memory and initialize to zero.
Expand Down Expand Up @@ -217,6 +234,11 @@ class CDiscAdjMultizoneDriver : public CMultizoneDriver {
*/
void Add_Solution_To_External(unsigned short iZone);

/*!
* \brief Puts dual time derivative vector to External.
*/
void Set_External_To_DualTimeDer();

/*!
* \brief Add External_Old vector to Solution.
* \param[in] iZone - Zone index.
Expand Down
2 changes: 2 additions & 0 deletions SU2_CFD/include/drivers/CDriver.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -661,6 +661,8 @@ class CDriver {
*/
void SetSourceTerm_DispAdjoint(unsigned short iMarker, unsigned long iVertex, passivedouble val_AdjointX,
passivedouble val_AdjointY, passivedouble val_AdjointZ);
void SetSourceTerm_VelAdjoint(unsigned short iMarker, unsigned long iVertex, passivedouble val_AdjointX,
passivedouble val_AdjointY, passivedouble val_AdjointZ);

/*!
* \brief Set the position of the heat source.
Expand Down
38 changes: 17 additions & 21 deletions SU2_CFD/include/iteration/CDiscAdjFEAIteration.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -86,26 +86,19 @@ class CDiscAdjFEAIteration final : public CIteration {
unsigned short val_iInst) override;

/*!
* \brief Perform a single iteration of the adjoint mean flow system.
* \param[in] output - Pointer to the COutput class.
* \param[in] integration - Container vector with all the integration methods.
* \brief Perform a single iteration of the adjoint FEA problem.
* \param[in] geometry - Geometrical definition of the problem.
* \param[in] solver - Container vector with all the solutions.
* \param[in] numerics - Description of the numerical method (the way in which the equations are solved).
* \param[in] config - Definition of the particular problem.
* \param[in] surface_movement - Surface movement classes of the problem.
* \param[in] grid_movement - Volume grid movement classes of the problem.
* \param[in] FFDBox - FFD FFDBoxes of the problem.
* \param[in] val_iZone - Index of the zone.
* \param[in] val_iInst - Index of the instance.
* \param[in] CrossTerm - Boolean for CrossTerm.
*/
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;
void IterateDiscAdj(CGeometry**** geometry, CSolver***** solver, CConfig** config,
unsigned short val_iZone, unsigned short val_iInst, bool CrossTerm) override;

/*!
* \brief Monitors the convergence and other metrics for the discrete adjoint mean flow system.
* \brief Monitors the convergence and other metrics for the discrete adjoint FEA problem.
* \param[in] output - Pointer to the COutput class.
* \param[in] integration - Container vector with all the integration methods.
* \param[in] geometry - Geometrical definition of the problem.
Expand All @@ -124,12 +117,16 @@ class CDiscAdjFEAIteration final : public CIteration {
unsigned short val_iInst) override;

/*!
* \brief Postprocesses the discrete adjoint mean flow system before heading to another physics system or the next
* iteration. \param[in] output - Pointer to the COutput class. \param[in] integration - Container vector with all the
* integration methods. \param[in] geometry - Geometrical definition of the problem. \param[in] solver - Container
* vector with all the solutions. \param[in] numerics - Description of the numerical method (the way in which the
* equations are solved). \param[in] config - Definition of the particular problem. \param[in] surface_movement -
* Surface movement classes of the problem. \param[in] grid_movement - Volume grid movement classes of the problem.
* \brief Postprocesses the discrete adjoint FEA problem before heading to another physics system or the next
* iteration.
* \param[in] output - Pointer to the COutput class.
* \param[in] integration - Container vector with all the integration methods.
* \param[in] geometry - Geometrical definition of the problem.
* \param[in] solver - Container vector with all the solutions.
* \param[in] numerics - Description of the numerical method (the way in which the equations are solved).
* \param[in] config - Definition of the particular problem.
* \param[in] surface_movement - Surface movement classes of the problem.
* \param[in] grid_movement - Volume grid movement classes of the problem.
* \param[in] FFDBox - FFD FFDBoxes of the problem.
* \param[in] val_iZone - Index of the zone.
* \param[in] val_iInst - Index of the instance.
Expand Down Expand Up @@ -158,9 +155,8 @@ class CDiscAdjFEAIteration final : public CIteration {
* \param[in] iZone - Index of the zone.
* \param[in] iInst - Index of the zone.
*/
void RegisterOutput(CSolver***** solver, CGeometry**** geometry, CConfig** config, unsigned short iZone,
unsigned short iInst);
using CIteration::RegisterOutput;
void RegisterOutput(CSolver***** solver, CGeometry**** geometry, CConfig** config,
unsigned short iZone, unsigned short iInst) override;

/*!
* \brief Initializes the adjoints of the output variables of the FEM iteration.
Expand Down
17 changes: 5 additions & 12 deletions SU2_CFD/include/iteration/CDiscAdjFluidIteration.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -83,22 +83,15 @@ class CDiscAdjFluidIteration final : public CIteration {

/*!
* \brief Perform a single iteration of the adjoint fluid system.
* \param[in] output - Pointer to the COutput class.
* \param[in] integration - Container vector with all the integration methods.
* \param[in] geometry - Geometrical definition of the problem.
* \param[in] solver - Container vector with all the solutions.
* \param[in] numerics - Description of the numerical method (the way in which the equations are solved).
* \param[in] config - Definition of the particular problem.
* \param[in] surface_movement - Surface movement classes of the problem.
* \param[in] grid_movement - Volume grid movement classes of the problem.
* \param[in] FFDBox - FFD FFDBoxes of the problem.
* \param[in] val_iZone - Index of the zone.
* \param[in] val_iInst - Index of the instance
* \param[in] val_iInst - Index of the instance.
* \param[in] CrossTerm - Boolean for CrossTerm.
*/
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;
void IterateDiscAdj(CGeometry**** geometry, CSolver***** solver, CConfig** config,
unsigned short val_iZone, unsigned short val_iInst, bool CrossTerm) override;

/*!
* \brief Updates the containers for the discrete adjoint fluid system.
Expand Down Expand Up @@ -169,7 +162,7 @@ class CDiscAdjFluidIteration final : public CIteration {
* \param[in] iZone - Index of the zone.
* \param[in] iInst - Index of the instance.
*/
void RegisterOutput(CSolver***** solver, CGeometry**** geometry, CConfig** config, COutput* output,
void RegisterOutput(CSolver***** solver, CGeometry**** geometry, CConfig** config,
unsigned short iZone, unsigned short iInst) override;

/*!
Expand Down
25 changes: 9 additions & 16 deletions SU2_CFD/include/iteration/CDiscAdjHeatIteration.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ class CDiscAdjHeatIteration final : public CIteration {
explicit CDiscAdjHeatIteration(const CConfig *config) : CIteration(config) {}

/*!
* \brief Perform a single iteration of the adjoint fluid system.
* \brief Perform a single iteration of the adjoint heat problem.
* \param[in] output - Pointer to the COutput class.
* \param[in] integration - Container vector with all the integration methods.
* \param[in] geometry - Geometrical definition of the problem.
Expand All @@ -76,26 +76,19 @@ class CDiscAdjHeatIteration final : public CIteration {
unsigned short val_iInst) override;

/*!
* \brief Perform a single iteration of the adjoint fluid system.
* \param[in] output - Pointer to the COutput class.
* \param[in] integration - Container vector with all the integration methods.
* \brief Perform a single iteration of the adjoint heat problem.
* \param[in] geometry - Geometrical definition of the problem.
* \param[in] solver - Container vector with all the solutions.
* \param[in] numerics - Description of the numerical method (the way in which the equations are solved).
* \param[in] config - Definition of the particular problem.
* \param[in] surface_movement - Surface movement classes of the problem.
* \param[in] grid_movement - Volume grid movement classes of the problem.
* \param[in] FFDBox - FFD FFDBoxes of the problem.
* \param[in] val_iZone - Index of the zone.
* \param[in] val_iInst - Index of the instance layer.
* \param[in] val_iInst - Index of the instance.
* \param[in] CrossTerm - Boolean for CrossTerm.
*/
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;
void IterateDiscAdj(CGeometry**** geometry, CSolver***** solver, CConfig** config,
unsigned short val_iZone, unsigned short val_iInst, bool CrossTerm) override;

/*!
* \brief Perform a single iteration of the adjoint fluid system.
* \brief Perform a single iteration of the adjoint heat problem.
* \param[in] output - Pointer to the COutput class.
* \param[in] integration - Container vector with all the integration methods.
* \param[in] geometry - Geometrical definition of the problem.
Expand All @@ -114,7 +107,7 @@ class CDiscAdjHeatIteration final : public CIteration {
unsigned short val_iInst) override;

/*!
* \brief Monitors the convergence and other metrics for the discrete adjoint fluid system.
* \brief Monitors the convergence and other metrics for the discrete adjoint heat problem.
*/
bool Monitor(COutput* output, CIntegration**** integration, CGeometry**** geometry, CSolver***** solver,
CNumerics****** numerics, CConfig** config, CSurfaceMovement** surface_movement,
Expand Down Expand Up @@ -152,7 +145,7 @@ class CDiscAdjHeatIteration final : public CIteration {
* \param[in] iZone - Index of the zone.
* \param[in] val_iInst - Index of the instance layer.
*/
void RegisterOutput(CSolver***** solver, CGeometry**** geometry, CConfig** config, COutput* output,
void RegisterOutput(CSolver***** solver, CGeometry**** geometry, CConfig** config,
unsigned short iZone, unsigned short iInst) override;

/*!
Expand Down
2 changes: 2 additions & 0 deletions SU2_CFD/include/iteration/CFEAIteration.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,8 @@ class CFEAIteration : public CIteration {
* \param[in] surface_movement - Surface movement classes of the problem.
* \param[in] grid_movement - Volume grid movement classes of the problem.
* \param[in] FFDBox - FFD FFDBoxes of the problem.
* \param[in] val_iZone - Index of the zone.
* \param[in] val_iInst - Index of the instance layer.
*/
void Iterate(COutput* output, CIntegration**** integration, CGeometry**** geometry, CSolver***** solver,
CNumerics****** numerics, CConfig** config, CSurfaceMovement** surface_movement,
Expand Down
2 changes: 2 additions & 0 deletions SU2_CFD/include/iteration/CFEMFluidIteration.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,8 @@ class CFEMFluidIteration : public CFluidIteration {
* \param[in] surface_movement - Surface movement classes of the problem.
* \param[in] grid_movement - Volume grid movement classes of the problem.
* \param[in] FFDBox - FFD FFDBoxes of the problem.
* \param[in] val_iZone - Index of the zone.
* \param[in] val_iInst - Index of the instance layer.
*/
void Iterate(COutput* output, CIntegration**** integration, CGeometry**** geometry, CSolver***** solver,
CNumerics****** numerics, CConfig** config, CSurfaceMovement** surface_movement,
Expand Down
2 changes: 2 additions & 0 deletions SU2_CFD/include/iteration/CFluidIteration.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,8 @@ class CFluidIteration : public CIteration {
* \param[in] surface_movement - Surface movement classes of the problem.
* \param[in] grid_movement - Volume grid movement classes of the problem.
* \param[in] FFDBox - FFD FFDBoxes of the problem.
* \param[in] val_iZone - Index of the zone.
* \param[in] val_iInst - Index of the instance layer.
*/
void Iterate(COutput* output, CIntegration**** integration, CGeometry**** geometry, CSolver***** solver,
CNumerics****** numerics, CConfig** config, CSurfaceMovement** surface_movement,
Expand Down
2 changes: 2 additions & 0 deletions SU2_CFD/include/iteration/CHeatIteration.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@ class CHeatIteration : public CFluidIteration {
* \param[in] surface_movement - Surface movement classes of the problem.
* \param[in] grid_movement - Volume grid movement classes of the problem.
* \param[in] FFDBox - FFD FFDBoxes of the problem.
* \param[in] val_iZone - Index of the zone.
* \param[in] val_iInst - Index of the instance layer.
*/
void Iterate(COutput* output, CIntegration**** integration, CGeometry**** geometry, CSolver***** solver,
CNumerics****** numerics, CConfig** config, CSurfaceMovement** surface_movement,
Expand Down
Loading