diff --git a/A01_TwoD_Plate_Laminar_Struct_1CPU/bin/cfd_para.hypara b/A01_TwoD_Plate_Laminar_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A01_TwoD_Plate_Laminar_Struct_1CPU/bin/cfd_para.hypara +++ b/A01_TwoD_Plate_Laminar_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A02_TwoD_Plate_Laminar_Ma5_Struct_1CPU/bin/cfd_para.hypara b/A02_TwoD_Plate_Laminar_Ma5_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A02_TwoD_Plate_Laminar_Ma5_Struct_1CPU/bin/cfd_para.hypara +++ b/A02_TwoD_Plate_Laminar_Ma5_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A03_TwoD_plate_SST_LowMach_Struct/bin/cfd_para.hypara b/A03_TwoD_plate_SST_LowMach_Struct/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A03_TwoD_plate_SST_LowMach_Struct/bin/cfd_para.hypara +++ b/A03_TwoD_plate_SST_LowMach_Struct/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A04_TwoD_Plate_SST_Ma5_Struct_1CPU/bin/cfd_para.hypara b/A04_TwoD_Plate_SST_Ma5_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A04_TwoD_Plate_SST_Ma5_Struct_1CPU/bin/cfd_para.hypara +++ b/A04_TwoD_Plate_SST_Ma5_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A05_TwoD_Cylinder_Laminar_Ma8d03_Struct/bin/cfd_para.hypara b/A05_TwoD_Cylinder_Laminar_Ma8d03_Struct/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A05_TwoD_Cylinder_Laminar_Ma8d03_Struct/bin/cfd_para.hypara +++ b/A05_TwoD_Cylinder_Laminar_Ma8d03_Struct/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para.hypara b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para.hypara +++ b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A07_TwoD_Rae2822_SST_Struct_4CPU/bin/cfd_para.hypara b/A07_TwoD_Rae2822_SST_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A07_TwoD_Rae2822_SST_Struct_4CPU/bin/cfd_para.hypara +++ b/A07_TwoD_Rae2822_SST_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A08_TwoD_30p30n_SST_Struct_4CPU/bin/cfd_para.hypara b/A08_TwoD_30p30n_SST_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A08_TwoD_30p30n_SST_Struct_4CPU/bin/cfd_para.hypara +++ b/A08_TwoD_30p30n_SST_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A09_ThreeD_M6_SST_Struct_MG2_4CPU/bin/cfd_para.hypara b/A09_ThreeD_M6_SST_Struct_MG2_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A09_ThreeD_M6_SST_Struct_MG2_4CPU/bin/cfd_para.hypara +++ b/A09_ThreeD_M6_SST_Struct_MG2_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A10_ThreeD_CHNT_SST_Struct_16CPU/bin/cfd_para.hypara b/A10_ThreeD_CHNT_SST_Struct_16CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A10_ThreeD_CHNT_SST_Struct_16CPU/bin/cfd_para.hypara +++ b/A10_ThreeD_CHNT_SST_Struct_16CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A11_ThreeD_Sphere_Laminar_Ma10_Struct/bin/cfd_para.hypara b/A11_ThreeD_Sphere_Laminar_Ma10_Struct/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A11_ThreeD_Sphere_Laminar_Ma10_Struct/bin/cfd_para.hypara +++ b/A11_ThreeD_Sphere_Laminar_Ma10_Struct/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A12_ThreeD_DoubleEllipse_Laminar_Struct_4CPU/bin/cfd_para.hypara b/A12_ThreeD_DoubleEllipse_Laminar_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A12_ThreeD_DoubleEllipse_Laminar_Struct_4CPU/bin/cfd_para.hypara +++ b/A12_ThreeD_DoubleEllipse_Laminar_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A13_TwoD_BackwardStep_PressureOutlet_SA_Struct_4CPU/bin/cfd_para.hypara b/A13_TwoD_BackwardStep_PressureOutlet_SA_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A13_TwoD_BackwardStep_PressureOutlet_SA_Struct_4CPU/bin/cfd_para.hypara +++ b/A13_TwoD_BackwardStep_PressureOutlet_SA_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A14_TwoD_Plate_TotalPressTempBC_SA_Struct_4CPU/bin/cfd_para.hypara b/A14_TwoD_Plate_TotalPressTempBC_SA_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A14_TwoD_Plate_TotalPressTempBC_SA_Struct_4CPU/bin/cfd_para.hypara +++ b/A14_TwoD_Plate_TotalPressTempBC_SA_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A15_ThreeD_ShockWave_PeriodicBoundary_SA_Struct_4CPU/bin/cfd_para.hypara b/A15_ThreeD_ShockWave_PeriodicBoundary_SA_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A15_ThreeD_ShockWave_PeriodicBoundary_SA_Struct_4CPU/bin/cfd_para.hypara +++ b/A15_ThreeD_ShockWave_PeriodicBoundary_SA_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A16_TwoD_NLR7301_SST_Struct_1CPU/bin/cfd_para.hypara b/A16_TwoD_NLR7301_SST_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A16_TwoD_NLR7301_SST_Struct_1CPU/bin/cfd_para.hypara +++ b/A16_TwoD_NLR7301_SST_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A17_ThreeD_Compression_Ramp-16_SA_Struct/bin/cfd_para.hypara b/A17_ThreeD_Compression_Ramp-16_SA_Struct/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A17_ThreeD_Compression_Ramp-16_SA_Struct/bin/cfd_para.hypara +++ b/A17_ThreeD_Compression_Ramp-16_SA_Struct/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A18_ThreeD_Hollow_Cylinder_Flare_Laminar_Struct_16CPU/bin/cfd_para.hypara b/A18_ThreeD_Hollow_Cylinder_Flare_Laminar_Struct_16CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A18_ThreeD_Hollow_Cylinder_Flare_Laminar_Struct_16CPU/bin/cfd_para.hypara +++ b/A18_ThreeD_Hollow_Cylinder_Flare_Laminar_Struct_16CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A19_ThreeD_BluntCone_Ma10d6_Laminar_Struct_64CPU/bin/cfd_para.hypara b/A19_ThreeD_BluntCone_Ma10d6_Laminar_Struct_64CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A19_ThreeD_BluntCone_Ma10d6_Laminar_Struct_64CPU/bin/cfd_para.hypara +++ b/A19_ThreeD_BluntCone_Ma10d6_Laminar_Struct_64CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A20_ThreeD_OV102_Ma20_Laminar_H50_Struct_24CPU/bin/cfd_para.hypara b/A20_ThreeD_OV102_Ma20_Laminar_H50_Struct_24CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A20_ThreeD_OV102_Ma20_Laminar_H50_Struct_24CPU/bin/cfd_para.hypara +++ b/A20_ThreeD_OV102_Ma20_Laminar_H50_Struct_24CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A21_ThreeD_ShockwaveInteractionPlate_Ma2_Laminar_UDB_Struct_1CPU/bin/cfd_para.hypara b/A21_ThreeD_ShockwaveInteractionPlate_Ma2_Laminar_UDB_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A21_ThreeD_ShockwaveInteractionPlate_Ma2_Laminar_UDB_Struct_1CPU/bin/cfd_para.hypara +++ b/A21_ThreeD_ShockwaveInteractionPlate_Ma2_Laminar_UDB_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A22_ThreeD_Jet_Ma3d33_SST_Struct_8CPU/bin/cfd_para.hypara b/A22_ThreeD_Jet_Ma3d33_SST_Struct_8CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A22_ThreeD_Jet_Ma3d33_SST_Struct_8CPU/bin/cfd_para.hypara +++ b/A22_ThreeD_Jet_Ma3d33_SST_Struct_8CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A23_TwoD_Plate_S-KSR_SST_Struct_4CPU/bin/cfd_para.hypara b/A23_TwoD_Plate_S-KSR_SST_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A23_TwoD_Plate_S-KSR_SST_Struct_4CPU/bin/cfd_para.hypara +++ b/A23_TwoD_Plate_S-KSR_SST_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A24_TwoD_30p30n_SA_MatrixLUSGS_Struct_4CPU/bin/cfd_para.hypara b/A24_TwoD_30p30n_SA_MatrixLUSGS_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A24_TwoD_30p30n_SA_MatrixLUSGS_Struct_4CPU/bin/cfd_para.hypara +++ b/A24_TwoD_30p30n_SA_MatrixLUSGS_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A25_TwoD_Plate_SST_LowMach_MatrixLUSGS_Struct_1CPU/bin/cfd_para.hypara b/A25_TwoD_Plate_SST_LowMach_MatrixLUSGS_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A25_TwoD_Plate_SST_LowMach_MatrixLUSGS_Struct_1CPU/bin/cfd_para.hypara +++ b/A25_TwoD_Plate_SST_LowMach_MatrixLUSGS_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A26_TwoD_Rae2822_SA_MatrixLUSGS_Struct_4CPU/bin/cfd_para.hypara b/A26_TwoD_Rae2822_SA_MatrixLUSGS_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A26_TwoD_Rae2822_SA_MatrixLUSGS_Struct_4CPU/bin/cfd_para.hypara +++ b/A26_TwoD_Rae2822_SA_MatrixLUSGS_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A27_TwoD_30p30n_SA_Entropyfix6_Struct_4CPU/bin/cfd_para.hypara b/A27_TwoD_30p30n_SA_Entropyfix6_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A27_TwoD_30p30n_SA_Entropyfix6_Struct_4CPU/bin/cfd_para.hypara +++ b/A27_TwoD_30p30n_SA_Entropyfix6_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A28_TwoD_Cylinder_Inv_Ma3d0_Entropyfix6_Struct_1CPU/bin/cfd_para.hypara b/A28_TwoD_Cylinder_Inv_Ma3d0_Entropyfix6_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A28_TwoD_Cylinder_Inv_Ma3d0_Entropyfix6_Struct_1CPU/bin/cfd_para.hypara +++ b/A28_TwoD_Cylinder_Inv_Ma3d0_Entropyfix6_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A29_TwoD_Rae2822_SA_Entropyfix6_Struct_4CPU/bin/cfd_para.hypara b/A29_TwoD_Rae2822_SA_Entropyfix6_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A29_TwoD_Rae2822_SA_Entropyfix6_Struct_4CPU/bin/cfd_para.hypara +++ b/A29_TwoD_Rae2822_SA_Entropyfix6_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A30_TwoD_Cylinder_Inv_Ma10d0_Entropyfix6_Struct_1CPU/bin/cfd_para.hypara b/A30_TwoD_Cylinder_Inv_Ma10d0_Entropyfix6_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A30_TwoD_Cylinder_Inv_Ma10d0_Entropyfix6_Struct_1CPU/bin/cfd_para.hypara +++ b/A30_TwoD_Cylinder_Inv_Ma10d0_Entropyfix6_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A31_ThreeD_CHNT_SST_MatrixLUSGS_Struct_256CPU/bin/cfd_para.hypara b/A31_ThreeD_CHNT_SST_MatrixLUSGS_Struct_256CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A31_ThreeD_CHNT_SST_MatrixLUSGS_Struct_256CPU/bin/cfd_para.hypara +++ b/A31_ThreeD_CHNT_SST_MatrixLUSGS_Struct_256CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/A32_TwoD_NACA0012_Inv_Ma0d2_Precondition_Struct_1CPU/bin/cfd_para.hypara b/A32_TwoD_NACA0012_Inv_Ma0d2_Precondition_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/A32_TwoD_NACA0012_Inv_Ma0d2_Precondition_Struct_1CPU/bin/cfd_para.hypara +++ b/A32_TwoD_NACA0012_Inv_Ma0d2_Precondition_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B01_TwoD_NACA0012_SA_Unstruct_1CPU/bin/cfd_para.hypara b/B01_TwoD_NACA0012_SA_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B01_TwoD_NACA0012_SA_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B01_TwoD_NACA0012_SA_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B02_TwoD_NACA4412_SA_Unstruct_2CPU/bin/cfd_para.hypara b/B02_TwoD_NACA4412_SA_Unstruct_2CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B02_TwoD_NACA4412_SA_Unstruct_2CPU/bin/cfd_para.hypara +++ b/B02_TwoD_NACA4412_SA_Unstruct_2CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B03_TwoD_Rae2822_SA_Unstruct_1CPU/bin/cfd_para.hypara b/B03_TwoD_Rae2822_SA_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B03_TwoD_Rae2822_SA_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B03_TwoD_Rae2822_SA_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B04_ThreeD_DLR-F6_SA_Unstruct_60CPU/bin/cfd_para.hypara b/B04_ThreeD_DLR-F6_SA_Unstruct_60CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B04_ThreeD_DLR-F6_SA_Unstruct_60CPU/bin/cfd_para.hypara +++ b/B04_ThreeD_DLR-F6_SA_Unstruct_60CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B05_ThreeD_x38_Laminar_Unstruct_128CPU/bin/cfd_para.hypara b/B05_ThreeD_x38_Laminar_Unstruct_128CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B05_ThreeD_x38_Laminar_Unstruct_128CPU/bin/cfd_para.hypara +++ b/B05_ThreeD_x38_Laminar_Unstruct_128CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B06_ThreeD_Axisymmetric_SA_Unstruct_64CPU/bin/cfd_para.hypara b/B06_ThreeD_Axisymmetric_SA_Unstruct_64CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B06_ThreeD_Axisymmetric_SA_Unstruct_64CPU/bin/cfd_para.hypara +++ b/B06_ThreeD_Axisymmetric_SA_Unstruct_64CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B07_ThreeD_Sphere_Laminar_Unstruct_4CPU/bin/cfd_para.hypara b/B07_ThreeD_Sphere_Laminar_Unstruct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B07_ThreeD_Sphere_Laminar_Unstruct_4CPU/bin/cfd_para.hypara +++ b/B07_ThreeD_Sphere_Laminar_Unstruct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B08_TwoD_Plate_Laminar_Unstruct_1CPU/bin/cfd_para.hypara b/B08_TwoD_Plate_Laminar_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B08_TwoD_Plate_Laminar_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B08_TwoD_Plate_Laminar_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B09_TwoD_plate_SA_Unstruct_1CPU/bin/cfd_para.hypara b/B09_TwoD_plate_SA_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B09_TwoD_plate_SA_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B09_TwoD_plate_SA_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B10_ThreeD_CompRamp-16_SA_Unstruct_1CPU/bin/cfd_para.hypara b/B10_ThreeD_CompRamp-16_SA_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B10_ThreeD_CompRamp-16_SA_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B10_ThreeD_CompRamp-16_SA_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B11_ThreeD_DLR-GK01_Ma7_SA_Unstruct_8CPU/bin/cfd_para.hypara b/B11_ThreeD_DLR-GK01_Ma7_SA_Unstruct_8CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B11_ThreeD_DLR-GK01_Ma7_SA_Unstruct_8CPU/bin/cfd_para.hypara +++ b/B11_ThreeD_DLR-GK01_Ma7_SA_Unstruct_8CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B12_ThreeD_DoubleEllipse_Laminar_Unstruct_4CPU/bin/cfd_para.hypara b/B12_ThreeD_DoubleEllipse_Laminar_Unstruct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B12_ThreeD_DoubleEllipse_Laminar_Unstruct_4CPU/bin/cfd_para.hypara +++ b/B12_ThreeD_DoubleEllipse_Laminar_Unstruct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B13_ThreeD_Chnt_SA_Unstruct_100CPU/bin/cfd_para.hypara b/B13_ThreeD_Chnt_SA_Unstruct_100CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B13_ThreeD_Chnt_SA_Unstruct_100CPU/bin/cfd_para.hypara +++ b/B13_ThreeD_Chnt_SA_Unstruct_100CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B14_TwoD_30p30n_SA_Unstruct_4CPU/bin/cfd_para.hypara b/B14_TwoD_30p30n_SA_Unstruct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B14_TwoD_30p30n_SA_Unstruct_4CPU/bin/cfd_para.hypara +++ b/B14_TwoD_30p30n_SA_Unstruct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B15_TwoD_NLR7301_SA_Unstruct_1CPU/bin/cfd_para.hypara b/B15_TwoD_NLR7301_SA_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B15_TwoD_NLR7301_SA_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B15_TwoD_NLR7301_SA_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B16_ThreeD_Hollow_Cylinder_Flare_Laminar_Unstruct_16CPU/bin/cfd_para.hypara b/B16_ThreeD_Hollow_Cylinder_Flare_Laminar_Unstruct_16CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B16_ThreeD_Hollow_Cylinder_Flare_Laminar_Unstruct_16CPU/bin/cfd_para.hypara +++ b/B16_ThreeD_Hollow_Cylinder_Flare_Laminar_Unstruct_16CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B17_TwoD_Plate_S-KSR_SST_Unstruct_4CPU/bin/cfd_para.hypara b/B17_TwoD_Plate_S-KSR_SST_Unstruct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B17_TwoD_Plate_S-KSR_SST_Unstruct_4CPU/bin/cfd_para.hypara +++ b/B17_TwoD_Plate_S-KSR_SST_Unstruct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B18_ThreeD_CRM-HL_Level-B_SA_Unstruct_1024CPU/bin/cfd_para.hypara b/B18_ThreeD_CRM-HL_Level-B_SA_Unstruct_1024CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B18_ThreeD_CRM-HL_Level-B_SA_Unstruct_1024CPU/bin/cfd_para.hypara +++ b/B18_ThreeD_CRM-HL_Level-B_SA_Unstruct_1024CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B19_ThreeD_TrapWing_SA_AoA13_256CPU/bin/cfd_para.hypara b/B19_ThreeD_TrapWing_SA_AoA13_256CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B19_ThreeD_TrapWing_SA_AoA13_256CPU/bin/cfd_para.hypara +++ b/B19_ThreeD_TrapWing_SA_AoA13_256CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B20_TwoD_NACA0012_SA_GMRES_Unstruct_1CPU/bin/cfd_para.hypara b/B20_TwoD_NACA0012_SA_GMRES_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B20_TwoD_NACA0012_SA_GMRES_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B20_TwoD_NACA0012_SA_GMRES_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B21_ThreeD_Sphere_Laminar_GMRES_Unstruct_1CPU/bin/cfd_para.hypara b/B21_ThreeD_Sphere_Laminar_GMRES_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B21_ThreeD_Sphere_Laminar_GMRES_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B21_ThreeD_Sphere_Laminar_GMRES_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B22_ThreeD_Rotor67_SngleZone_RotatingFrame_6CPU/bin/cfd_para.hypara b/B22_ThreeD_Rotor67_SngleZone_RotatingFrame_6CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B22_ThreeD_Rotor67_SngleZone_RotatingFrame_6CPU/bin/cfd_para.hypara +++ b/B22_ThreeD_Rotor67_SngleZone_RotatingFrame_6CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B23_ThreeD_Stage35_MultiZone_MixingPlane_1CPU/bin/cfd_para.hypara b/B23_ThreeD_Stage35_MultiZone_MixingPlane_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B23_ThreeD_Stage35_MultiZone_MixingPlane_1CPU/bin/cfd_para.hypara +++ b/B23_ThreeD_Stage35_MultiZone_MixingPlane_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B24_ThreeD_Aachen-row1_SngleZone_Periodicity_4CPU/bin/cfd_para.hypara b/B24_ThreeD_Aachen-row1_SngleZone_Periodicity_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B24_ThreeD_Aachen-row1_SngleZone_Periodicity_4CPU/bin/cfd_para.hypara +++ b/B24_ThreeD_Aachen-row1_SngleZone_Periodicity_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B25_TwoD_Cylinder_Laminar_LowSpeed_Steady_Unstruct_4CPU/bin/cfd_para.hypara b/B25_TwoD_Cylinder_Laminar_LowSpeed_Steady_Unstruct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B25_TwoD_Cylinder_Laminar_LowSpeed_Steady_Unstruct_4CPU/bin/cfd_para.hypara +++ b/B25_TwoD_Cylinder_Laminar_LowSpeed_Steady_Unstruct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/B26_TwoD_Cylinder_Laminar_LowSpeed_Unsteady_Unstruct_4CPU/bin/cfd_para.hypara b/B26_TwoD_Cylinder_Laminar_LowSpeed_Unsteady_Unstruct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/B26_TwoD_Cylinder_Laminar_LowSpeed_Unsteady_Unstruct_4CPU/bin/cfd_para.hypara +++ b/B26_TwoD_Cylinder_Laminar_LowSpeed_Unsteady_Unstruct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/C01_TwoD_Cylinder_Laminar_Mix_4CPU/bin/cfd_para.hypara b/C01_TwoD_Cylinder_Laminar_Mix_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/C01_TwoD_Cylinder_Laminar_Mix_4CPU/bin/cfd_para.hypara +++ b/C01_TwoD_Cylinder_Laminar_Mix_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/C02_TwoD_Rae2822_SST_Mix_4CPU/bin/cfd_para.hypara b/C02_TwoD_Rae2822_SST_Mix_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/C02_TwoD_Rae2822_SST_Mix_4CPU/bin/cfd_para.hypara +++ b/C02_TwoD_Rae2822_SST_Mix_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/C03_ThreeD_M6_SST_Mix_64CPU/bin/cfd_para.hypara b/C03_ThreeD_M6_SST_Mix_64CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/C03_ThreeD_M6_SST_Mix_64CPU/bin/cfd_para.hypara +++ b/C03_ThreeD_M6_SST_Mix_64CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/C04_ThreeD_F6-WB_SST_Mix_256CPU/bin/cfd_para.hypara b/C04_ThreeD_F6-WB_SST_Mix_256CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/C04_ThreeD_F6-WB_SST_Mix_256CPU/bin/cfd_para.hypara +++ b/C04_ThreeD_F6-WB_SST_Mix_256CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/D01_TwoD_Cylinder_Laminar_HighOrder_Struct_1CPU/bin/cfd_para.hypara b/D01_TwoD_Cylinder_Laminar_HighOrder_Struct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/D01_TwoD_Cylinder_Laminar_HighOrder_Struct_1CPU/bin/cfd_para.hypara +++ b/D01_TwoD_Cylinder_Laminar_HighOrder_Struct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/D02_ThreeD_DoubleEllipse_Laminar_HighOrder_Struct_48CPU/bin/cfd_para.hypara b/D02_ThreeD_DoubleEllipse_Laminar_HighOrder_Struct_48CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/D02_ThreeD_DoubleEllipse_Laminar_HighOrder_Struct_48CPU/bin/cfd_para.hypara +++ b/D02_ThreeD_DoubleEllipse_Laminar_HighOrder_Struct_48CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/D03_TwoD_30P30N_SST_HighOrderWENN_Struct_6CPU/bin/cfd_para.hypara b/D03_TwoD_30P30N_SST_HighOrderWENN_Struct_6CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/D03_TwoD_30P30N_SST_HighOrderWENN_Struct_6CPU/bin/cfd_para.hypara +++ b/D03_TwoD_30P30N_SST_HighOrderWENN_Struct_6CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/D04_ThreeD_ONERA_M6_SST_HighOrderWENN_Struct_8CPU/bin/cfd_para.hypara b/D04_ThreeD_ONERA_M6_SST_HighOrderWENN_Struct_8CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/D04_ThreeD_ONERA_M6_SST_HighOrderWENN_Struct_8CPU/bin/cfd_para.hypara +++ b/D04_ThreeD_ONERA_M6_SST_HighOrderWENN_Struct_8CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/D05_ThreeD_DoubleEllipse_Laminar_HighOrderWENN_Struct_48CPU/bin/cfd_para.hypara b/D05_ThreeD_DoubleEllipse_Laminar_HighOrderWENN_Struct_48CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/D05_ThreeD_DoubleEllipse_Laminar_HighOrderWENN_Struct_48CPU/bin/cfd_para.hypara +++ b/D05_ThreeD_DoubleEllipse_Laminar_HighOrderWENN_Struct_48CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/E01_ThreeD_Cylinder_LES_Re3900_Struct_120CPU/bin/cfd_para.hypara b/E01_ThreeD_Cylinder_LES_Re3900_Struct_120CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/E01_ThreeD_Cylinder_LES_Re3900_Struct_120CPU/bin/cfd_para.hypara +++ b/E01_ThreeD_Cylinder_LES_Re3900_Struct_120CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/E02_ThreeD_Cylinder_LES_Re3900_Unstruct_120CPU/bin/cfd_para.hypara b/E02_ThreeD_Cylinder_LES_Re3900_Unstruct_120CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/E02_ThreeD_Cylinder_LES_Re3900_Unstruct_120CPU/bin/cfd_para.hypara +++ b/E02_ThreeD_Cylinder_LES_Re3900_Unstruct_120CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/E03-ThreeD_NACA0012_LES_Struct_400CPU/bin/cfd_para.hypara b/E03-ThreeD_NACA0012_LES_Struct_400CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/E03-ThreeD_NACA0012_LES_Struct_400CPU/bin/cfd_para.hypara +++ b/E03-ThreeD_NACA0012_LES_Struct_400CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F01_TwoD_30p30n_OversetGrid_SA_Struct_4CPU/bin/cfd_para.hypara b/F01_TwoD_30p30n_OversetGrid_SA_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F01_TwoD_30p30n_OversetGrid_SA_Struct_4CPU/bin/cfd_para.hypara +++ b/F01_TwoD_30p30n_OversetGrid_SA_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F02_ThreeD_duodan_OversetGrid_SA_Struct_8CPU/bin/cfd_para.hypara b/F02_ThreeD_duodan_OversetGrid_SA_Struct_8CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F02_ThreeD_duodan_OversetGrid_SA_Struct_8CPU/bin/cfd_para.hypara +++ b/F02_ThreeD_duodan_OversetGrid_SA_Struct_8CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F03_TwoD_Dual0012_OversetConfig_Unstruct_4CPU/bin/cfd_para.hypara b/F03_TwoD_Dual0012_OversetConfig_Unstruct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F03_TwoD_Dual0012_OversetConfig_Unstruct_4CPU/bin/cfd_para.hypara +++ b/F03_TwoD_Dual0012_OversetConfig_Unstruct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F04_TwoD_Dual0012_OversetGrid_InvisCal_Unstruct_4CPU/bin/cfd_para.hypara b/F04_TwoD_Dual0012_OversetGrid_InvisCal_Unstruct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F04_TwoD_Dual0012_OversetGrid_InvisCal_Unstruct_4CPU/bin/cfd_para.hypara +++ b/F04_TwoD_Dual0012_OversetGrid_InvisCal_Unstruct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F05_ThreeD_AEDC_OversetConfig_Unstruct_8CPU/bin/cfd_para.hypara b/F05_ThreeD_AEDC_OversetConfig_Unstruct_8CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F05_ThreeD_AEDC_OversetConfig_Unstruct_8CPU/bin/cfd_para.hypara +++ b/F05_ThreeD_AEDC_OversetConfig_Unstruct_8CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F06_ThreeD_AEDC_Separation_OversetGrid_Unsteady_InvisCal_Unstruct_8CPU/bin/cfd_para.hypara b/F06_ThreeD_AEDC_Separation_OversetGrid_Unsteady_InvisCal_Unstruct_8CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F06_ThreeD_AEDC_Separation_OversetGrid_Unsteady_InvisCal_Unstruct_8CPU/bin/cfd_para.hypara +++ b/F06_ThreeD_AEDC_Separation_OversetGrid_Unsteady_InvisCal_Unstruct_8CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F07-TwoD_NACA0012_PitchingMovement_SA_Struct_4CPU/bin/cfd_para.hypara b/F07-TwoD_NACA0012_PitchingMovement_SA_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F07-TwoD_NACA0012_PitchingMovement_SA_Struct_4CPU/bin/cfd_para.hypara +++ b/F07-TwoD_NACA0012_PitchingMovement_SA_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F08-ThreeD_Finner_Laminar_Ma2d5_Struct_16CPU/bin/cfd_para.hypara b/F08-ThreeD_Finner_Laminar_Ma2d5_Struct_16CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F08-ThreeD_Finner_Laminar_Ma2d5_Struct_16CPU/bin/cfd_para.hypara +++ b/F08-ThreeD_Finner_Laminar_Ma2d5_Struct_16CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F09-ThreeD_Brid_GridDeformationSPRING_Unstruct_1CPU/bin/cfd_para.hypara b/F09-ThreeD_Brid_GridDeformationSPRING_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F09-ThreeD_Brid_GridDeformationSPRING_Unstruct_1CPU/bin/cfd_para.hypara +++ b/F09-ThreeD_Brid_GridDeformationSPRING_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F10-ThreeD_Brid_GridDeformationRBF_Unstruct_1CPU/bin/cfd_para.hypara b/F10-ThreeD_Brid_GridDeformationRBF_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F10-ThreeD_Brid_GridDeformationRBF_Unstruct_1CPU/bin/cfd_para.hypara +++ b/F10-ThreeD_Brid_GridDeformationRBF_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F11_ThreeD_M6_GridParallelRefine_Unstruct_4CPU/bin/cfd_para.hypara b/F11_ThreeD_M6_GridParallelRefine_Unstruct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F11_ThreeD_M6_GridParallelRefine_Unstruct_4CPU/bin/cfd_para.hypara +++ b/F11_ThreeD_M6_GridParallelRefine_Unstruct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/F12_ThreeD_NRELPhaseâ…¥_Laminar_OversetGrid_LowSpeed_Unsteady_Unstruct_64CPU/bin/cfd_para.hypara b/F12_ThreeD_NRELPhaseâ…¥_Laminar_OversetGrid_LowSpeed_Unsteady_Unstruct_64CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/F12_ThreeD_NRELPhaseâ…¥_Laminar_OversetGrid_LowSpeed_Unsteady_Unstruct_64CPU/bin/cfd_para.hypara +++ b/F12_ThreeD_NRELPhaseâ…¥_Laminar_OversetGrid_LowSpeed_Unsteady_Unstruct_64CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/G05_TwoD_Cylinder_N2-O2_Premixing-Unstruct_1CPU/bin/cfd_para.hypara b/G05_TwoD_Cylinder_N2-O2_Premixing-Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/G05_TwoD_Cylinder_N2-O2_Premixing-Unstruct_1CPU/bin/cfd_para.hypara +++ b/G05_TwoD_Cylinder_N2-O2_Premixing-Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/G06_ThreeD_Sphere_N2-O2_Premixing-Unstruct_1CPU/bin/cfd_para.hypara b/G06_ThreeD_Sphere_N2-O2_Premixing-Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/G06_ThreeD_Sphere_N2-O2_Premixing-Unstruct_1CPU/bin/cfd_para.hypara +++ b/G06_ThreeD_Sphere_N2-O2_Premixing-Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/G07_TwoD_Pipe_Air-CH4_Mixing-Unstruct_1CPU/bin/cfd_para.hypara b/G07_TwoD_Pipe_Air-CH4_Mixing-Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/G07_TwoD_Pipe_Air-CH4_Mixing-Unstruct_1CPU/bin/cfd_para.hypara +++ b/G07_TwoD_Pipe_Air-CH4_Mixing-Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/G08_TwoD_TankLeak_NG_Multispecies_Unstruct_Unsteady_4CPU/bin/cfd_para.hypara b/G08_TwoD_TankLeak_NG_Multispecies_Unstruct_Unsteady_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/G08_TwoD_TankLeak_NG_Multispecies_Unstruct_Unsteady_4CPU/bin/cfd_para.hypara +++ b/G08_TwoD_TankLeak_NG_Multispecies_Unstruct_Unsteady_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H01_TwoD_BackStep_KE_UPWIND_4CPU/bin/cfd_para.hypara b/H01_TwoD_BackStep_KE_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H01_TwoD_BackStep_KE_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H01_TwoD_BackStep_KE_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H02_TwoD_Cavitity_Re100_UPWIND_4CPU/bin/cfd_para.hypara b/H02_TwoD_Cavitity_Re100_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H02_TwoD_Cavitity_Re100_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H02_TwoD_Cavitity_Re100_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H03_TwoD_GasLeakage_Steady_UPWIND_4CPU/bin/cfd_para.hypara b/H03_TwoD_GasLeakage_Steady_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H03_TwoD_GasLeakage_Steady_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H03_TwoD_GasLeakage_Steady_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H04_TwoD_NACA0012_UPWIND_SA_4CPU/bin/cfd_para.hypara b/H04_TwoD_NACA0012_UPWIND_SA_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H04_TwoD_NACA0012_UPWIND_SA_4CPU/bin/cfd_para.hypara +++ b/H04_TwoD_NACA0012_UPWIND_SA_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H05_TwoD_NACA0012_SIMPLEC_4CPU/bin/cfd_para.hypara b/H05_TwoD_NACA0012_SIMPLEC_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H05_TwoD_NACA0012_SIMPLEC_4CPU/bin/cfd_para.hypara +++ b/H05_TwoD_NACA0012_SIMPLEC_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H06_TwoD_NaturalConvection_CDS_4CPU/bin/cfd_para.hypara b/H06_TwoD_NaturalConvection_CDS_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H06_TwoD_NaturalConvection_CDS_4CPU/bin/cfd_para.hypara +++ b/H06_TwoD_NaturalConvection_CDS_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H07_TwoD_Plate_Turb_UPWIND_4CPU/bin/cfd_para.hypara b/H07_TwoD_Plate_Turb_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H07_TwoD_Plate_Turb_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H07_TwoD_Plate_Turb_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H08_TwoD_Species_Turb_UPWIND_4CPU/bin/cfd_para.hypara b/H08_TwoD_Species_Turb_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H08_TwoD_Species_Turb_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H08_TwoD_Species_Turb_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H09_ThreeD_Car_Turb_UPWIND_4CPU/bin/cfd_para.hypara b/H09_ThreeD_Car_Turb_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H09_ThreeD_Car_Turb_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H09_ThreeD_Car_Turb_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H10_ThreeD_Chnt_Lam_UPWIND_4CPU/bin/cfd_para.hypara b/H10_ThreeD_Chnt_Lam_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H10_ThreeD_Chnt_Lam_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H10_ThreeD_Chnt_Lam_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H11_ThreeD_GasLeakage_Unsteady_UPWIND_4CPU/bin/cfd_para.hypara b/H11_ThreeD_GasLeakage_Unsteady_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H11_ThreeD_GasLeakage_Unsteady_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H11_ThreeD_GasLeakage_Unsteady_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H12_ThreeD_Species_Transient_UPWIND_4CPU/bin/cfd_para.hypara b/H12_ThreeD_Species_Transient_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H12_ThreeD_Species_Transient_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H12_ThreeD_Species_Transient_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/H13_ThreeD_SUBOFF_UPWIND_4CPU/bin/cfd_para.hypara b/H13_ThreeD_SUBOFF_UPWIND_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/H13_ThreeD_SUBOFF_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H13_ThreeD_SUBOFF_UPWIND_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/L01_TwoD_Cavity_BGK_MPI_1CPU/bin/cfd_para.hypara b/L01_TwoD_Cavity_BGK_MPI_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/L01_TwoD_Cavity_BGK_MPI_1CPU/bin/cfd_para.hypara +++ b/L01_TwoD_Cavity_BGK_MPI_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/L02_ThreeD_Channel_Turb_BGK_MPI_32CPU/bin/cfd_para.hypara b/L02_ThreeD_Channel_Turb_BGK_MPI_32CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/L02_ThreeD_Channel_Turb_BGK_MPI_32CPU/bin/cfd_para.hypara +++ b/L02_ThreeD_Channel_Turb_BGK_MPI_32CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/L03_ThreeD_Poiseuille_MRT_MPI_4CPU/bin/cfd_para.hypara b/L03_ThreeD_Poiseuille_MRT_MPI_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/L03_ThreeD_Poiseuille_MRT_MPI_4CPU/bin/cfd_para.hypara +++ b/L03_ThreeD_Poiseuille_MRT_MPI_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/L04_ThreeD_Spoiler_BGK_MPI_8CPU/bin/cfd_para.hypara b/L04_ThreeD_Spoiler_BGK_MPI_8CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/L04_ThreeD_Spoiler_BGK_MPI_8CPU/bin/cfd_para.hypara +++ b/L04_ThreeD_Spoiler_BGK_MPI_8CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/L05_TwoD_Cavity_BGK_OMP_1CPU/bin/cfd_para.hypara b/L05_TwoD_Cavity_BGK_OMP_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/L05_TwoD_Cavity_BGK_OMP_1CPU/bin/cfd_para.hypara +++ b/L05_TwoD_Cavity_BGK_OMP_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/L06_TwoD_Cylinder_BGK_OMP_4CPU/bin/cfd_para.hypara b/L06_TwoD_Cylinder_BGK_OMP_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/L06_TwoD_Cylinder_BGK_OMP_4CPU/bin/cfd_para.hypara +++ b/L06_TwoD_Cylinder_BGK_OMP_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/X01_ThreeD_SEEBALR_Euler_Struct_8CPU/bin/cfd_para.hypara b/X01_ThreeD_SEEBALR_Euler_Struct_8CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/X01_ThreeD_SEEBALR_Euler_Struct_8CPU/bin/cfd_para.hypara +++ b/X01_ThreeD_SEEBALR_Euler_Struct_8CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/Z01_TwoD_30p30n_ProbesMonitor_SA_Struct_4CPU/bin/cfd_para.hypara b/Z01_TwoD_30p30n_ProbesMonitor_SA_Struct_4CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/Z01_TwoD_30p30n_ProbesMonitor_SA_Struct_4CPU/bin/cfd_para.hypara +++ b/Z01_TwoD_30p30n_ProbesMonitor_SA_Struct_4CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6; diff --git a/Z02_ThreeD_Cylinder_LinesMonitor_Laminar_Unstruct_1CPU/bin/cfd_para.hypara b/Z02_ThreeD_Cylinder_LinesMonitor_Laminar_Unstruct_1CPU/bin/cfd_para.hypara index db7de8d..74ecd79 100644 --- a/Z02_ThreeD_Cylinder_LinesMonitor_Laminar_Unstruct_1CPU/bin/cfd_para.hypara +++ b/Z02_ThreeD_Cylinder_LinesMonitor_Laminar_Unstruct_1CPU/bin/cfd_para.hypara @@ -295,6 +295,8 @@ int preconFarfieldBCMethod = 1; //flowInitMethod: Flow field initialization method. // 0 -- The entire flow field is initialized according to Infinite velocity. // 1 -- The velocity near the wall is initialized according to the boundary layer of the plate. +// 2 -- The entire flow field is initialized by flowInitStep iterations of FirstOrder method. +// 3 -- The entire flow field is initialized by flowInitStep iterations of LUSGS method. // refReNumber: Reynolds number, which is based unit length, unit of 1/m. // refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. // freestream_vibration_temperature: Dimensional freestream vibration temperature. @@ -419,7 +421,7 @@ string str_limiter_name = "vanalbada"; // 3 -- IDDES. // uns_scheme_name: Spatial discretisation scheme of Unstruct grid. // Using this when solve Unstructered grid or hybrid. -// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -513,6 +515,7 @@ double AusmpwPlusLimiter = 1.0; // 6 -- Jacobian iteration. // 7 -- Line LU-SGS. // 8 -- Matrix LU-SGS. +// 9 -- GMRES. // iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation. // Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method. // CFLMethod: The method to compute cfl number. @@ -521,6 +524,8 @@ double AusmpwPlusLimiter = 1.0; // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. +// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration. +// OriginalTscheme : Used for LUSGS and GMres hybrid computing. // ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i]) // swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0. // nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS. @@ -569,7 +574,8 @@ int isUsePreTwall = 0; double CFLStart = 0.01; double CFLEnd = 10.0; int CFLVaryStep = 500; - +double GMRESCFLScale = 1.0; +int OriginalTscheme = 0; double pMaxForCFL = 0.2; double pMinForCFL = 0.1; double deltaMaxForCFL = 0.2; @@ -875,10 +881,7 @@ int monitorNegativeConstant = 0; // iapplication: // 0 -- gas model is fixed in the codes. // 1 -- gas model is imported from library files. -// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver, -// isAdaptiveSolver > 0 indicates the HyFlow self-adaptive solver. -// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps. -// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual. +// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1054,9 +1057,6 @@ int monitorNegativeConstant = 0; // firstStepError : the residual error of the first step iteration for the self-adaptive calculation. // secondStepError : the residual error of the second step iteration for the self-adaptive calculation. // thirdStepError : the residual error of the third step iteration for the self-adaptive calculation. -// useHyflowSetting: Setting for HyFLOW GUI. -// 0 -- PHengLEI. -// 1 -- HyFLOW. // nProtectData: Use the continuation file data protection mechanism. // 0 -- no. // 1 -- yes. @@ -1155,7 +1155,6 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; -int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1424,6 +1423,41 @@ int morphing_0 = 0; // post indentify. int integralOrder = 4; +#************************************************************************ +# TurboMachinery Parameter * +#************************************************************************ +// ----------------- Rotating Frame -------------------------------- +// referenceFrame: whether rotating reference frame used. +// 0 -- Stationary Frame. +// 1 -- Translational Frame. +// 2 -- Rotational Frame. +int referenceFrame = 0; + +// nTurboZone: number of rows of TurboMachinery. +int nTurboZone = 0; + +// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone +// "Periodic_up, Periodic_down" means a pair of name of one zone +string Periodic_Name[] = "Periodic_up, Periodic_down"; + +// PeriodicRotationAngle means rotating angle for each zone. +// PeriodicRotationAngle[] = [theta1, theta2...] +// theta1, theta2 means rotating angle for zone1,zone2. +double PeriodicRotationAngle[] = [16.363636363636]; + +// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone-2 +// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet. +string MixingPlane[] = ""; + +// Omega: angular velocity(rad/s) of each zone. +double Omega[] = [-1680.0]; + +// shroud: define turbomachinery shroud of each zone, because shroud do not rotate. +string shroud[] = "shroud"; + +// nSpanSection: number of spanwise section used for mixing plane. +int nSpanSection = 0; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 6.5e6;