@@ -1057,16 +1057,18 @@ enum class SA_OPTIONS {
10571057 COMP, /* !< \brief Compressibility correction. */
10581058 ROT, /* !< \brief Rotation correction. */
10591059 BC, /* !< \brief Bas-Cakmakcioclu transition. */
1060+ EXP, /* !< \brief Allow experimental combinations of options (according to TMR). */
10601061};
10611062static const MapType<std::string, SA_OPTIONS> SA_Options_Map = {
10621063 MakePair (" NONE" , SA_OPTIONS::NONE)
10631064 MakePair (" NEGATIVE" , SA_OPTIONS::NEG)
10641065 MakePair (" EDWARDS" , SA_OPTIONS::EDW)
1065- MakePair (" FT2 " , SA_OPTIONS::FT2)
1066+ MakePair (" WITHFT2 " , SA_OPTIONS::FT2)
10661067 MakePair (" QCR2000" , SA_OPTIONS::QCR2000)
10671068 MakePair (" COMPRESSIBILITY" , SA_OPTIONS::COMP)
10681069 MakePair (" ROTATION" , SA_OPTIONS::ROT)
10691070 MakePair (" BCM" , SA_OPTIONS::BC)
1071+ MakePair (" EXPERIMENTAL" , SA_OPTIONS::EXP)
10701072};
10711073
10721074/* !
@@ -1111,19 +1113,34 @@ inline SA_ParsedOptions ParseSAOptions(const SA_OPTIONS *SA_Options, unsigned sh
11111113 } else {
11121114 SAParsedOptions.version = SA_OPTIONS::EDW;
11131115 }
1114-
1115- const bool found_bc = IsPresent (SA_OPTIONS::BC);
1116-
1117- if (found_bc && !found_bsl) {
1118- SU2_MPI::Error (" The BCM transition model was developed for the baseline SA version." , CURRENT_FUNCTION);
1119- }
1120-
11211116 SAParsedOptions.ft2 = IsPresent (SA_OPTIONS::FT2);
11221117 SAParsedOptions.qcr2000 = IsPresent (SA_OPTIONS::QCR2000);
11231118 SAParsedOptions.comp = IsPresent (SA_OPTIONS::COMP);
11241119 SAParsedOptions.rot = IsPresent (SA_OPTIONS::ROT);
1125- SAParsedOptions.bc = found_bc;
1126-
1120+ SAParsedOptions.bc = IsPresent (SA_OPTIONS::BC);
1121+
1122+ /* --- Validate user settings when not in experimental mode. ---*/
1123+ if (!IsPresent (SA_OPTIONS::EXP)) {
1124+ const bool any_but_bc = SAParsedOptions.ft2 || SAParsedOptions.qcr2000 || SAParsedOptions.comp || SAParsedOptions.rot ;
1125+
1126+ switch (SAParsedOptions.version ) {
1127+ case SA_OPTIONS::NEG:
1128+ if (!SAParsedOptions.ft2 || SAParsedOptions.bc )
1129+ SU2_MPI::Error (" A non-standard version of SA-neg was requested (see https://turbmodels.larc.nasa.gov/spalart.html).\n "
1130+ " If you want to continue, add EXPERIMENTAL to SA_OPTIONS." , CURRENT_FUNCTION);
1131+ break ;
1132+ case SA_OPTIONS::EDW:
1133+ if (any_but_bc || SAParsedOptions.bc )
1134+ SU2_MPI::Error (" A non-standard version of SA-noft2-Edwards was requested (see https://turbmodels.larc.nasa.gov/spalart.html).\n "
1135+ " If you want to continue, add EXPERIMENTAL to SA_OPTIONS." , CURRENT_FUNCTION);
1136+ break ;
1137+ default :
1138+ if (SAParsedOptions.bc && any_but_bc)
1139+ SU2_MPI::Error (" A non-standard version of SA-BCM was requested (see https://turbmodels.larc.nasa.gov/spalart.html).\n "
1140+ " If you want to continue, add EXPERIMENTAL to SA_OPTIONS." , CURRENT_FUNCTION);
1141+ break ;
1142+ }
1143+ }
11271144 return SAParsedOptions;
11281145}
11291146
0 commit comments