From 6cd9da73a0dc91f2c636065ed5edfd18a02b7ad5 Mon Sep 17 00:00:00 2001 From: hechao <490956681@qq.com> Date: Fri, 28 Jun 2024 15:38:48 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BA=A2=E5=B1=B1=E5=AE=98=E6=96=B9=E7=AE=97?= =?UTF-8?q?=E4=BE=8B=E5=BA=93=EF=BC=8C=E6=9B=B4=E6=96=B02406=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E9=BB=98=E8=AE=A4=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 15 ++-- .../bin/cfd_para.hypara | 15 ++-- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 3 + .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- .../bin/cfd_para.hypara | 69 ++++++------------- 108 files changed, 2123 insertions(+), 5155 deletions(-) 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 e757191..db7de8d 100644 --- a/A01_TwoD_Plate_Laminar_Struct_1CPU/bin/cfd_para.hypara +++ b/A01_TwoD_Plate_Laminar_Struct_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/A03_TwoD_plate_SST_LowMach_Struct/bin/cfd_para.hypara +++ b/A03_TwoD_plate_SST_LowMach_Struct/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/A05_TwoD_Cylinder_Laminar_Ma8d03_Struct/bin/cfd_para.hypara +++ b/A05_TwoD_Cylinder_Laminar_Ma8d03_Struct/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para.hypara +++ b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/A07_TwoD_Rae2822_SST_Struct_4CPU/bin/cfd_para.hypara +++ b/A07_TwoD_Rae2822_SST_Struct_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/A08_TwoD_30p30n_SST_Struct_4CPU/bin/cfd_para.hypara +++ b/A08_TwoD_30p30n_SST_Struct_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/A10_ThreeD_CHNT_SST_Struct_16CPU/bin/cfd_para.hypara +++ b/A10_ThreeD_CHNT_SST_Struct_16CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/A11_ThreeD_Sphere_Laminar_Ma10_Struct/bin/cfd_para.hypara +++ b/A11_ThreeD_Sphere_Laminar_Ma10_Struct/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/A12_ThreeD_DoubleEllipse_Laminar_Struct_4CPU/bin/cfd_para.hypara +++ b/A12_ThreeD_DoubleEllipse_Laminar_Struct_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/A16_TwoD_NLR7301_SST_Struct_1CPU/bin/cfd_para.hypara +++ b/A16_TwoD_NLR7301_SST_Struct_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B01_TwoD_NACA0012_SA_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B01_TwoD_NACA0012_SA_Unstruct_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B02_TwoD_NACA4412_SA_Unstruct_2CPU/bin/cfd_para.hypara +++ b/B02_TwoD_NACA4412_SA_Unstruct_2CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B03_TwoD_Rae2822_SA_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B03_TwoD_Rae2822_SA_Unstruct_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B05_ThreeD_x38_Laminar_Unstruct_128CPU/bin/cfd_para.hypara +++ b/B05_ThreeD_x38_Laminar_Unstruct_128CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B06_ThreeD_Axisymmetric_SA_Unstruct_64CPU/bin/cfd_para.hypara +++ b/B06_ThreeD_Axisymmetric_SA_Unstruct_64CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B07_ThreeD_Sphere_Laminar_Unstruct_4CPU/bin/cfd_para.hypara +++ b/B07_ThreeD_Sphere_Laminar_Unstruct_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B08_TwoD_Plate_Laminar_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B08_TwoD_Plate_Laminar_Unstruct_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B09_TwoD_plate_SA_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B09_TwoD_plate_SA_Unstruct_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B12_ThreeD_DoubleEllipse_Laminar_Unstruct_4CPU/bin/cfd_para.hypara +++ b/B12_ThreeD_DoubleEllipse_Laminar_Unstruct_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B13_ThreeD_Chnt_SA_Unstruct_100CPU/bin/cfd_para.hypara +++ b/B13_ThreeD_Chnt_SA_Unstruct_100CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B14_TwoD_30p30n_SA_Unstruct_4CPU/bin/cfd_para.hypara +++ b/B14_TwoD_30p30n_SA_Unstruct_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B15_TwoD_NLR7301_SA_Unstruct_1CPU/bin/cfd_para.hypara +++ b/B15_TwoD_NLR7301_SA_Unstruct_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B19_ThreeD_TrapWing_SA_AoA13_256CPU/bin/cfd_para.hypara +++ b/B19_ThreeD_TrapWing_SA_AoA13_256CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B22_ThreeD_Rotor67_SngleZone_RotatingFrame_6CPU/bin/cfd_para.hypara +++ b/B22_ThreeD_Rotor67_SngleZone_RotatingFrame_6CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/B23_ThreeD_Stage35_MultiZone_MixingPlane_1CPU/bin/cfd_para.hypara +++ b/B23_ThreeD_Stage35_MultiZone_MixingPlane_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 8171ce5..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -515,6 +515,9 @@ double AusmpwPlusLimiter = 1.0; // 8 -- Matrix LU-SGS. // 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. +// 0 -- Linear change. +// 1 -- Exponential change. // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. @@ -672,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -710,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -727,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -1196,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1409,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. 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 8171ce5..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -515,6 +515,9 @@ double AusmpwPlusLimiter = 1.0; // 8 -- Matrix LU-SGS. // 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. +// 0 -- Linear change. +// 1 -- Exponential change. // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. @@ -672,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -710,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -727,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -1196,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1409,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. 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 e757191..db7de8d 100644 --- a/C01_TwoD_Cylinder_Laminar_Mix_4CPU/bin/cfd_para.hypara +++ b/C01_TwoD_Cylinder_Laminar_Mix_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/C02_TwoD_Rae2822_SST_Mix_4CPU/bin/cfd_para.hypara +++ b/C02_TwoD_Rae2822_SST_Mix_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/C03_ThreeD_M6_SST_Mix_64CPU/bin/cfd_para.hypara +++ b/C03_ThreeD_M6_SST_Mix_64CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/E03-ThreeD_NACA0012_LES_Struct_400CPU/bin/cfd_para.hypara +++ b/E03-ThreeD_NACA0012_LES_Struct_400CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/F03_TwoD_Dual0012_OversetConfig_Unstruct_4CPU/bin/cfd_para.hypara +++ b/F03_TwoD_Dual0012_OversetConfig_Unstruct_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/F05_ThreeD_AEDC_OversetConfig_Unstruct_8CPU/bin/cfd_para.hypara +++ b/F05_ThreeD_AEDC_OversetConfig_Unstruct_8CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/F09-ThreeD_Brid_GridDeformationSPRING_Unstruct_1CPU/bin/cfd_para.hypara +++ b/F09-ThreeD_Brid_GridDeformationSPRING_Unstruct_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/F10-ThreeD_Brid_GridDeformationRBF_Unstruct_1CPU/bin/cfd_para.hypara +++ b/F10-ThreeD_Brid_GridDeformationRBF_Unstruct_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/F11_ThreeD_M6_GridParallelRefine_Unstruct_4CPU/bin/cfd_para.hypara +++ b/F11_ThreeD_M6_GridParallelRefine_Unstruct_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 0876e96..db7de8d 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 @@ -515,6 +515,9 @@ double AusmpwPlusLimiter = 1.0; // 8 -- Matrix LU-SGS. // 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. +// 0 -- Linear change. +// 1 -- Exponential change. // CFLStart: Started cfl number. // CFLEnd: End cfl number. // CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd. 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H01_TwoD_BackStep_KE_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H01_TwoD_BackStep_KE_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H02_TwoD_Cavitity_Re100_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H02_TwoD_Cavitity_Re100_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H03_TwoD_GasLeakage_Steady_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H03_TwoD_GasLeakage_Steady_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H04_TwoD_NACA0012_UPWIND_SA_4CPU/bin/cfd_para.hypara +++ b/H04_TwoD_NACA0012_UPWIND_SA_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H05_TwoD_NACA0012_SIMPLEC_4CPU/bin/cfd_para.hypara +++ b/H05_TwoD_NACA0012_SIMPLEC_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H06_TwoD_NaturalConvection_CDS_4CPU/bin/cfd_para.hypara +++ b/H06_TwoD_NaturalConvection_CDS_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H07_TwoD_Plate_Turb_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H07_TwoD_Plate_Turb_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H08_TwoD_Species_Turb_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H08_TwoD_Species_Turb_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H09_ThreeD_Car_Turb_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H09_ThreeD_Car_Turb_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H10_ThreeD_Chnt_Lam_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H10_ThreeD_Chnt_Lam_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H11_ThreeD_GasLeakage_Unsteady_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H11_ThreeD_GasLeakage_Unsteady_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H12_ThreeD_Species_Transient_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H12_ThreeD_Species_Transient_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/H13_ThreeD_SUBOFF_UPWIND_4CPU/bin/cfd_para.hypara +++ b/H13_ThreeD_SUBOFF_UPWIND_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/L01_TwoD_Cavity_BGK_MPI_1CPU/bin/cfd_para.hypara +++ b/L01_TwoD_Cavity_BGK_MPI_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/L03_ThreeD_Poiseuille_MRT_MPI_4CPU/bin/cfd_para.hypara +++ b/L03_ThreeD_Poiseuille_MRT_MPI_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/L04_ThreeD_Spoiler_BGK_MPI_8CPU/bin/cfd_para.hypara +++ b/L04_ThreeD_Spoiler_BGK_MPI_8CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/L05_TwoD_Cavity_BGK_OMP_1CPU/bin/cfd_para.hypara +++ b/L05_TwoD_Cavity_BGK_OMP_1CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/L06_TwoD_Cylinder_BGK_OMP_4CPU/bin/cfd_para.hypara +++ b/L06_TwoD_Cylinder_BGK_OMP_4CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 100644 --- a/X01_ThreeD_SEEBALR_Euler_Struct_8CPU/bin/cfd_para.hypara +++ b/X01_ThreeD_SEEBALR_Euler_Struct_8CPU/bin/cfd_para.hypara @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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 e757191..db7de8d 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 @@ -8,7 +8,7 @@ // Platform for Hybrid Engineering Simulation of Flows + // China Aerodynamics Research and Development Center + // (C) Copyright, Since 2010 + -// PHengLEI 2312 + +// PHengLEI 2406 + //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ########################################################################### # Default parameters for Grid conversion # @@ -295,8 +295,6 @@ 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. @@ -421,7 +419,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", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle", +// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle", // -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+". // uns_limiter_name: Limiter of Unstruct grid. // -- "barth", "vencat", "vanleer", "minmod", @@ -515,14 +513,14 @@ 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. +// 0 -- Linear change. +// 1 -- Exponential change. // 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. @@ -571,8 +569,7 @@ 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; @@ -678,6 +675,7 @@ int plotFieldType = 0; // 1 -- Tecplot ASCII. // 2 -- Ensight binary. // 3 -- Ensight ASCII. +// 4 -- Paraview. int visualfileType = 1; // samplefileMode: The dump mode of sample file. @@ -716,7 +714,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40), // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), streamline_u(45), streamline_v(46), streamline_w(47), // -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52), -// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58), +// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58)(the two parameters are related to CFL self-adaptive, only support struct grid) // -- overlap iblank(iblank, 81), // -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! @@ -733,8 +731,8 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; int nVisualVariables = 8; int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; -int nVisualWallVariables = 9; -int visualWallVariables[] = [0, 1, 2, 3, 4, 5, 9, 10, 11]; +int nVisualWallVariables = 6; +int visualWallVariables[] = [0, 1, 2, 3, 4, 5]; // dumpStandardModel: Dump many standard model data. // 1 -- Turbulent flat plate. @@ -877,7 +875,10 @@ 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: 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. // nm: Equation number of the physics, but is out of commision now. // 4 -- for 2D. // 5 -- for 3D. @@ -1053,6 +1054,9 @@ 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. @@ -1151,6 +1155,7 @@ int nDensityForWallMethod = 0; int wallMultiTemperature = 0; int nProtectData = 0; +int useHyflowSetting = 0; int nAblation = 0; int isInjection = 0; int nViscosityModel = 0; @@ -1195,7 +1200,6 @@ double molecularWeightSpeciesB = 30.0; int nFraction = 0; int nContinueModel = 0; -int nChemicalFlowStep = 0; int ifStartFromPerfectGasResults = 0; int isUseNoneqCond = 0; double frozenCondition = 0.01; @@ -1408,6 +1412,8 @@ double rotateFrequency_0 = 0.0; //string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter"; // dimensional physical time for additional force(s). double addedForceTime_0[] = 0.0; +// dimensional massCenterPosition for additional force(s). +double addedForcePosition_0[] = 0.0, 0.0, 0.0; // additional force(inertia system) fX fY fZ. double addedForce_0[] = 0.0, 0.0, 0.0; // additional moment(inertia system) mX mY mZ. @@ -1418,41 +1424,6 @@ 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;