@@ -1084,12 +1084,19 @@ class CConfig {
10841084 unsigned short *nSpan_iZones; /* !< \brief number of span-wise sections for each zones */
10851085 bool turbMixingPlane; /* !< \brief option for turbulent mixingplane */
10861086 bool SpatialFourier; /* !< \brief option for computing the fourier transforms for subsonic non-reflecting BC. */
1087- bool RampRotatingFrame; /* !< \brief option for ramping up or down the Rotating Frame values */
1088- bool RampOutletPressure; /* !< \brief option for ramping up or down the outlet pressure */
1087+ bool RampMotionFrame; /* !< \brief option for ramping up or down the motion Frame values */
1088+ bool RampOutlet; /* !< \brief option for ramping up or down the outlet values */
1089+ bool RampRotatingFrame; /* !< \brief option for ramping up or down the motion Frame values */
1090+ bool RampTranslationFrame; /* !< \brief option for ramping up or down the outlet values */
1091+ bool RampOutletMassFlow; /* !< \brief option for ramping up or down the motion Frame values */
1092+ bool RampOutletPressure; /* !< \brief option for ramping up or down the outlet values */
10891093 su2double AverageMachLimit; /* !< \brief option for turbulent mixingplane */
10901094 su2double FinalRotation_Rate_Z; /* !< \brief Final rotation rate Z if Ramp rotating frame is activated. */
1095+ su2double FinalTranslation_Rate_Y; /* !< \brief Final translation rate Y if Ramp translation frame is activated. */
10911096 su2double FinalOutletPressure; /* !< \brief Final outlet pressure if Ramp outlet pressure is activated. */
1097+ su2double FinalOutletMassFlow; /* !< \brief Final outlet mass flow rate if Ramp outlet mass flow rate is activated */
10921098 su2double MonitorOutletPressure; /* !< \brief Monitor outlet pressure if Ramp outlet pressure is activated. */
1099+ su2double MonitorOutletMassFlow; /* !< \brief Monitor outlet mass flow rate if ramp outlet mass flow rate is activated. */
10931100 array<su2double, N_POLY_COEFFS> cp_polycoeffs{{0.0 }}; /* !< \brief Array for specific heat polynomial coefficients. */
10941101 array<su2double, N_POLY_COEFFS> mu_polycoeffs{{0.0 }}; /* !< \brief Array for viscosity polynomial coefficients. */
10951102 array<su2double, N_POLY_COEFFS> kt_polycoeffs{{0.0 }}; /* !< \brief Array for thermal conductivity polynomial coefficients. */
@@ -1139,8 +1146,8 @@ class CConfig {
11391146 jst_coeff[2 ], /* !< \brief artificial dissipation (flow) array for the COption class. */
11401147 ffd_coeff[3 ], /* !< \brief artificial dissipation (flow) array for the COption class. */
11411148 mixedout_coeff[3 ], /* !< \brief default mixedout algorithm coefficients for the COption class. */
1142- rampRotFrame_coeff [3 ], /* !< \brief ramp rotating frame coefficients for the COption class. */
1143- rampOutPres_coeff [3 ], /* !< \brief ramp outlet pressure coefficients for the COption class. */
1149+ rampMotionFrameCoeff [3 ], /* !< \brief ramp motion frame coefficients for the COption class. */
1150+ rampOutletCoeff [3 ], /* !< \brief ramp outlet value coefficients for the COption class. */
11441151 jst_adj_coeff[2 ], /* !< \brief artificial dissipation (adjoint) array for the COption class. */
11451152 mesh_box_length[3 ], /* !< \brief mesh box length for the COption class. */
11461153 mesh_box_offset[3 ], /* !< \brief mesh box offset for the COption class. */
@@ -5109,45 +5116,34 @@ class CConfig {
51095116 void SetKind_PerformanceAverageProcess (unsigned short new_AverageProcess) { Kind_PerformanceAverageProcess = new_AverageProcess; }
51105117
51115118 /* !
5112- * \brief Get coeff for Rotating Frame Ramp.
5113- * \return coeff Ramp Rotating Frame.
5119+ * \brief Get Motion Frame Ramp option .
5120+ * \return Ramp Motion Frame option .
51145121 */
5115- su2double GetRampRotatingFrame_Coeff ( unsigned short iCoeff ) const { return rampRotFrame_coeff[iCoeff]; }
5122+ bool GetRampMotionFrame ( void ) const { return RampMotionFrame; }
51165123
51175124 /* !
5118- * \brief Get Rotating Frame Ramp option.
5119- * \return Ramp Rotating Frame option.
5125+ * \brief Get outflow ramp option.
5126+ * \return Ramp outflow option.
51205127 */
5121- bool GetRampRotatingFrame (void ) const { return RampRotatingFrame; }
5128+ bool GetRampOutflow (void ) const { return RampOutlet; }
51225129
51235130 /* !
5124- * \brief Get coeff for Outlet Pressure Ramp.
5125- * \return coeff Ramp Outlet Pressure.
5126- */
5127- su2double GetRampOutletPressure_Coeff (unsigned short iCoeff) const { return rampOutPres_coeff[iCoeff];}
5128-
5129- /* !
5130- * \brief Get final Outlet Pressure value for the ramp.
5131- * \return final Outlet Pressure value.
5132- */
5133- su2double GetFinalOutletPressure (void ) const { return FinalOutletPressure; }
5134-
5135- /* !
5136- * \brief Get final Outlet Pressure value for the ramp.
5137- * \return Monitor Outlet Pressure value.
5138- */
5139- su2double GetMonitorOutletPressure (void ) const { return MonitorOutletPressure; }
5140-
5141- /* !
5142- * \brief Set Monitor Outlet Pressure value for the ramp.
5143- */
5144- void SetMonitorOutletPressure (su2double newMonPres) { MonitorOutletPressure = newMonPres;}
5131+ * \brief General interface for accessing ramp coefficient information
5132+ * \return coeff for ramps
5133+ */
5134+ su2double GetRampCoeff (RAMP_TYPE ramp_flag, RAMP_COEFF val_coeff) const {
5135+ if (ramp_flag == RAMP_TYPE::GRID) return rampMotionFrameCoeff[val_coeff];
5136+ else if (ramp_flag == RAMP_TYPE::BOUNDARY) return rampOutletCoeff[val_coeff];
5137+ else return 0 ;
5138+ };
51455139
51465140 /* !
5147- * \brief Get Outlet Pressure Ramp option.
5148- * \return Ramp Outlet pressure option.
5141+ * \brief Generic interface for setting monitor outlet values for the ramp.
51495142 */
5150- bool GetRampOutletPressure (void ) const { return RampOutletPressure;}
5143+ void SetMonitorValue (su2double newMon_val) {
5144+ if (RampOutletPressure) MonitorOutletPressure = newMon_val;
5145+ else if (RampOutletMassFlow) MonitorOutletMassFlow = newMon_val;
5146+ }
51515147
51525148 /* !
51535149 * \brief Get mixedout coefficients.
@@ -6136,6 +6132,16 @@ class CConfig {
61366132 */
61376133 void SetRotation_Rate (unsigned short iDim, su2double val) { Rotation_Rate[iDim] = val;}
61386134
6135+ /* !
6136+ * \brief General interface for setting the rate of motion in grid ramps
6137+ * \param[in] ramp_flag - flag for type of ramp
6138+ * \param[in] val - new value of rate of motion
6139+ */
6140+ void SetRate (su2double val) {
6141+ if (RampRotatingFrame) Rotation_Rate[2 ] = val;
6142+ else if (RampTranslationFrame) Translation_Rate[1 ] = val;
6143+ }
6144+
61396145 /* !
61406146 * \brief Get the rotation rate of the marker.
61416147 * \param[in] iMarkerMoving - Index of the moving marker (as specified in Marker_Moving)
@@ -6230,16 +6236,16 @@ class CConfig {
62306236 su2double GetMarkerPlunging_Ampl (unsigned short iMarkerMoving, unsigned short iDim) const { return MarkerPlunging_Ampl[3 *iMarkerMoving + iDim];}
62316237
62326238 /* !
6233- * \brief Get the angular velocity of the mesh about the z-axis.
6234- * \return Angular velocity of the mesh about the z-axis.
6239+ * \brief Generic interface for retrieving final value of a turbomachinery ramp
6240+ * \return Final value of a specified ramp
62356241 */
6236- su2double GetFinalRotation_Rate_Z ( ) const { return FinalRotation_Rate_Z;}
6237-
6238- /* !
6239- * \brief Set the angular velocity of the mesh about the z-axis.
6240- * \param[in] newRotation_Rate_Z - new rotation rate after computing the ramp value.
6241- */
6242- void SetRotation_Rate_Z (su2double newRotation_Rate_Z);
6242+ su2double GetFinalValue (RAMP_TYPE ramp_flag ) const {
6243+ if (ramp_flag == RAMP_TYPE::GRID && RampRotatingFrame) return FinalRotation_Rate_Z;
6244+ else if (ramp_flag == RAMP_TYPE::GRID && RampTranslationFrame) return FinalTranslation_Rate_Y;
6245+ else if (ramp_flag == RAMP_TYPE::BOUNDARY && RampOutletPressure) return FinalOutletPressure;
6246+ else if (ramp_flag == RAMP_TYPE::BOUNDARY && RampOutletMassFlow) return FinalOutletMassFlow;
6247+ else return 0.0 ;
6248+ }
62436249
62446250 /* !
62456251 * \brief Get the Harmonic Balance frequency pointer.
0 commit comments