Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
137 commits
Select commit Hold shift + click to select a range
ebbf37a
initial commit of vorticity source turb models
WallyMaier Mar 11, 2022
e2887f9
towards SST Options framework
WallyMaier Mar 15, 2022
9bd7e91
A more realistic implementation
WallyMaier Mar 16, 2022
4344477
Merge branch 'develop' into feature_SST-Vm
WallyMaier Mar 21, 2022
bcb6c43
update SST_OPTION, remove SST_SUST
WallyMaier Mar 22, 2022
c57f6f5
Some convergence fixes + beginning to add structure
Mar 22, 2022
8d67a08
creat parsing function, tried to be consistent, updated some print st…
WallyMaier Mar 24, 2022
d8ca557
small fixes
WallyMaier Mar 24, 2022
b5275a1
added sst1994,sst1994m,sst2003,sst2003m
bigfooted Mar 29, 2022
3252c16
merge with develop, check that it runs
bigfooted Mar 29, 2022
5300b3c
some cleanup and parsed option corrections
WallyMaier Mar 30, 2022
f55c8f4
should compile now
Mar 30, 2022
9118ec0
Small fixes, seems to be working
Mar 31, 2022
ffcd49c
Merge branch 'develop' into feature_SST-Vm
bigfooted Mar 31, 2022
7653887
Update Common/src/CConfig.cpp
bigfooted Mar 31, 2022
9178a35
Update Common/src/CConfig.cpp
bigfooted Mar 31, 2022
aad365e
add productionlimiter to constants
bigfooted Apr 3, 2022
c71640e
Merge branch 'develop' into feature_SST-Vm
WallyMaier Apr 4, 2022
852655e
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
bigfooted Apr 4, 2022
dac78c8
fix sst production, implement review suggestions
bigfooted Apr 4, 2022
dcbfb9e
remove deprecated local variable Prodlimconstant
bigfooted Apr 4, 2022
a9c06ea
some rewrites to the sst1994 model to accomodate the original model
bigfooted Apr 5, 2022
29909ba
temporary save
bigfooted Apr 6, 2022
30f59a6
implement SUST and UQ again for backward compatibility
bigfooted Apr 6, 2022
f2cd8c0
fix uq problem with sst options
bigfooted Apr 6, 2022
34babb7
fix sust problem with sst options
bigfooted Apr 7, 2022
cd2001c
fix more SUST options
bigfooted Apr 9, 2022
2da1a82
fix more SUST options
bigfooted Apr 9, 2022
214b2b1
cleanup commented lines
bigfooted Apr 10, 2022
1df520e
Update Common/include/option_structure.hpp
bigfooted Apr 10, 2022
300230f
change to sustaining
bigfooted Apr 10, 2022
5669113
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
bigfooted Apr 10, 2022
4718be2
sst1994m reversed - first get regression tests working again
bigfooted Apr 10, 2022
c74f082
copy turb_sources from develop
bigfooted Apr 10, 2022
a9271be
change turb_sources back
bigfooted Apr 10, 2022
469b8ce
change entire sst model back
bigfooted Apr 10, 2022
7e0b446
add turb_sources
bigfooted Apr 10, 2022
d73234d
add sstvariable
bigfooted Apr 10, 2022
143c28b
add part of turbsources again
bigfooted Apr 10, 2022
bc9ddcb
turbsources modification
bigfooted Apr 11, 2022
49fe8b1
turbsources modification
bigfooted Apr 11, 2022
1640f2a
turbsources modification
bigfooted Apr 11, 2022
d123868
turbsources modification
bigfooted Apr 11, 2022
4df45d5
turbsources modification
bigfooted Apr 11, 2022
ea8290f
turbsources modification
bigfooted Apr 11, 2022
f3d61c2
turbsources modification
bigfooted Apr 11, 2022
41d20ab
turbsources modification
bigfooted Apr 11, 2022
df055ed
change keyword to SUSTAINING
bigfooted Apr 11, 2022
f893160
turbsources modification
bigfooted Apr 11, 2022
3cbeb32
turbsources modification
bigfooted Apr 11, 2022
8f8b517
using P_Base
bigfooted Apr 11, 2022
bbc7931
sstmodels in turb_sources
bigfooted Apr 11, 2022
8a751d0
sstmodels in turb_sources
bigfooted Apr 11, 2022
7dddf3b
sstmodels in turb_sources
bigfooted Apr 11, 2022
c112e36
fix uq in turb_sources
bigfooted Apr 11, 2022
bfa38c5
introduce prodlimconstant
bigfooted Apr 11, 2022
29d3988
introduce prodlimconstant
bigfooted Apr 11, 2022
0894bf4
removal of rotation corrections:
Apr 11, 2022
bf312cf
Merge branch 'develop' into feature_SST-Vm
bigfooted Apr 11, 2022
f49c488
update turbulent viscosity in sstsolver
bigfooted Apr 11, 2022
d2e763e
sstmodels in turb_sources
bigfooted Apr 11, 2022
df0a997
sstmodels in turb_sources
bigfooted Apr 12, 2022
7ecfe33
sstmodels in turb_sources
bigfooted Apr 12, 2022
1ef95e8
Merge branch 'develop' into feature_SST-Vm
bigfooted Apr 12, 2022
38c3ab5
sstmodels in turb_sources
bigfooted Apr 12, 2022
72c4416
sstmodels in turb_sources
bigfooted Apr 12, 2022
0d24bd0
sstmodels in turb_sources
bigfooted Apr 12, 2022
0224811
sstmodels in turb_sources
bigfooted Apr 12, 2022
3b6616b
sstmodels in turb_sources
bigfooted Apr 12, 2022
445266e
sstmodels in turb_sources
bigfooted Apr 12, 2022
370bbcf
sstmodels in turb_sources
bigfooted Apr 12, 2022
448075a
sstmodels in turb_sources
bigfooted Apr 12, 2022
ca8c998
sstmodels in turb_sources
bigfooted Apr 12, 2022
7fb8e5b
sstmodels in turb_sources
bigfooted Apr 12, 2022
d81913e
sstmodels in turb_sources
bigfooted Apr 12, 2022
aa876c3
use rank for cout messages
bigfooted Apr 14, 2022
32efc68
cleanup of files
bigfooted Apr 16, 2022
4b41461
cleanup of some more files
bigfooted Apr 16, 2022
7adf0d9
fix rank in cconfig
bigfooted Apr 16, 2022
7f4c663
cleanup of some more files
bigfooted Apr 16, 2022
888a738
cleanup of some more files
bigfooted Apr 16, 2022
dd2f15a
cleanup of some more files
bigfooted Apr 17, 2022
808816f
change sst_sust option
bigfooted Apr 19, 2022
8c02c31
fix RAE2822 SST Sust regression
WallyMaier Apr 19, 2022
7f4dd00
change uq option
bigfooted Apr 20, 2022
d2f05e0
merge with PR
bigfooted Apr 20, 2022
c94264b
fix using_uq for SA
Apr 20, 2022
d74d5fe
some cleanup of modified vs unmodified sst1994 and sst2003
bigfooted Apr 21, 2022
e9f135f
modify modified modifier
Apr 21, 2022
7122b48
Merge branch 'develop' into feature_SST-Vm
bigfooted Apr 21, 2022
cc6054f
Merge branch 'develop' into feature_SST-Vm
bigfooted Apr 21, 2022
7390934
Merge branch 'develop' into feature_SST-Vm
bigfooted Apr 24, 2022
576bfd0
remove using_uq boolean
bigfooted Apr 24, 2022
e5ec394
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
bigfooted Apr 24, 2022
98a3736
move sst.uq output message to within sst
bigfooted Apr 24, 2022
8be782a
default false to sstoption booleans
bigfooted Apr 24, 2022
4dfb8c8
fixed and checked v2003 model (production limiter)
bigfooted Apr 26, 2022
dbcad65
Merge branch 'develop' into feature_SST-Vm
bigfooted Apr 27, 2022
3ad9073
added rans naca0012 regression case
bigfooted May 2, 2022
4bc8810
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
bigfooted May 2, 2022
9b2b9ce
Update Common/include/option_structure.hpp
bigfooted May 4, 2022
17a5e69
Update Common/include/option_structure.hpp
bigfooted May 4, 2022
35dbc34
Update Common/include/option_structure.hpp
bigfooted May 4, 2022
958ec0d
add SST_SUST is deprecated message
May 4, 2022
7a5ecc8
cleanup
pcarruscag May 4, 2022
3572fb5
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
pcarruscag May 4, 2022
e7a3092
re-add V and KL options
May 4, 2022
08b7319
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
May 4, 2022
1ea2106
fix vorticity sst, add regressions for V and KL
May 4, 2022
7c2a65c
cleanup
pcarruscag May 5, 2022
d0a2009
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
pcarruscag May 5, 2022
d6ff7c8
fix regression files....need proper values
May 5, 2022
1033583
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
May 5, 2022
f21b7a0
again
May 5, 2022
8b85d97
update regression values
May 5, 2022
c0efb31
cleanup sources
pcarruscag May 5, 2022
fef8828
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
pcarruscag May 5, 2022
5dd09c9
Update SU2_CFD/include/numerics/turbulent/turb_sources.hpp
pcarruscag May 5, 2022
7728a57
Update SU2_CFD/include/numerics/turbulent/turb_sources.hpp
pcarruscag May 5, 2022
90d1107
cleanup, try to recover old residuals
pcarruscag May 6, 2022
f61026b
test reason for changes
pcarruscag May 10, 2022
34e3865
Merge remote-tracking branch 'upstream/develop' into feature_SST-Vm
pcarruscag May 10, 2022
780fb54
update tests, minor cleanup
pcarruscag May 10, 2022
78db549
Merge branch 'develop' into feature_SST-Vm
bigfooted May 15, 2022
031740f
Apply suggestions from code review
pcarruscag May 15, 2022
2752d7b
cleanup config
pcarruscag May 15, 2022
95f7fc6
Merge branch 'feature_SST-Vm' of https://github.com/su2code/SU2 into …
pcarruscag May 15, 2022
1cc18ba
Update config_template.cfg
pcarruscag May 15, 2022
c890e0a
Apply suggestions from code review
pcarruscag May 15, 2022
8b1364c
Merge branch 'develop' into feature_SST-Vm
bigfooted May 16, 2022
5c84858
additional vanv regression
bigfooted May 16, 2022
b08defb
cleanup of vanv and fix unrelated spelling errors
bigfooted May 17, 2022
f82dc33
Merge branch 'develop' into feature_SST-Vm
WallyMaier May 19, 2022
e1f6976
Merge branch 'develop' into feature_SST-Vm
pcarruscag May 19, 2022
e120287
fix wrong vandv solution files
bigfooted May 19, 2022
95ab0e3
fix last digit of VandV regression
bigfooted May 19, 2022
e819a88
Update SU2_CFD/src/solvers/CAdjNSSolver.cpp
pcarruscag May 21, 2022
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
19 changes: 10 additions & 9 deletions Common/include/CConfig.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -701,6 +701,8 @@ class CConfig {

unsigned short nConfig_Files; /*!< \brief Number of config files for multiphysics problems. */
string *Config_Filenames; /*!< \brief List of names for configuration files. */
SST_OPTIONS *SST_Options; /*!< \brief List of modifications/corrections/versions of SST turbulence model.*/
unsigned short nSST_Options; /*!< \brief number of SST options specified. */
WALL_FUNCTIONS *Kind_WallFunctions; /*!< \brief The kind of wall function to use for the corresponding markers. */
unsigned short **IntInfo_WallFunctions; /*!< \brief Additional integer information for the wall function markers. */
su2double **DoubleInfo_WallFunctions; /*!< \brief Additional double information for the wall function markers. */
Expand Down Expand Up @@ -1135,8 +1137,7 @@ class CConfig {
unsigned short nScreenOutput, /*!< \brief Number of screen output variables (max: 6). */
nHistoryOutput, nVolumeOutput; /*!< \brief Number of variables printed to the history file. */
bool Multizone_Residual; /*!< \brief Determines if memory should be allocated for the multizone residual. */

bool using_uq; /*!< \brief Using uncertainty quantification with SST model */
SST_ParsedOptions sstParsedOptions; /*!< \brief additional parameters for the SST turbulence model */
su2double uq_delta_b; /*!< \brief Parameter used to perturb eigenvalues of Reynolds Stress Matrix */
unsigned short eig_val_comp; /*!< \brief Parameter used to determine type of eigenvalue perturbation */
su2double uq_urlx; /*!< \brief Under-relaxation factor */
Expand Down Expand Up @@ -8980,12 +8981,6 @@ class CConfig {
*/
bool GetPrintInlet_InterpolatedData(void) const { return PrintInlet_InterpolatedData; }

/*!
* \brief Get information about using UQ methodology
* \return <code>TRUE</code> means that UQ methodology of eigenspace perturbation will be used
*/
bool GetUsing_UQ(void) const { return using_uq; }

/*!
* \brief Get the amount of eigenvalue perturbation to be done
* \return Value of the uq_delta_b parameter
Expand Down Expand Up @@ -9622,10 +9617,16 @@ class CConfig {
*/
unsigned short GetKind_Grad_Linear_Solver_Prec(void) const { return Kind_Grad_Linear_Solver_Prec; }

/*!
/*!
* \brief Get max number of iterations of the for the gradient smoothing.
* \return Max number of iterations of the linear solver for the gradient smoothing.
*/
unsigned long GetGrad_Linear_Solver_Iter(void) const { return Grad_Linear_Solver_Iter; }

/*!
* \brief Get parsed SST option data structure.
* \return SST option data structure.
*/
SST_ParsedOptions GetSSTParsedOptions() const { return sstParsedOptions; }

};
113 changes: 105 additions & 8 deletions Common/include/option_structure.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -92,8 +92,8 @@ const unsigned int INST_0 = 0; /*!< \brief Definition of the first instance per

const su2double STANDARD_GRAVITY = 9.80665; /*!< \brief Acceleration due to gravity at surface of earth. */
const su2double UNIVERSAL_GAS_CONSTANT = 8.3144598; /*!< \brief Universal gas constant in J/(mol*K) */
const su2double BOLTZMANN_CONSTANT = 1.3806503E-23; /*! \brief Boltzmann's constant [J K^-1] */
const su2double AVOGAD_CONSTANT = 6.0221415E26; /*!< \brief Avogardro's constant, number of particles in one kmole. */
const su2double BOLTZMANN_CONSTANT = 1.3806503E-23; /*!< \brief Boltzmann's constant [J K^-1] */
const su2double AVOGAD_CONSTANT = 6.0221415E26; /*!< \brief Avogadro's constant, number of particles in one kmole. */

const su2double EPS = 1.0E-16; /*!< \brief Error scale. */
const su2double TURB_EPS = 1.0E-16; /*!< \brief Turbulent Error scale. */
Expand Down Expand Up @@ -912,12 +912,11 @@ static const MapType<std::string, LIMITER> Limiter_Map = {
enum class TURB_MODEL {
NONE, /*!< \brief No turbulence model. */
SA, /*!< \brief Kind of Turbulent model (Spalart-Allmaras). */
SA_NEG, /*!< \brief Kind of Turbulent model (Spalart-Allmaras). */
SA_NEG, /*!< \brief Kind of Turbulent model (Negative Spalart-Allmaras). */
SA_E, /*!< \brief Kind of Turbulent model (Spalart-Allmaras Edwards). */
SA_COMP, /*!< \brief Kind of Turbulent model (Spalart-Allmaras Compressibility Correction). */
SA_E_COMP, /*!< \brief Kind of Turbulent model (Spalart-Allmaras Edwards with Compressibility Correction). */
SST, /*!< \brief Kind of Turbulence model (Menter SST). */
SST_SUST /*!< \brief Kind of Turbulence model (Menter SST with sustaining terms for free-stream preservation). */
};
static const MapType<std::string, TURB_MODEL> Turb_Model_Map = {
MakePair("NONE", TURB_MODEL::NONE)
Expand All @@ -927,7 +926,6 @@ static const MapType<std::string, TURB_MODEL> Turb_Model_Map = {
MakePair("SA_COMP", TURB_MODEL::SA_COMP)
MakePair("SA_E_COMP", TURB_MODEL::SA_E_COMP)
MakePair("SST", TURB_MODEL::SST)
MakePair("SST_SUST", TURB_MODEL::SST_SUST)
};

/*!
Expand All @@ -952,19 +950,119 @@ inline TURB_FAMILY TurbModelFamily(TURB_MODEL model) {
case TURB_MODEL::SA_E_COMP:
return TURB_FAMILY::SA;
case TURB_MODEL::SST:
case TURB_MODEL::SST_SUST:
return TURB_FAMILY::KW;
}
return TURB_FAMILY::NONE;
}

/*!
* \brief SST Options
*/
enum class SST_OPTIONS {
Comment thread
pcarruscag marked this conversation as resolved.
NONE, /*!< \brief No SST Turb model. */
V1994, /*!< \brief 1994 Menter k-w SST model. */
V2003, /*!< \brief 2003 Menter k-w SST model. */
V1994m, /*!< \brief 1994m Menter k-w SST model. */
V2003m, /*!< \brief 2003m Menter k-w SST model. */
SUST, /*!< \brief Menter k-w SST model with sustaining terms. */
V, /*!< \brief Menter k-w SST model with vorticity production terms. */
KL, /*!< \brief Menter k-w SST model with Kato-Launder production terms. */
UQ, /*!< \brief Menter k-w SST model with uncertainty quantification modifications. */
};
static const MapType<std::string, SST_OPTIONS> SST_Options_Map = {
MakePair("NONE", SST_OPTIONS::NONE)
MakePair("V1994m", SST_OPTIONS::V1994m)
MakePair("V2003m", SST_OPTIONS::V2003m)
/// TODO: For now we do not support "unmodified" versions of SST.
//MakePair("V1994", SST_OPTIONS::V1994)
//MakePair("V2003", SST_OPTIONS::V2003)
MakePair("SUSTAINING", SST_OPTIONS::SUST)
MakePair("VORTICITY", SST_OPTIONS::V)
MakePair("KATO-LAUNDER", SST_OPTIONS::KL)
MakePair("UQ", SST_OPTIONS::UQ)
};

/*!
* \brief Structure containing parsed SST options.
*/
struct SST_ParsedOptions {
SST_OPTIONS version = SST_OPTIONS::V1994; /*!< \brief Enum SST base model. */
SST_OPTIONS production = SST_OPTIONS::NONE; /*!< \brief Enum for production corrections/modifiers for SST model. */
bool sust = false; /*!< \brief Bool for SST model with sustaining terms. */
bool uq = false; /*!< \brief Bool for using uncertainty quantification. */
bool modified = false; /*!< \brief Bool for modified (m) SST model. */
};

/*!
* \brief Function to parse SST options.
* \param[in] SST_Options - Selected SST option from config.
* \param[in] nSST_Options - Number of options selected.
* \param[in] rank - MPI rank.
*/
inline SST_ParsedOptions ParseSSTOptions(const SST_OPTIONS *SST_Options, unsigned short nSST_Options, int rank) {
SST_ParsedOptions SSTParsedOptions;

auto IsPresent = [&](SST_OPTIONS option) {
const auto sst_options_end = SST_Options + nSST_Options;
return std::find(SST_Options, sst_options_end, option) != sst_options_end;
};

const bool found_1994 = IsPresent(SST_OPTIONS::V1994);
const bool found_2003 = IsPresent(SST_OPTIONS::V2003);
const bool found_1994m = IsPresent(SST_OPTIONS::V1994m);
const bool found_2003m = IsPresent(SST_OPTIONS::V2003m);

const bool default_version = !found_1994 && !found_1994m && !found_2003 && !found_2003m;

const bool sst_1994 = found_1994 || found_1994m || default_version;
const bool sst_2003 = found_2003 || found_2003m;

/*--- When V2003m or V1994m is selected, we automatically select sst_m. ---*/
const bool sst_m = found_1994m || found_2003m || default_version;

const bool sst_sust = IsPresent(SST_OPTIONS::SUST);
const bool sst_v = IsPresent(SST_OPTIONS::V);
const bool sst_kl = IsPresent(SST_OPTIONS::KL);
const bool sst_uq = IsPresent(SST_OPTIONS::UQ);

if (sst_1994 && sst_2003) {
SU2_MPI::Error("Two versions (1994 and 2003) selected for SST_OPTIONS. Please choose only one.", CURRENT_FUNCTION);
} else if (sst_2003) {
SSTParsedOptions.version = SST_OPTIONS::V2003;
} else {
SSTParsedOptions.version = SST_OPTIONS::V1994;

if (rank==MASTER_NODE) {
std::cout <<
"WARNING: The current SST-1994m model is inconsistent with literature. We recommend using the SST-2003m model.\n"
"In SU2 v8 the 2003m model will become default, and the inconsistency will be fixed." << std::endl;
}
}

// Parse production modifications
if ((int(sst_v) + int(sst_kl) + int(sst_uq)) > 1) {
SU2_MPI::Error("Please select only one SST production term modifier (VORTICITY, KATO-LAUNDER, or UQ).", CURRENT_FUNCTION);
} else if (sst_v) {
SSTParsedOptions.production = SST_OPTIONS::V;
} else if (sst_kl) {
SSTParsedOptions.production = SST_OPTIONS::KL;
} else if (sst_uq) {
SSTParsedOptions.production = SST_OPTIONS::UQ;
}

SSTParsedOptions.sust = sst_sust;
SSTParsedOptions.modified = sst_m;
SSTParsedOptions.uq = sst_uq;
return SSTParsedOptions;
}

/*!
* \brief Types of transition models
*/
enum class TURB_TRANS_MODEL {
NONE, /*!< \brief No transition model. */
LM, /*!< \brief Kind of transition model (Langtry-Menter (LM) for SST and Spalart-Allmaras). */
BC /*!< \brief Kind of transition model (BAS-CAKMAKCIOGLU (BC) for Spalart-Allmaras). */
BC /*!< \brief Kind of transition model (BAS-CAKMAKCIOGLU (BC) for Spalart-Allmaras). */
};
static const MapType<std::string, TURB_TRANS_MODEL> Trans_Model_Map = {
MakePair("NONE", TURB_TRANS_MODEL::NONE)
Expand Down Expand Up @@ -1002,7 +1100,6 @@ static const MapType<std::string, TURB_SGS_MODEL> SGS_Model_Map = {
MakePair("VREMAN", TURB_SGS_MODEL::VREMAN)
};


/*!
* \brief Types of window (weight) functions for cost functional
*/
Expand Down
62 changes: 38 additions & 24 deletions Common/src/CConfig.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1089,6 +1089,9 @@ void CConfig::SetConfig_Options() {
addMathProblemOption("MATH_PROBLEM", ContinuousAdjoint, false, DiscreteAdjoint, discAdjDefault, Restart_Flow, discAdjDefault);
/*!\brief KIND_TURB_MODEL \n DESCRIPTION: Specify turbulence model \n Options: see \link Turb_Model_Map \endlink \n DEFAULT: NONE \ingroup Config*/
addEnumOption("KIND_TURB_MODEL", Kind_Turb_Model, Turb_Model_Map, TURB_MODEL::NONE);
/*!\brief SST_OPTIONS \n DESCRIPTION: Specify SST turbulence model options/corrections. \n Options: see \link SST_Options_Map \endlink \n DEFAULT: NONE \ingroup Config*/
addEnumListOption("SST_OPTIONS", nSST_Options, SST_Options, SST_Options_Map);

/*!\brief KIND_TRANS_MODEL \n DESCRIPTION: Specify transition model OPTIONS: see \link Trans_Model_Map \endlink \n DEFAULT: NONE \ingroup Config*/
addEnumOption("KIND_TRANS_MODEL", Kind_Trans_Model, Trans_Model_Map, TURB_TRANS_MODEL::NONE);

Expand Down Expand Up @@ -2829,9 +2832,6 @@ void CConfig::SetConfig_Options() {
/* DESCRIPTION: Volume solution files */
addEnumListOption("OUTPUT_FILES", nVolumeOutputFiles, VolumeOutputFiles, Output_Map);

/* DESCRIPTION: Using Uncertainty Quantification with SST Turbulence Model */
addBoolOption("USING_UQ", using_uq, false);

/* DESCRIPTION: Parameter to perturb eigenvalues */
addDoubleOption("UQ_DELTA_B", uq_delta_b, 1.0);

Expand Down Expand Up @@ -2944,7 +2944,6 @@ void CConfig::SetConfig_Parsing(istream& config_buffer){
}

if (TokenizeString(text_line, option_name, option_value)) {

/*--- See if it's a python option ---*/

if (option_map.find(option_name) == option_map.end()) {
Expand Down Expand Up @@ -3054,6 +3053,10 @@ void CConfig::SetConfig_Parsing(istream& config_buffer){

string out = option_map[option_name]->SetValue(option_value);
if (out.compare("") != 0) {
/*--- valid option, but deprecated value ---*/
if ((!option_name.compare("KIND_TURB_MODEL")) && (option_value[0]=="SST_SUST"))
errorString.append("Option KIND_TURB_MODEL=SST_SUST is deprecated. Use KIND_TURB_MODEL=SST, SST_OPTIONS=SUSTAINING instead.\n");

errorString.append(out);
errorString.append("\n");
err_count++;
Expand Down Expand Up @@ -3395,9 +3398,14 @@ void CConfig::SetPostprocessing(SU2_COMPONENT val_software, unsigned short val_i
SU2_MPI::Error("A turbulence model must be specified with KIND_TURB_MODEL if SOLVER= INC_RANS", CURRENT_FUNCTION);
}

/*--- Postprocess SST_OPTIONS into structure. ---*/
if (Kind_Turb_Model==TURB_MODEL::SST) {
sstParsedOptions = ParseSSTOptions(SST_Options, nSST_Options, rank);
}

/*--- Check if turbulence model can be used for AXISYMMETRIC case---*/
if (Axisymmetric && Kind_Turb_Model != TURB_MODEL::NONE && Kind_Turb_Model != TURB_MODEL::SST && Kind_Turb_Model != TURB_MODEL::SST_SUST){
SU2_MPI::Error("Axisymmetry is currently only supported for KIND_TURB_MODEL chosen as SST or SST_SUST", CURRENT_FUNCTION);
if (Axisymmetric && Kind_Turb_Model != TURB_MODEL::NONE && Kind_Turb_Model != TURB_MODEL::SST){
SU2_MPI::Error("Axisymmetry is currently only supported for KIND_TURB_MODEL chosen as SST", CURRENT_FUNCTION);
}

/*--- Set the boolean Wall_Functions equal to true if there is a
Expand Down Expand Up @@ -4670,18 +4678,6 @@ void CConfig::SetPostprocessing(SU2_COMPONENT val_software, unsigned short val_i

Finite_Difference_Mode = false;

/* --- Throw error if UQ used for any turbulence model other that SST --- */

if (Kind_Solver == MAIN_SOLVER::RANS && Kind_Turb_Model != TURB_MODEL::SST && Kind_Turb_Model != TURB_MODEL::SST_SUST && using_uq){
SU2_MPI::Error("UQ capabilities only implemented for NAVIER_STOKES solver SST turbulence model", CURRENT_FUNCTION);
}

/* --- Throw error if invalid componentiality used --- */

if (using_uq && (eig_val_comp > 3 || eig_val_comp < 1)){
SU2_MPI::Error("Componentality should be either 1, 2, or 3!", CURRENT_FUNCTION);
}

/*--- If there are not design variables defined in the file ---*/

if (nDV == 0) {
Expand Down Expand Up @@ -5870,8 +5866,30 @@ void CConfig::SetOutput(SU2_COMPONENT val_software, unsigned short val_izone) {
case TURB_MODEL::SA_E: cout << "Edwards Spalart Allmaras" << endl; break;
case TURB_MODEL::SA_COMP: cout << "Compressibility Correction Spalart Allmaras" << endl; break;
case TURB_MODEL::SA_E_COMP: cout << "Compressibility Correction Edwards Spalart Allmaras" << endl; break;
case TURB_MODEL::SST: cout << "Menter's SST" << endl; break;
case TURB_MODEL::SST_SUST: cout << "Menter's SST with sustaining terms" << endl; break;
case TURB_MODEL::SST:
cout << "Menter's k-omega SST";
if (sstParsedOptions.version == SST_OPTIONS::V1994) cout << "-1994";
else cout << "-2003";
if (sstParsedOptions.modified) cout << "m";
if (sstParsedOptions.sust) cout << " with sustaining terms, and";

switch (sstParsedOptions.production) {
case SST_OPTIONS::KL:
cout << " with Kato-Launder production";
break;
case SST_OPTIONS::V:
cout << " with Vorticity production";
break;
case SST_OPTIONS::UQ:
cout << "\nperturbing the Reynold's Stress Matrix towards " << eig_val_comp << " component turbulence";
if (uq_permute) cout << " (permuting eigenvectors)";
break;
default:
cout << " with no production modification";
break;
}
cout << "." << endl;
break;
}
if (QCR) cout << "Using Quadratic Constitutive Relation, 2000 version (QCR2000)" << endl;
if (Kind_Trans_Model == TURB_TRANS_MODEL::BC) cout << "Using the revised BC transition model (2020)" << endl;
Expand All @@ -5883,10 +5901,6 @@ void CConfig::SetOutput(SU2_COMPONENT val_software, unsigned short val_izone) {
case SA_ZDES: cout << "Delayed Detached Eddy Simulation (DDES) with Vorticity-based SGS" << endl; break;
case SA_EDDES: cout << "Delayed Detached Eddy Simulation (DDES) with Shear-layer Adapted SGS" << endl; break;
}
if (using_uq){
cout << "Perturbing Reynold's Stress Matrix towards "<< eig_val_comp << " component turbulence"<< endl;
if (uq_permute) cout << "Permuting eigenvectors" << endl;
}
break;
case MAIN_SOLVER::NEMO_EULER:
if (Kind_Regime == ENUM_REGIME::COMPRESSIBLE) cout << "Compressible two-temperature thermochemical non-equilibrium Euler equations." << endl;
Expand Down
6 changes: 3 additions & 3 deletions SU2_CFD/include/numerics/CNumerics.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* \file CNumerics.hpp
* \brief Delaration of the base numerics class, the
* \brief Declaration of the base numerics class, the
* implementation is in the CNumerics.cpp file.
* \author F. Palacios, T. Economon
* \version 7.3.1 "Blackbird"
Expand Down Expand Up @@ -180,8 +180,8 @@ class CNumerics {
su2double roughness_i = 0.0, /*!< \brief Roughness of the wall nearest to point i. */
roughness_j = 0.0; /*!< \brief Roughness of the wall nearest to point j. */

su2double MeanPerturbedRSM[3][3];/*!< \brief Perturbed Reynolds stress tensor */
bool using_uq; /*!< \brief Flag for UQ methodology */
su2double MeanPerturbedRSM[3][3]; /*!< \brief Perturbed Reynolds stress tensor */
SST_ParsedOptions sstParsedOptions; /*!< \brief additional options for the SST turbulence model */
unsigned short Eig_Val_Comp; /*!< \brief Component towards which perturbation is perfromed */
su2double uq_delta_b; /*!< \brief Magnitude of perturbation */
su2double uq_urlx; /*!< \brief Under-relaxation factor for numerical stability */
Expand Down
2 changes: 1 addition & 1 deletion SU2_CFD/include/numerics/NEMO/NEMO_sources.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* \file NEMO_sources.hpp
* \brief Delarations of numerics classes for source-term integration.
* \brief Declarations of numerics classes for source-term integration.
* \author C. Garbacz, W. Maier, S. Copeland.
* \version 7.3.1 "Blackbird"
*
Expand Down
2 changes: 1 addition & 1 deletion SU2_CFD/include/numerics/NEMO/convection/roe.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* \file roe.hpp
* \brief Delarations of numerics classes for Roe-type schemes in NEMO.
* \brief Declarations of numerics classes for Roe-type schemes in NEMO.
* \author S.R. Copeland, W. Maier, C. Garbacz
* \version 7.3.1 "Blackbird"
*
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* \file adj_convection.hpp
* \brief Delarations of numerics classes for continuous adjoint
* \brief Declarations of numerics classes for continuous adjoint
* convective discretization. Implemented in adj_convection.cpp.
* \author F. Palacios, T. Economon
* \version 7.3.1 "Blackbird"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* \file adj_diffusion.hpp
* \brief Delarations of numerics classes for continuous adjoint
* \brief Declarations of numerics classes for continuous adjoint
* diffusion discretization. Implemented in adj_diffusion.cpp.
* \author F. Palacios, T. Economon
* \version 7.3.1 "Blackbird"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* \file adj_sources.hpp
* \brief Delarations of numerics classes for continuous adjoint
* \brief Declarations of numerics classes for continuous adjoint
* source term integration. Implemented in adj_sources.cpp.
* \author F. Palacios, T. Economon
* \version 7.3.1 "Blackbird"
Expand Down
2 changes: 1 addition & 1 deletion SU2_CFD/include/numerics/flow/convection/centered.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*!
* \file centered.hpp
* \brief Delaration of numerics classes for centered schemes,
* \brief Declaration of numerics classes for centered schemes,
* the implementation is in centered.cpp.
* \author F. Palacios, T. Economon
* \version 7.3.1 "Blackbird"
Expand Down
Loading