Skip to content

Commit 43d419a

Browse files
committed
Merge remote-tracking branch 'upstream/develop' into feature_pysu2_fsi_adjoint
2 parents d85e07f + 99e6e54 commit 43d419a

File tree

1,030 files changed

+2925
-2251
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,030 files changed

+2925
-2251
lines changed

Common/include/CConfig.hpp

Lines changed: 69 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* \brief All the information about the definition of the physical problem.
44
* The subroutines and functions are in the <i>CConfig.cpp</i> file.
55
* \author F. Palacios, T. Economon, B. Tracey
6-
* \version 8.0.1 "Harrier"
6+
* \version 8.1.0 "Harrier"
77
*
88
* SU2 Project Website: https://su2code.github.io
99
*
@@ -138,6 +138,7 @@ class CConfig {
138138
su2double Buffet_lambda; /*!< \brief Offset parameter for buffet sensor.*/
139139
su2double Damp_Engine_Inflow; /*!< \brief Damping factor for the engine inlet. */
140140
su2double Damp_Engine_Exhaust; /*!< \brief Damping factor for the engine exhaust. */
141+
unsigned long Bc_Eval_Freq; /*!< \brief Evaluation frequency for Engine and Actuator disk markers. */
141142
su2double Damp_Res_Restric, /*!< \brief Damping factor for the residual restriction. */
142143
Damp_Correc_Prolong; /*!< \brief Damping factor for the correction prolongation. */
143144
su2double Position_Plane; /*!< \brief Position of the Near-Field (y coordinate 2D, and z coordinate 3D). */
@@ -192,6 +193,7 @@ class CConfig {
192193
nMarker_Fluid_Load, /*!< \brief Number of markers in which the flow load is computed/employed. */
193194
nMarker_Fluid_InterfaceBound, /*!< \brief Number of fluid interface markers. */
194195
nMarker_CHTInterface, /*!< \brief Number of conjugate heat transfer interface markers. */
196+
nMarker_ContactResistance, /*!< \brief Number of CHT interfaces with contact resistance. */
195197
nMarker_Inlet, /*!< \brief Number of inlet flow markers. */
196198
nMarker_Inlet_Species, /*!< \brief Number of inlet species markers. */
197199
nSpecies_per_Inlet, /*!< \brief Number of species defined per inlet markers. */
@@ -235,6 +237,7 @@ class CConfig {
235237
*Marker_MixingPlaneInterface, /*!< \brief MixingPlane interface boundary markers. */
236238
*Marker_TurboBoundIn, /*!< \brief Turbomachinery performance boundary markers. */
237239
*Marker_TurboBoundOut, /*!< \brief Turbomachinery performance boundary donor markers. */
240+
*Marker_Turbomachinery, /*!< \breif Turbomachinery markers */
238241
*Marker_NearFieldBound, /*!< \brief Near Field boundaries markers. */
239242
*Marker_Deform_Mesh, /*!< \brief Deformable markers at the boundary. */
240243
*Marker_Deform_Mesh_Sym_Plane, /*!< \brief Marker with symmetric deformation. */
@@ -396,6 +399,7 @@ class CConfig {
396399
su2double **Periodic_RotCenter; /*!< \brief Rotational center for each periodic boundary. */
397400
su2double **Periodic_RotAngles; /*!< \brief Rotation angles for each periodic boundary. */
398401
su2double **Periodic_Translation; /*!< \brief Translation vector for each periodic boundary. */
402+
su2double *CHT_ContactResistance; /*!< \brief Contact resistance values for each solid-solid CHT interface. */
399403
string *Marker_CfgFile_TagBound; /*!< \brief Global index for markers using config file. */
400404
unsigned short *Marker_All_KindBC, /*!< \brief Global index for boundaries using grid information. */
401405
*Marker_CfgFile_KindBC; /*!< \brief Global index for boundaries using config file. */
@@ -440,6 +444,7 @@ class CConfig {
440444

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

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

594601
bool AD_Mode; /*!< \brief Algorithmic Differentiation support. */
@@ -742,6 +749,7 @@ class CConfig {
742749
*Marker_All_Turbomachinery, /*!< \brief Global index for Turbomachinery markers using the grid information. */
743750
*Marker_All_TurbomachineryFlag, /*!< \brief Global index for Turbomachinery markers flag using the grid information. */
744751
*Marker_All_MixingPlaneInterface, /*!< \brief Global index for MixingPlane interface markers using the grid information. */
752+
*Marker_All_Giles, /*!< \brief Global index for Giles markers using the grid information. */
745753
*Marker_All_DV, /*!< \brief Global index for design variable markers using the grid information. */
746754
*Marker_All_Moving, /*!< \brief Global index for moving surfaces using the grid information. */
747755
*Marker_All_Deform_Mesh, /*!< \brief Global index for deformable markers at the boundary. */
@@ -759,6 +767,7 @@ class CConfig {
759767
*Marker_CfgFile_Turbomachinery, /*!< \brief Global index for Turbomachinery using the config information. */
760768
*Marker_CfgFile_TurbomachineryFlag, /*!< \brief Global index for Turbomachinery flag using the config information. */
761769
*Marker_CfgFile_MixingPlaneInterface, /*!< \brief Global index for MixingPlane interface using the config information. */
770+
*Marker_CfgFile_Giles, /*!< \brief Global index for Giles markers flag using the config information. */
762771
*Marker_CfgFile_Moving, /*!< \brief Global index for moving surfaces using the config information. */
763772
*Marker_CfgFile_Deform_Mesh, /*!< \brief Global index for deformable markers at the boundary. */
764773
*Marker_CfgFile_Deform_Mesh_Sym_Plane, /*!< \brief Global index for markers with symmetric deformations. */
@@ -995,7 +1004,7 @@ class CConfig {
9951004
bool ExtraOutput; /*!< \brief Check if extra output need. */
9961005
bool Wall_Functions; /*!< \brief Use wall functions with the turbulence model */
9971006
long ExtraHeatOutputZone; /*!< \brief Heat solver zone with extra screen output */
998-
bool DeadLoad; /*!< \brief Application of dead loads to the FE analysis */
1007+
bool CentrifugalForce; /*!< \brief Application of centrifugal forces to the FE analysis */
9991008
bool PseudoStatic; /*!< \brief Application of dead loads to the FE analysis */
10001009
bool SteadyRestart; /*!< \brief Restart from a steady state for FSI problems. */
10011010
su2double Newmark_beta, /*!< \brief Parameter alpha for Newmark method. */
@@ -1004,10 +1013,13 @@ class CConfig {
10041013
su2double *Int_Coeffs; /*!< \brief Time integration coefficients for structural method. */
10051014
unsigned short nElasticityMod, /*!< \brief Number of different values for the elasticity modulus. */
10061015
nPoissonRatio, /*!< \brief Number of different values for the Poisson ratio modulus. */
1007-
nMaterialDensity; /*!< \brief Number of different values for the Material density. */
1016+
nMaterialDensity, /*!< \brief Number of different values for the Material density. */
1017+
nMaterialThermalExpansion; /*!< \brief Number of different values for thermal expansion coefficient. */
10081018
su2double *ElasticityMod, /*!< \brief Value of the elasticity moduli. */
10091019
*PoissonRatio, /*!< \brief Value of the Poisson ratios. */
1010-
*MaterialDensity; /*!< \brief Value of the Material densities. */
1020+
*MaterialDensity, /*!< \brief Value of the Material densities. */
1021+
*MaterialThermalExpansion, /*!< \brief Value of the thermal expansion coefficients. */
1022+
MaterialReferenceTemperature; /*!< \brief Value of the reference temperature for thermal expansion. */
10111023
unsigned short nElectric_Field, /*!< \brief Number of different values for the electric field in the membrane. */
10121024
nDim_Electric_Field; /*!< \brief Dimensionality of the problem. */
10131025
unsigned short nDim_RefNode; /*!< \brief Dimensionality of the vector . */
@@ -1101,7 +1113,7 @@ class CConfig {
11011113
bool Radiation; /*!< \brief Determines if a radiation model is incorporated. */
11021114
su2double CFL_Rad; /*!< \brief CFL Number for the radiation solver. */
11031115

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

13741386
void addTurboPerfOption(const string & name, unsigned short & nMarker_TurboPerf,
1375-
string* & Marker_TurboBoundIn, string* & Marker_TurboBoundOut);
1387+
string* & Marker_TurboBoundIn, string* & Marker_TurboBoundOut, string* & Marker_Turbomachinery);
13761388

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

2396+
/*!
2397+
* \brief Get the thermal expansion coefficient.
2398+
*/
2399+
su2double GetMaterialThermalExpansion(unsigned short id_val) const { return MaterialThermalExpansion[id_val]; }
2400+
2401+
/*!
2402+
* \brief Temperature at which there is no stress from thermal expansion.
2403+
*/
2404+
su2double GetMaterialReferenceTemperature() const { return MaterialReferenceTemperature; }
2405+
23842406
/*!
23852407
* \brief Compressibility/incompressibility of the solids analysed using the structural solver.
23862408
* \return Compressible or incompressible.
@@ -3510,6 +3532,13 @@ class CConfig {
35103532
*/
35113533
void SetMarker_All_MixingPlaneInterface(unsigned short val_marker, unsigned short val_mixpla_interface) { Marker_All_MixingPlaneInterface[val_marker] = val_mixpla_interface; }
35123534

3535+
/*!
3536+
* \brief Set if a marker <i>val_marker</i> is part of the Giles boundary (read from the config file).
3537+
* \param[in] val_marker - Index of the marker in which we are interested.
3538+
* \param[in] val_giles - 0 if not part of the Giles boundary or greater than 1 if it is part.
3539+
*/
3540+
void SetMarker_All_Giles(unsigned short val_marker, unsigned short val_giles) { Marker_All_Giles[val_marker] = val_giles; }
3541+
35133542
/*!
35143543
* \brief Set if a marker <i>val_marker</i> is going to be affected by design variables <i>val_moving</i>
35153544
* (read from the config file).
@@ -3656,13 +3685,27 @@ class CConfig {
36563685
*/
36573686
unsigned short GetMarker_All_TurbomachineryFlag(unsigned short val_marker) const { return Marker_All_TurbomachineryFlag[val_marker]; }
36583687

3688+
/*!
3689+
* \brief Get the Giles boundary information for a marker <i>val_marker</i>.
3690+
* \param[in] val_marker value of the marker on the grid.
3691+
* \return 0 if is not part of the MixingPlane Interface and greater than 1 if it is part.
3692+
*/
3693+
unsigned short GetMarker_All_Giles(unsigned short val_marker) const { return Marker_All_Giles[val_marker]; }
3694+
36593695
/*!
36603696
* \brief Get the number of FSI interface markers <i>val_marker</i>.
36613697
* \param[in] void.
36623698
* \return Number of markers belonging to the FSI interface.
36633699
*/
36643700
unsigned short GetMarker_n_ZoneInterface(void) const { return nMarker_ZoneInterface; }
36653701

3702+
/*!
3703+
* \brief Get the contact resistance value of a specified interface.
3704+
* \param[in] val_interface interface index.
3705+
* \return Contact resistance value (zero by default).
3706+
*/
3707+
su2double GetContactResistance(unsigned short val_interface) const { return (nMarker_ContactResistance > 0) ? CHT_ContactResistance[val_interface] : 0.0; }
3708+
36663709
/*!
36673710
* \brief Get the DV information for a marker <i>val_marker</i>.
36683711
* \param[in] val_marker - 0 or 1 depending if the the marker is going to be affected by design variables.
@@ -5325,6 +5368,12 @@ class CConfig {
53255368
*/
53265369
TURBO_PERF_KIND GetKind_TurboPerf(unsigned short val_iZone) const { return Kind_TurboPerf[val_iZone]; };
53275370

5371+
/*!
5372+
* \brief gets interface kind for an interface marker in turbomachinery problem
5373+
* \return interface kind
5374+
*/
5375+
TURBO_INTERFACE_KIND GetKind_TurboInterface(unsigned short interfaceIndex) const { return Kind_TurboInterface[interfaceIndex]; }
5376+
53285377
/*!
53295378
* \brief get outlet bounds name for Turbomachinery performance calculation.
53305379
* \return name of the bound.
@@ -6388,6 +6437,12 @@ class CConfig {
63886437
*/
63896438
unsigned short GetMarker_CfgFile_MixingPlaneInterface(const string& val_marker) const;
63906439

6440+
/*!
6441+
* \brief Get the Giles boundary information from the config definition for the marker <i>val_marker</i>.
6442+
* \return Plotting information of the boundary in the config information for the marker <i>val_marker</i>.
6443+
*/
6444+
unsigned short GetMarker_CfgFile_Giles(const string& val_marker) const;
6445+
63916446
/*!
63926447
* \brief Get the DV information from the config definition for the marker <i>val_marker</i>.
63936448
* \return DV information of the boundary in the config information for the marker <i>val_marker</i>.
@@ -6506,6 +6561,12 @@ class CConfig {
65066561
*/
65076562
su2double GetMinLogResidual(void) const { return MinLogResidual; }
65086563

6564+
/*!
6565+
* \brief Evaluation frequency for Engine and Actuator disk markers.
6566+
* \return Value Evaluation frequency .
6567+
*/
6568+
unsigned long GetBc_Eval_Freq(void) const { return Bc_Eval_Freq; }
6569+
65096570
/*!
65106571
* \brief Value of the damping factor for the engine inlet bc.
65116572
* \return Value of the damping factor.
@@ -8888,10 +8949,9 @@ class CConfig {
88888949
su2double GetAitkenDynMinInit(void) const { return AitkenDynMinInit; }
88898950

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

88968956
/*!
88978957
* \brief Identifies if the mesh is matching or not (temporary, while implementing interpolation procedures).

Common/include/adt/CADTBaseClass.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* \file CADTBaseClass.hpp
33
* \brief Base class for storing an ADT in an arbitrary number of dimensions.
44
* \author E. van der Weide
5-
* \version 8.0.1 "Harrier"
5+
* \version 8.1.0 "Harrier"
66
*
77
* SU2 Project Website: https://su2code.github.io
88
*

Common/include/adt/CADTComparePointClass.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* \file CADTComparePointClass.hpp
33
* \brief subroutines for comparing two points in an alternating digital tree (ADT).
44
* \author E. van der Weide
5-
* \version 8.0.1 "Harrier"
5+
* \version 8.1.0 "Harrier"
66
*
77
* SU2 Project Website: https://su2code.github.io
88
*

Common/include/adt/CADTElemClass.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* \file CADTElemClass.hpp
33
* \brief Class for storing an ADT of (linear) elements in an arbitrary number of dimensions.
44
* \author E. van der Weide
5-
* \version 8.0.1 "Harrier"
5+
* \version 8.1.0 "Harrier"
66
*
77
* SU2 Project Website: https://su2code.github.io
88
*
@@ -36,7 +36,7 @@
3636
* \ingroup ADT
3737
* \brief Class for storing an ADT of (linear) elements in an arbitrary number of dimensions.
3838
* \author E. van der Weide
39-
* \version 8.0.1 "Harrier"
39+
* \version 8.1.0 "Harrier"
4040
*/
4141
class CADTElemClass : public CADTBaseClass {
4242
private:

Common/include/adt/CADTNodeClass.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* \file CADTNodeClass.hpp
33
* \brief Class for storing the information needed in a node of an ADT.
44
* \author E. van der Weide
5-
* \version 8.0.1 "Harrier"
5+
* \version 8.1.0 "Harrier"
66
*
77
* SU2 Project Website: https://su2code.github.io
88
*

Common/include/adt/CADTPointsOnlyClass.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* \file CADTPointsOnlyClass.hpp
33
* \brief Class for storing an ADT of only points in an arbitrary number of dimensions.
44
* \author E. van der Weide
5-
* \version 8.0.1 "Harrier"
5+
* \version 8.1.0 "Harrier"
66
*
77
* SU2 Project Website: https://su2code.github.io
88
*

Common/include/adt/CBBoxTargetClass.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* \brief Class for storing the information of a possible bounding box candidate
44
during a minimum distance search.
55
* \author E. van der Weide
6-
* \version 8.0.1 "Harrier"
6+
* \version 8.1.0 "Harrier"
77
*
88
* SU2 Project Website: https://su2code.github.io
99
*
@@ -35,7 +35,7 @@
3535
* \brief Class for storing the information of a possible bounding box candidate
3636
during a minimum distance search.
3737
* \author E. van der Weide
38-
* \version 8.0.1 "Harrier"
38+
* \version 8.1.0 "Harrier"
3939
*/
4040
struct CBBoxTargetClass {
4141
unsigned long boundingBoxID; /*!< \brief Corresponding bounding box ID. */

Common/include/basic_types/ad_structure.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* \file ad_structure.hpp
33
* \brief Main routines for the algorithmic differentiation (AD) structure.
44
* \author T. Albring, J. Blühdorn
5-
* \version 8.0.1 "Harrier"
5+
* \version 8.1.0 "Harrier"
66
*
77
* SU2 Project Website: https://su2code.github.io
88
*

Common/include/basic_types/datatype_structure.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* \file datatype_structure.hpp
33
* \brief Headers for generalized datatypes, defines an interface for AD types.
44
* \author T. Albring
5-
* \version 8.0.1 "Harrier"
5+
* \version 8.1.0 "Harrier"
66
*
77
* SU2 Project Website: https://su2code.github.io
88
*

Common/include/code_config.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* \file code_config.hpp
33
* \brief Header file for collecting common macros, definitions and type configurations.
44
* \author T. Albring, P. Gomes, J. Blühdorn
5-
* \version 8.0.1 "Harrier"
5+
* \version 8.1.0 "Harrier"
66
*
77
* SU2 Project Website: https://su2code.github.io
88
*

0 commit comments

Comments
 (0)