@@ -132,6 +132,7 @@ class CConfig {
132132 Sens_Remove_Sharp, /* !< \brief Flag for removing or not the sharp edges from the sensitivity computation. */
133133 Hold_GridFixed, /* !< \brief Flag hold fixed some part of the mesh during the deformation. */
134134 Axisymmetric, /* !< \brief Flag for axisymmetric calculations */
135+ Enable_Cuda, /* !< \brief Flag for switching GPU computing*/
135136 Integrated_HeatFlux; /* !< \brief Flag for heat flux BC whether it deals with integrated values.*/
136137 su2double Buffet_k; /* !< \brief Sharpness coefficient for buffet sensor.*/
137138 su2double Buffet_lambda; /* !< \brief Offset parameter for buffet sensor.*/
@@ -590,14 +591,17 @@ class CConfig {
590591 MUSCL_AdjTurb; /* !< \brief MUSCL scheme for the adj turbulence equations.*/
591592 bool MUSCL_Species; /* !< \brief MUSCL scheme for the species equations.*/
592593 bool Use_Accurate_Jacobians; /* !< \brief Use numerically computed Jacobians for AUSM+up(2) and SLAU(2). */
594+ bool Use_Accurate_Turb_Jacobians; /* !< \brief Use numerically computed Jacobians for standard SA turbulence model. */
593595 bool EulerPersson; /* !< \brief Boolean to determine whether this is an Euler simulation with Persson shock capturing. */
594596 bool FSI_Problem = false ,/* !< \brief Boolean to determine whether the simulation is FSI or not. */
595597 Multizone_Problem; /* !< \brief Boolean to determine whether we are solving a multizone problem. */
596598 // bool ContactResistance = false; /*!< \brief Apply contact resistance for conjugate heat transfer. */
597599 unsigned short nID_DV; /* !< \brief ID for the region of FEM when computed using direct differentiation. */
598600
599- bool AD_Mode; /* !< \brief Algorithmic Differentiation support. */
600- bool AD_Preaccumulation; /* !< \brief Enable or disable preaccumulation in the AD mode. */
601+ bool AD_Mode; /* !< \brief Algorithmic Differentiation support. */
602+ bool AD_Preaccumulation; /* !< \brief Enable or disable preaccumulation in the AD mode. */
603+ CHECK_TAPE_TYPE AD_CheckTapeType; /* !< \brief Type of tape that is checked in a tape debug run. */
604+ CHECK_TAPE_VARIABLES AD_CheckTapeVariables; /* !< \brief Type of variables that are checked in a tape debug run. */
601605 STRUCT_COMPRESS Kind_Material_Compress; /* !< \brief Determines if the material is compressible or incompressible (structural analysis). */
602606 STRUCT_MODEL Kind_Material; /* !< \brief Determines the material model to be used (structural analysis). */
603607 STRUCT_DEFORMATION Kind_Struct_Solver; /* !< \brief Determines the geometric condition (small or large deformations) for structural analysis. */
@@ -821,6 +825,7 @@ class CConfig {
821825 SurfSens_FileName, /* !< \brief Output file for the sensitivity on the surface (discrete adjoint). */
822826 VolSens_FileName, /* !< \brief Output file for the sensitivity in the volume (discrete adjoint). */
823827 ObjFunc_Hess_FileName; /* !< \brief Hessian approximation obtained by the Sobolev smoothing solver. */
828+ bool Multizone_Adapt_FileName; /* !< \brief Append zone number to solution and restart file names. */
824829
825830 bool
826831 Wrt_Performance, /* !< \brief Write the performance summary at the end of a calculation. */
@@ -1054,7 +1059,8 @@ class CConfig {
10541059 long ParMETIS_pointWgt; /* !< \brief Load balancing weight given to points. */
10551060 long ParMETIS_edgeWgt; /* !< \brief Load balancing weight given to edges. */
10561061 unsigned short DirectDiff; /* !< \brief Direct Differentation mode. */
1057- bool DiscreteAdjoint; /* !< \brief AD-based discrete adjoint mode. */
1062+ bool DiscreteAdjoint, /* !< \brief AD-based discrete adjoint mode. */
1063+ DiscreteAdjointDebug; /* !< \brief Discrete adjoint debug mode using tags. */
10581064 su2double Const_DES; /* !< \brief Detached Eddy Simulation Constant. */
10591065 WINDOW_FUNCTION Kind_WindowFct; /* !< \brief Type of window (weight) function for objective functional. */
10601066 unsigned short Kind_HybridRANSLES; /* !< \brief Kind of Hybrid RANS/LES. */
@@ -1897,6 +1903,12 @@ class CConfig {
18971903 */
18981904 su2double GetPressure_FreeStreamND (void ) const { return Pressure_FreeStreamND; }
18991905
1906+ /* !
1907+ * \brief Get a reference to the non-dimensionalized freestream pressure (used for AD tracking).
1908+ * \return Reference to non-dimensionalized freestream pressure.
1909+ */
1910+ su2double& GetPressure_FreeStreamND (void ) { return Pressure_FreeStreamND; }
1911+
19001912 /* !
19011913 * \brief Get the value of the thermodynamic pressure.
19021914 * \return Thermodynamic pressure.
@@ -1922,6 +1934,12 @@ class CConfig {
19221934 */
19231935 su2double GetTemperature_FreeStreamND (void ) const { return Temperature_FreeStreamND; }
19241936
1937+ /* !
1938+ * \brief Get a reference to the non-dimensionalized freestream temperature (used for AD tracking).
1939+ * \return Reference to non-dimensionalized freestream temperature.
1940+ */
1941+ su2double& GetTemperature_FreeStreamND (void ) { return Temperature_FreeStreamND; }
1942+
19251943 /* !
19261944 * \brief Get the value of the non-dimensionalized vibrational-electronic freestream temperature.
19271945 * \return Non-dimensionalized vibrational-electronic freestream temperature.
@@ -4500,6 +4518,12 @@ class CConfig {
45004518 */
45014519 bool GetUse_Accurate_Jacobians (void ) const { return Use_Accurate_Jacobians; }
45024520
4521+ /* !
4522+ * \brief Get whether to "Use Accurate Jacobians" for Standard SA turbulence model.
4523+ * \return yes/no.
4524+ */
4525+ bool GetUse_Accurate_Turb_Jacobians (void ) const { return Use_Accurate_Turb_Jacobians; }
4526+
45034527 /* !
45044528 * \brief Get the kind of integration scheme (explicit or implicit)
45054529 * for the flow equations.
@@ -5384,19 +5408,25 @@ class CConfig {
53845408 bool GetWrt_Volume_Overwrite (void ) const { return Wrt_Volume_Overwrite; }
53855409
53865410 /* !
5387- * \brief Provides the number of varaibles.
5411+ * \brief Get whether filenames are appended the zone number automatically (multiphysics solver).
5412+ * \return Flag for appending zone numbers to restart and solution filenames. If Flag=true, zone numer is appended.
5413+ */
5414+ bool GetMultizone_AdaptFilename (void ) const { return Multizone_Adapt_FileName; }
5415+
5416+ /* !
5417+ * \brief Provides the number of variables.
53885418 * \return Number of variables.
53895419 */
53905420 unsigned short GetnVar (void );
53915421
53925422 /* !
5393- * \brief Provides the number of varaibles .
5423+ * \brief Provides the number of variables .
53945424 * \return Number of variables.
53955425 */
53965426 unsigned short GetnZone (void ) const { return nZone; }
53975427
53985428 /* !
5399- * \brief Provides the number of varaibles .
5429+ * \brief Provides the number of variables .
54005430 * \return Number of variables.
54015431 */
54025432 unsigned short GetiZone (void ) const { return iZone; }
@@ -6193,6 +6223,12 @@ class CConfig {
61936223 */
61946224 bool GetAxisymmetric (void ) const { return Axisymmetric; }
61956225
6226+ /* !
6227+ * \brief Get information about GPU support.
6228+ * \return <code>TRUE</code> if cuda is enabled; otherwise <code>FALSE</code>.
6229+ */
6230+ bool GetCUDA (void ) const { return Enable_Cuda; }
6231+
61966232 /* !
61976233 * \brief Subtract one to the index of the finest grid (full multigrid strategy).
61986234 * \return Change the index of the finest grid.
@@ -8773,6 +8809,12 @@ class CConfig {
87738809 */
87748810 bool GetDiscrete_Adjoint (void ) const { return DiscreteAdjoint; }
87758811
8812+ /* !
8813+ * \brief Get the indicator whether a debug run for the discrete adjoint solver will be started.
8814+ * \return the discrete adjoint debug indicator.
8815+ */
8816+ bool GetDiscrete_Adjoint_Debug (void ) const { return DiscreteAdjointDebug; }
8817+
87768818 /* !
87778819 * \brief Get the number of subiterations while a ramp is applied.
87788820 * \return Number of FSI subiters.
@@ -9222,6 +9264,16 @@ class CConfig {
92229264 */
92239265 su2double GetConst_DES (void ) const { return Const_DES; }
92249266
9267+ /* !
9268+ * \brief Get the type of tape that will be checked in a tape debug run.
9269+ */
9270+ CHECK_TAPE_TYPE GetAD_CheckTapeType (void ) const { return AD_CheckTapeType; }
9271+
9272+ /* !
9273+ * \brief Get the type of variables that will be checked for in a tape debug run.
9274+ */
9275+ CHECK_TAPE_VARIABLES GetAD_CheckTapeVariables (void ) const { return AD_CheckTapeVariables; }
9276+
92259277 /* !
92269278 * \brief Get if AD preaccumulation should be performed.
92279279 */
@@ -9611,6 +9663,11 @@ class CConfig {
96119663 */
96129664 unsigned short GetnVolumeOutputFiles () const { return nVolumeOutputFiles; }
96139665
9666+ /* !
9667+ * \brief GetnVolumeOutputFrequencies
9668+ */
9669+ unsigned short GetnVolumeOutputFrequencies () const { return nVolumeOutputFrequencies; }
9670+
96149671 /* !
96159672 * \brief GetVolumeOutputFrequency
96169673 * \param[in] iFile: index of file number for which the writing frequency needs to be returned.
0 commit comments