Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/develop' into feature_pysu2_fs…
Browse files Browse the repository at this point in the history
…i_adjoint
  • Loading branch information
pcarruscag committed Jan 2, 2025
2 parents d85e07f + 99e6e54 commit 43d419a
Show file tree
Hide file tree
Showing 1,030 changed files with 2,925 additions and 2,251 deletions.
78 changes: 69 additions & 9 deletions Common/include/CConfig.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* \brief All the information about the definition of the physical problem.
* The subroutines and functions are in the <i>CConfig.cpp</i> file.
* \author F. Palacios, T. Economon, B. Tracey
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down Expand Up @@ -138,6 +138,7 @@ class CConfig {
su2double Buffet_lambda; /*!< \brief Offset parameter for buffet sensor.*/
su2double Damp_Engine_Inflow; /*!< \brief Damping factor for the engine inlet. */
su2double Damp_Engine_Exhaust; /*!< \brief Damping factor for the engine exhaust. */
unsigned long Bc_Eval_Freq; /*!< \brief Evaluation frequency for Engine and Actuator disk markers. */
su2double Damp_Res_Restric, /*!< \brief Damping factor for the residual restriction. */
Damp_Correc_Prolong; /*!< \brief Damping factor for the correction prolongation. */
su2double Position_Plane; /*!< \brief Position of the Near-Field (y coordinate 2D, and z coordinate 3D). */
Expand Down Expand Up @@ -192,6 +193,7 @@ class CConfig {
nMarker_Fluid_Load, /*!< \brief Number of markers in which the flow load is computed/employed. */
nMarker_Fluid_InterfaceBound, /*!< \brief Number of fluid interface markers. */
nMarker_CHTInterface, /*!< \brief Number of conjugate heat transfer interface markers. */
nMarker_ContactResistance, /*!< \brief Number of CHT interfaces with contact resistance. */
nMarker_Inlet, /*!< \brief Number of inlet flow markers. */
nMarker_Inlet_Species, /*!< \brief Number of inlet species markers. */
nSpecies_per_Inlet, /*!< \brief Number of species defined per inlet markers. */
Expand Down Expand Up @@ -235,6 +237,7 @@ class CConfig {
*Marker_MixingPlaneInterface, /*!< \brief MixingPlane interface boundary markers. */
*Marker_TurboBoundIn, /*!< \brief Turbomachinery performance boundary markers. */
*Marker_TurboBoundOut, /*!< \brief Turbomachinery performance boundary donor markers. */
*Marker_Turbomachinery, /*!< \breif Turbomachinery markers */
*Marker_NearFieldBound, /*!< \brief Near Field boundaries markers. */
*Marker_Deform_Mesh, /*!< \brief Deformable markers at the boundary. */
*Marker_Deform_Mesh_Sym_Plane, /*!< \brief Marker with symmetric deformation. */
Expand Down Expand Up @@ -396,6 +399,7 @@ class CConfig {
su2double **Periodic_RotCenter; /*!< \brief Rotational center for each periodic boundary. */
su2double **Periodic_RotAngles; /*!< \brief Rotation angles for each periodic boundary. */
su2double **Periodic_Translation; /*!< \brief Translation vector for each periodic boundary. */
su2double *CHT_ContactResistance; /*!< \brief Contact resistance values for each solid-solid CHT interface. */
string *Marker_CfgFile_TagBound; /*!< \brief Global index for markers using config file. */
unsigned short *Marker_All_KindBC, /*!< \brief Global index for boundaries using grid information. */
*Marker_CfgFile_KindBC; /*!< \brief Global index for boundaries using config file. */
Expand Down Expand Up @@ -440,6 +444,7 @@ class CConfig {

TURBO_PERF_KIND *Kind_TurboPerf; /*!< \brief Kind of turbomachynery architecture.*/
TURBOMACHINERY_TYPE *Kind_TurboMachinery;
su2vector<TURBO_INTERFACE_KIND> Kind_TurboInterface;

/* Gradient smoothing options */
su2double SmoothingEps1; /*!< \brief Parameter for the identity part in gradient smoothing. */
Expand All @@ -463,6 +468,7 @@ class CConfig {
unsigned short* nDV_Value; /*!< \brief Number of values for each design variable (might be different than 1 if we allow arbitrary movement). */
unsigned short nFFDBox; /*!< \brief Number of ffd boxes. */
unsigned short nTurboMachineryKind; /*!< \brief Number turbomachinery types specified. */
unsigned short nTurboInterfaces; /*!< \brief Number of turbomachiery interfaces */
unsigned short nParamDV; /*!< \brief Number of parameters of the design variable. */
string DV_Filename; /*!< \brief Filename for providing surface positions from an external parameterization. */
string DV_Unordered_Sens_Filename; /*!< \brief Filename of volume sensitivities in an unordered ASCII format. */
Expand Down Expand Up @@ -589,6 +595,7 @@ class CConfig {
bool EulerPersson; /*!< \brief Boolean to determine whether this is an Euler simulation with Persson shock capturing. */
bool FSI_Problem = false,/*!< \brief Boolean to determine whether the simulation is FSI or not. */
Multizone_Problem; /*!< \brief Boolean to determine whether we are solving a multizone problem. */
//bool ContactResistance = false; /*!< \brief Apply contact resistance for conjugate heat transfer. */
unsigned short nID_DV; /*!< \brief ID for the region of FEM when computed using direct differentiation. */

bool AD_Mode; /*!< \brief Algorithmic Differentiation support. */
Expand Down Expand Up @@ -742,6 +749,7 @@ class CConfig {
*Marker_All_Turbomachinery, /*!< \brief Global index for Turbomachinery markers using the grid information. */
*Marker_All_TurbomachineryFlag, /*!< \brief Global index for Turbomachinery markers flag using the grid information. */
*Marker_All_MixingPlaneInterface, /*!< \brief Global index for MixingPlane interface markers using the grid information. */
*Marker_All_Giles, /*!< \brief Global index for Giles markers using the grid information. */
*Marker_All_DV, /*!< \brief Global index for design variable markers using the grid information. */
*Marker_All_Moving, /*!< \brief Global index for moving surfaces using the grid information. */
*Marker_All_Deform_Mesh, /*!< \brief Global index for deformable markers at the boundary. */
Expand All @@ -759,6 +767,7 @@ class CConfig {
*Marker_CfgFile_Turbomachinery, /*!< \brief Global index for Turbomachinery using the config information. */
*Marker_CfgFile_TurbomachineryFlag, /*!< \brief Global index for Turbomachinery flag using the config information. */
*Marker_CfgFile_MixingPlaneInterface, /*!< \brief Global index for MixingPlane interface using the config information. */
*Marker_CfgFile_Giles, /*!< \brief Global index for Giles markers flag using the config information. */
*Marker_CfgFile_Moving, /*!< \brief Global index for moving surfaces using the config information. */
*Marker_CfgFile_Deform_Mesh, /*!< \brief Global index for deformable markers at the boundary. */
*Marker_CfgFile_Deform_Mesh_Sym_Plane, /*!< \brief Global index for markers with symmetric deformations. */
Expand Down Expand Up @@ -995,7 +1004,7 @@ class CConfig {
bool ExtraOutput; /*!< \brief Check if extra output need. */
bool Wall_Functions; /*!< \brief Use wall functions with the turbulence model */
long ExtraHeatOutputZone; /*!< \brief Heat solver zone with extra screen output */
bool DeadLoad; /*!< \brief Application of dead loads to the FE analysis */
bool CentrifugalForce; /*!< \brief Application of centrifugal forces to the FE analysis */
bool PseudoStatic; /*!< \brief Application of dead loads to the FE analysis */
bool SteadyRestart; /*!< \brief Restart from a steady state for FSI problems. */
su2double Newmark_beta, /*!< \brief Parameter alpha for Newmark method. */
Expand All @@ -1004,10 +1013,13 @@ class CConfig {
su2double *Int_Coeffs; /*!< \brief Time integration coefficients for structural method. */
unsigned short nElasticityMod, /*!< \brief Number of different values for the elasticity modulus. */
nPoissonRatio, /*!< \brief Number of different values for the Poisson ratio modulus. */
nMaterialDensity; /*!< \brief Number of different values for the Material density. */
nMaterialDensity, /*!< \brief Number of different values for the Material density. */
nMaterialThermalExpansion; /*!< \brief Number of different values for thermal expansion coefficient. */
su2double *ElasticityMod, /*!< \brief Value of the elasticity moduli. */
*PoissonRatio, /*!< \brief Value of the Poisson ratios. */
*MaterialDensity; /*!< \brief Value of the Material densities. */
*MaterialDensity, /*!< \brief Value of the Material densities. */
*MaterialThermalExpansion, /*!< \brief Value of the thermal expansion coefficients. */
MaterialReferenceTemperature; /*!< \brief Value of the reference temperature for thermal expansion. */
unsigned short nElectric_Field, /*!< \brief Number of different values for the electric field in the membrane. */
nDim_Electric_Field; /*!< \brief Dimensionality of the problem. */
unsigned short nDim_RefNode; /*!< \brief Dimensionality of the vector . */
Expand Down Expand Up @@ -1101,7 +1113,7 @@ class CConfig {
bool Radiation; /*!< \brief Determines if a radiation model is incorporated. */
su2double CFL_Rad; /*!< \brief CFL Number for the radiation solver. */

array<su2double,5> default_cfl_adapt; /*!< \brief Default CFL adapt param array for the COption class. */
array<su2double,6> default_cfl_adapt; /*!< \brief Default CFL adapt param array for the COption class. */
su2double vel_init[3], /*!< \brief initial velocity array for the COption class. */
vel_inf[3], /*!< \brief freestream velocity array for the COption class. */
eng_cyl[7], /*!< \brief engine box array for the COption class. */
Expand Down Expand Up @@ -1372,7 +1384,7 @@ class CConfig {
su2double** & RotCenter, su2double** & RotAngles, su2double** & Translation);

void addTurboPerfOption(const string & name, unsigned short & nMarker_TurboPerf,
string* & Marker_TurboBoundIn, string* & Marker_TurboBoundOut);
string* & Marker_TurboBoundIn, string* & Marker_TurboBoundOut, string* & Marker_Turbomachinery);

void addActDiskOption(const string & name,
unsigned short & nMarker_ActDiskInlet, unsigned short & nMarker_ActDiskOutlet, string* & Marker_ActDiskInlet, string* & Marker_ActDiskOutlet,
Expand Down Expand Up @@ -2381,6 +2393,16 @@ class CConfig {
*/
su2double GetMaterialDensity(unsigned short id_val) const { return MaterialDensity[id_val]; }

/*!
* \brief Get the thermal expansion coefficient.
*/
su2double GetMaterialThermalExpansion(unsigned short id_val) const { return MaterialThermalExpansion[id_val]; }

/*!
* \brief Temperature at which there is no stress from thermal expansion.
*/
su2double GetMaterialReferenceTemperature() const { return MaterialReferenceTemperature; }

/*!
* \brief Compressibility/incompressibility of the solids analysed using the structural solver.
* \return Compressible or incompressible.
Expand Down Expand Up @@ -3510,6 +3532,13 @@ class CConfig {
*/
void SetMarker_All_MixingPlaneInterface(unsigned short val_marker, unsigned short val_mixpla_interface) { Marker_All_MixingPlaneInterface[val_marker] = val_mixpla_interface; }

/*!
* \brief Set if a marker <i>val_marker</i> is part of the Giles boundary (read from the config file).
* \param[in] val_marker - Index of the marker in which we are interested.
* \param[in] val_giles - 0 if not part of the Giles boundary or greater than 1 if it is part.
*/
void SetMarker_All_Giles(unsigned short val_marker, unsigned short val_giles) { Marker_All_Giles[val_marker] = val_giles; }

/*!
* \brief Set if a marker <i>val_marker</i> is going to be affected by design variables <i>val_moving</i>
* (read from the config file).
Expand Down Expand Up @@ -3656,13 +3685,27 @@ class CConfig {
*/
unsigned short GetMarker_All_TurbomachineryFlag(unsigned short val_marker) const { return Marker_All_TurbomachineryFlag[val_marker]; }

/*!
* \brief Get the Giles boundary information for a marker <i>val_marker</i>.
* \param[in] val_marker value of the marker on the grid.
* \return 0 if is not part of the MixingPlane Interface and greater than 1 if it is part.
*/
unsigned short GetMarker_All_Giles(unsigned short val_marker) const { return Marker_All_Giles[val_marker]; }

/*!
* \brief Get the number of FSI interface markers <i>val_marker</i>.
* \param[in] void.
* \return Number of markers belonging to the FSI interface.
*/
unsigned short GetMarker_n_ZoneInterface(void) const { return nMarker_ZoneInterface; }

/*!
* \brief Get the contact resistance value of a specified interface.
* \param[in] val_interface interface index.
* \return Contact resistance value (zero by default).
*/
su2double GetContactResistance(unsigned short val_interface) const { return (nMarker_ContactResistance > 0) ? CHT_ContactResistance[val_interface] : 0.0; }

/*!
* \brief Get the DV information for a marker <i>val_marker</i>.
* \param[in] val_marker - 0 or 1 depending if the the marker is going to be affected by design variables.
Expand Down Expand Up @@ -5325,6 +5368,12 @@ class CConfig {
*/
TURBO_PERF_KIND GetKind_TurboPerf(unsigned short val_iZone) const { return Kind_TurboPerf[val_iZone]; };

/*!
* \brief gets interface kind for an interface marker in turbomachinery problem
* \return interface kind
*/
TURBO_INTERFACE_KIND GetKind_TurboInterface(unsigned short interfaceIndex) const { return Kind_TurboInterface[interfaceIndex]; }

/*!
* \brief get outlet bounds name for Turbomachinery performance calculation.
* \return name of the bound.
Expand Down Expand Up @@ -6388,6 +6437,12 @@ class CConfig {
*/
unsigned short GetMarker_CfgFile_MixingPlaneInterface(const string& val_marker) const;

/*!
* \brief Get the Giles boundary information from the config definition for the marker <i>val_marker</i>.
* \return Plotting information of the boundary in the config information for the marker <i>val_marker</i>.
*/
unsigned short GetMarker_CfgFile_Giles(const string& val_marker) const;

/*!
* \brief Get the DV information from the config definition for the marker <i>val_marker</i>.
* \return DV information of the boundary in the config information for the marker <i>val_marker</i>.
Expand Down Expand Up @@ -6506,6 +6561,12 @@ class CConfig {
*/
su2double GetMinLogResidual(void) const { return MinLogResidual; }

/*!
* \brief Evaluation frequency for Engine and Actuator disk markers.
* \return Value Evaluation frequency .
*/
unsigned long GetBc_Eval_Freq(void) const { return Bc_Eval_Freq; }

/*!
* \brief Value of the damping factor for the engine inlet bc.
* \return Value of the damping factor.
Expand Down Expand Up @@ -8888,10 +8949,9 @@ class CConfig {
su2double GetAitkenDynMinInit(void) const { return AitkenDynMinInit; }

/*!
* \brief Decide whether to apply dead loads to the model.
* \return <code>TRUE</code> if the dead loads are to be applied, <code>FALSE</code> otherwise.
* \brief Decide whether to apply centrifugal forces to the model.
*/
bool GetDeadLoad(void) const { return DeadLoad; }
bool GetCentrifugalForce(void) const { return CentrifugalForce; }

/*!
* \brief Identifies if the mesh is matching or not (temporary, while implementing interpolation procedures).
Expand Down
2 changes: 1 addition & 1 deletion Common/include/adt/CADTBaseClass.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file CADTBaseClass.hpp
* \brief Base class for storing an ADT in an arbitrary number of dimensions.
* \author E. van der Weide
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
2 changes: 1 addition & 1 deletion Common/include/adt/CADTComparePointClass.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file CADTComparePointClass.hpp
* \brief subroutines for comparing two points in an alternating digital tree (ADT).
* \author E. van der Weide
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
4 changes: 2 additions & 2 deletions Common/include/adt/CADTElemClass.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file CADTElemClass.hpp
* \brief Class for storing an ADT of (linear) elements in an arbitrary number of dimensions.
* \author E. van der Weide
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down Expand Up @@ -36,7 +36,7 @@
* \ingroup ADT
* \brief Class for storing an ADT of (linear) elements in an arbitrary number of dimensions.
* \author E. van der Weide
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*/
class CADTElemClass : public CADTBaseClass {
private:
Expand Down
2 changes: 1 addition & 1 deletion Common/include/adt/CADTNodeClass.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file CADTNodeClass.hpp
* \brief Class for storing the information needed in a node of an ADT.
* \author E. van der Weide
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
2 changes: 1 addition & 1 deletion Common/include/adt/CADTPointsOnlyClass.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file CADTPointsOnlyClass.hpp
* \brief Class for storing an ADT of only points in an arbitrary number of dimensions.
* \author E. van der Weide
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
4 changes: 2 additions & 2 deletions Common/include/adt/CBBoxTargetClass.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* \brief Class for storing the information of a possible bounding box candidate
during a minimum distance search.
* \author E. van der Weide
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down Expand Up @@ -35,7 +35,7 @@
* \brief Class for storing the information of a possible bounding box candidate
during a minimum distance search.
* \author E. van der Weide
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*/
struct CBBoxTargetClass {
unsigned long boundingBoxID; /*!< \brief Corresponding bounding box ID. */
Expand Down
2 changes: 1 addition & 1 deletion Common/include/basic_types/ad_structure.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file ad_structure.hpp
* \brief Main routines for the algorithmic differentiation (AD) structure.
* \author T. Albring, J. Blühdorn
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
2 changes: 1 addition & 1 deletion Common/include/basic_types/datatype_structure.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file datatype_structure.hpp
* \brief Headers for generalized datatypes, defines an interface for AD types.
* \author T. Albring
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
2 changes: 1 addition & 1 deletion Common/include/code_config.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file code_config.hpp
* \brief Header file for collecting common macros, definitions and type configurations.
* \author T. Albring, P. Gomes, J. Blühdorn
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
2 changes: 1 addition & 1 deletion Common/include/containers/C2DContainer.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file C2DContainer.hpp
* \brief A templated vector/matrix object.
* \author P. Gomes
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
2 changes: 1 addition & 1 deletion Common/include/containers/CFastFindAndEraseQueue.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* \brief A queue-type container (push back, pop front), but with
* fast deletion of arbitrary items (possibly in the middle).
* \author P. Gomes
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
2 changes: 1 addition & 1 deletion Common/include/containers/CFileReaderLUT.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file CFileReaderLUT.hpp
* \brief reading lookup table for tabulated fluid properties
* \author D. Mayer, T. Economon
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
2 changes: 1 addition & 1 deletion Common/include/containers/CLookUpTable.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file CLookupTable.hpp
* \brief tabulation of fluid properties
* \author D. Mayer, T. Economon
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
2 changes: 1 addition & 1 deletion Common/include/containers/CPyWrapperMatrixView.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file CPyWrapperMatrixView.hpp
* \brief Simple matrix views to use with the python wrapper.
* \author P. Gomes
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down
4 changes: 2 additions & 2 deletions Common/include/containers/CTrapezoidalMap.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* \file CTrapezoidalMap.hpp
* \brief Implementation of the trapezoidal map for tabulation and lookup of fluid properties
* \author D. Mayer, T. Economon
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*
* SU2 Project Website: https://su2code.github.io
*
Expand Down Expand Up @@ -38,7 +38,7 @@
* \ingroup LookUpInterp
* \brief Construction of trapezoidal map for tabulated lookup
* \author: D. Mayer, T. Economon
* \version 8.0.1 "Harrier"
* \version 8.1.0 "Harrier"
*/
class CTrapezoidalMap {
protected:
Expand Down
Loading

0 comments on commit 43d419a

Please sign in to comment.