优化A13-A15参数及说明文档;新增A24-A29、F11算例

This commit is contained in:
hechao 2022-06-29 21:32:49 +08:00
parent 1740362305
commit fda314f0ec
69 changed files with 12778 additions and 201 deletions

View File

@ -1,8 +1,8 @@
# nBoundaryConditons : number of global boundary conditions.
# nBoundaryConditions : number of global boundary conditions.
# bcName : Boundary Condition Name.
# bcType(in PHengLEI): Boundary Condition Type.
# Account of how to set boundaryconditon.
# Account of how to set boundarycondition.
# string bcName = "Farfield";
# {
# int bcType = 4;
@ -13,7 +13,7 @@
# double angleSlide = 0;
# }
int nBoundaryConditons = 4;
int nBoundaryConditions = 4;
string bcName = "SOLID_SURFACE";
{
int bcType = 2;

View File

@ -1,8 +1,8 @@
# nBoundaryConditons : number of global boundary conditions.
# nBoundaryConditions : number of global boundary conditions.
# bcName : Boundary Condition Name.
# bcType(in PHengLEI): Boundary Condition Type.
# Account of how to set boundaryconditon.
# Account of how to set boundarycondition.
# string bcName = "Farfield";
# {
# int bcType = 4;
@ -13,7 +13,7 @@
# double angleSlide = 0;
# }
int nBoundaryConditons = 4;
int nBoundaryConditions = 4;
string bcName = "SOLID_SURFACE";
{
int bcType = 2;

View File

@ -24,6 +24,7 @@
// 4 -- Grid deformation, achieve unstructured grid deformation.
// 5 -- Grid repairing, repair the original grid in order to remove the negative volume cells.
// 6 -- Grid mirroring, mirror a symmetry grid to whole grid.
// 7 -- Grid type change, convert structured grid to unstructured grid.
// multiblock: Multi-block grid or not, only for structured grid conversion.
// 0 -- Not.
// 1 -- Yes.
@ -32,12 +33,23 @@
// 0 -- X axis.
// 1 -- Y axis.
// 2 -- Z axis.
// gridReorder: Reorder cell and face of grid or not, only for 3D unstructured grid conversion,
// which is CGNS type.
// 0 -- Not.
// 1 -- Yes.
// faceReorderMethod: the reorder method face of unstructured grid.
// 0 -- BSFCELLFACEORG.
// 1 -- BSFCELLFACELEFT.
// 2 -- BSFCELLFACERIGHT.
int gridtype = 0;
int gridobj = 1;
int multiblock = 0;
int iadapt = 0;
int SymmetryFaceVector = 1;
int gridReorder = 0;
int faceReorderMethod = 0;
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
@ -61,6 +73,7 @@ int omit_no_bound_bc = 0;
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
// dumpOldGrid: If dump out the old grid file.
// 0 -- Not. (default)
// 1 -- Yes.
@ -82,7 +95,6 @@ string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
// ----------------- some advanced choices ------------------------------
// iunsteady: The Grid is for unsteady simulation or not.
int iunsteady = 0;
int codeOfAleModel = 0;
// fileformat: Ustar Grid file format.
// 0 -- BINARY.
@ -102,12 +114,10 @@ string holeFullFileName = "./oversetGridView/holeFullFile.dat";
string linkFileName = "./oversetGridView/topology.dat";
string zoneInverseFileName = "./oversetGridView/zoneInverseMapping.inp";
// ----------------- Adaptive Mesh Refine -------------------------------
// In this file, the original_grid_file is used of the partition part.
// If use it dependently, abstract it here.
string adapt_grid_file = "./grid/sphere_mixed_adapt1.fts";
string geometryFileName = "./grid/jsm.igs";
// ----------------- Grid Refine Parameters -----------------------------
// anisoRefine: If refine grid by anisoRefine type.
// 0 -- Not. (default)
// 1 -- Yes.
// geometryUnit: Geometry unit.
// 1 -- meter.
// 2 -- millimeter.
@ -117,14 +127,14 @@ string geometryFileName = "./grid/jsm.igs";
// 1 -- JSM-C2-NPOFF case.
// 2 -- CHNT.
// projectOrgPoint: If the original wall points need to be projected or not.
int geometryUnit = 1;
int anisoRefine = 0;
int geometryUnit = 1;
int isProject = 0;
int readDist = 0;
int isDeform = 0;
int exclusiveCase = 0; // 0: NON case; 1: JSM-C2-NPOFF case; 2: CHNT.
int projectOrgPoint = 0; // if project original wall points.
int exclusiveCase = 0;
int projectOrgPoint = 0;
string geometryFileName = "./grid/jsm.igs";
// ----------------- Grid Deform Parameters -----------------------------
// deformationMethod: Grid Deform.
@ -181,8 +191,11 @@ double rotationAngle = 0.0;
// 1 -- struct grid.
// 2 -- refine structured grid.
// maxproc: The number of partition zones that want to be divided into.
// numberOfMultifile: The number of partition grid files that want to be dumped out.
int pgridtype = 0;
int maxproc = 4;
int numberOfMultifile = 1;
// traceMark: Trace mark or not, only for structured grid partition.
// 0 -- Not.
@ -291,6 +304,7 @@ int compressible = 1;
// refMolecularWeight : the reference molecular weight of gas used for perfect gas. The unit is g/mol.
// Generally, the gas is air. Sometimes, it is experiment gas, such as Nitrogen, Argon, and so on.
int directionMethod = 0;
double refMachNumber = 0.73;
double attackd = 2.79;
double angleSlide = 0.00;
@ -334,6 +348,7 @@ double wallTemperature = -1.0;
double radiationCoef = 0.8;
double gridScaleFactor = 1.0;
double gridTranslationVector[] = [0.0, 0.0, 0.0];
int numberOfAerodynamicForceComponents = 1;
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
@ -355,11 +370,17 @@ double refMolecularWeight = 28.9644; // unit of g/mol.
// -- "vanleer", "steger", "hlle", "lax_f".
// -- "roe", "modified_roe".
// -- "ausm+", "ausm+w", "ausm+up", "ausmdv", "ausmpw", "ausmpw+".
// isWennScheme: If using WENN Scheme of struct grid.
// 0 -- NO. (default)
// 1 -- Yes.
// str_limiter_name: Limiter of struct grid.
// -- "vanalbada", "vanleer", "minmod", "smooth", "minvan", "3rdsmooth", "3rd_minmod_smooth".
// -- "nolim", no limiter.
// -- "vanalbada_clz", clz supersonic version.
// -- "weno3_js", "wenn3_prm211", "wenn3_zm", "wenn3_zes2", "wenn3_zes3"
string inviscidSchemeName = "roe";
int isWennScheme = 0;
string str_limiter_name = "vanalbada";
#*******************************************************************
@ -421,6 +442,7 @@ string str_limiter_name = "vanalbada";
// 3 -- Harten type, which is default used.
// roeEntropyScale: Entropy fix (correction) coefficient scale, default is 1.0.
// It is used to scale the default Roe entropy fix coefficients.
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0
//int viscousType = 0;
//string viscousName = "Euler";
@ -451,6 +473,8 @@ double skewnessAngle = 60.0;
int roeEntropyFixMethod = 3;
double roeEntropyScale = 1.0;
double AusmpwPlusLimiter = 1.0;
//-----------------------------------------------------------------------
# Temporal Discretisation #
//-----------------------------------------------------------------------
@ -466,8 +490,8 @@ double roeEntropyScale = 1.0;
// statisticalTimePeriod: Used as time period of statistic analysis.
// when the value is negative, time period is treated as infinite.
// statisticMethod: Statistic reynolds stress method.
0 --tau = <q^2> - <q>^2
1 --tau = <u'u'>
// 0 -- tau = <q^2> - <q>^2
// 1 -- tau = <u'u'>
// min_sub_iter: The min sub iteration of unsteady simulation.
// max_sub_iter: The max sub iteration of unsteady simulation.
// tol_sub_iter: The tolerance of sub iteration of unsteady simulation.
@ -478,9 +502,8 @@ double roeEntropyScale = 1.0;
// 4 -- LU-SGS.
// 5 -- Block LU-SGS.
// 6 -- Jacobian iteration.
// 7 -- Lower G-S iteration.
// 8 -- Upper G-S iteration.
// 9 -- Lower/Upper G-S iteration.
// 7 -- Line LU-SGS.
// 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.
// CFLStart: Started cfl number.
@ -493,6 +516,10 @@ double roeEntropyScale = 1.0;
// ifLocalTimeStep: Time step method.
// 0 --Local.
// 1 --Global.
// isUseLocalCFL: use variable number of CFL or not.
// 0 -- global unified CFL number.
// 1 -- local CFL number.
// isUsePreTwall: use the previous temperatures on wall. 1 indicates yes, and 0 indicates no.
// visl_min: Minimum value of laminar viscosity coefficient.
// turbCFLScale: Turbulence model cfl number factor.
// codeOfAleModel: Arbitrary Lagrangian-Eulerian method.
@ -509,6 +536,7 @@ double roeEntropyScale = 1.0;
int iunsteady = 0;
double physicalTimeStep = 0.01;
double physicalTimeStepDimensional = -0.001;
int ifStartFromSteadyResults = 0;
int ifStaticsFlowField = 0;
int ifStaticsReynoldsStress = 0;
@ -525,10 +553,18 @@ double tol_sub_iter = 0.01;
int tscheme = 4;
int iSimplifyViscousTerm = 1;
int ifLocalTimeStep = 0;
int isUseLocalCFL = 0;
int isUsePreTwall = 0;
double CFLStart = 0.01;
double CFLEnd = 10.0;
int CFLVaryStep = 500;
double pMaxForCFL = 0.2;
double pMinForCFL = 0.1;
double deltaMaxForCFL = 0.2;
double magnifyFactorForCFL = 1.1;
double reduceFactorForCFL = 0.5;
double ktmax = 1.0e10;
int swapDq = 1;
@ -548,7 +584,7 @@ double dtau = 0.001;
int wallFunctionType = 0;
int RKStage = 2;
double lamda[] = 0.5, 1.0;
double lamda[] = [0.5, 1.0];
//int RKStage = 1;
//double lamda[] = 1.0;
@ -579,12 +615,20 @@ double lamda[] = 0.5, 1.0;
// wall_aircoefile: The file path to save flowfield variables of wall, write data for every default steps.
// nDumpSurfaceInfo = 0 the "wall_varfile" write the informations including heat flux.
// nDumpSurfaceInfo = 1 the "wall_varfile" write the informations without heat flux.
// nIsComputeWallDist: Whether to compute the wall distance.
// 0 -- Compute wall distance.
// 1 -- Not compute.
//
// protectionFile0 and protectionFile1 : Two continuation file of the data protection mechanism.
// wall_heatfluxfile : The file to output the MaxHeatFlux of wall.
int numberOfGridGroups = 1;
string gridfile = "./grid/rae2822_hybrid2d__4.fts";
string wallTemperaturefile= "";
int nIsComputeWallDist = 0;
int walldistMethod = 1;
int cellMethodOrNodeMethod = 0;
string resSaveFile = "results/res.dat";
string turbresfile = "results/turbres.dat";
@ -597,6 +641,10 @@ string visualfile = "results/tecflow.plt";
string wall_aircoefile = "results/wall_aircoef.dat";
string samplefile = "results/sample.dat";
string protectionFile0 = "results/flow0.dat";
string protectionFile1 = "results/flow1.dat";
string wall_heatfluxfile = "results/wall_heatflux.dat";
int nDumpSurfaceInfo = 0;
string wall_varfile = "";
@ -648,7 +696,10 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21),
// -- vibration temperature(Tv, 33), electron temperature(Te, 34), vibrational energy(Ev, 35), electric energy(Ee, 36),
// -- 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), iblank(81).
// -- 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),
// -- overlap iblank(iblank, 81)
// -- specific heat ratio(gama, 56)
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
@ -660,10 +711,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
// -heat flux of species diffusion term(Qs, 9), -heat flux of vibrational temperature term(Qv, 10), -heat flux of electron temperature term(Qe, 11),
// -species mass fractions(Ns, 12), -x component of wall velocity(Vx, 13), -y component of wall velocity(Vy, 14), -z component of wall velocity(Vz, 15)
// -slip translational-rotational temperature(Tts, 16), -slip vibrational temperature(Tvs, 17), -slip electron temperature(Tes, 18), -absolute wall velocity(Vs, 19)
// -Stanton number(St, 20), -coefficient of heat rate(Ch, 21), -temperature jump(deltaT, 22), -transition gamaeff(gamaeff, 48),
// -transition intermittency(intermittency, 51), -transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
// -overlap iblank(iblank, 81)
// -Stanton number(St, 20), -coefficient of heat rate(Ch, 21), -temperature jump(deltaT, 22), -Grid Reynolds number on wall(Re_w, 23)
int nVisualVariables = 8;
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
@ -691,7 +739,7 @@ int dumpStandardModel = 0;
// 1 -- Real cell where the probe is located.
// nProbeVariables: Number of variables want to be dumped for probes monitered.
// probeVariables : Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5).
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6).
// Important Warning: Array size of probeVariables MUST be equal to nProbeVariables!!!
// probeVariables order must from small to big.
// probeVariablesInterpolationMethod: Interpolation method used to compute the probe variables.
@ -713,8 +761,8 @@ string probesDefineFile = "bin/probes_XYZ.dat";
int searchCellsMethod = 0;
int nProbeVariables = 6;
int probeVariables[] = [0, 1, 2, 3, 4, 5];
int nProbeVariables = 7;
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
int probeVariablesInterpolationMethod = 0;
//-----------------------------------------------------------------------
# Turbulence Parameter #
@ -722,9 +770,13 @@ int probeVariablesInterpolationMethod = 0;
// turbInterval: Iteration number of turbulence.
// kindOfTurbSource: Kinds of turbulent source.
// 0 -- Original.
// 1 -- Edwards.
// 2 -- new.
// mod_turb_res: If modify the residuals for the cells next to the wall or not, default is 0.
// transitionType: transition model type
// 0 -- none.
// 2 -- gama-re-theta.
// turbIntensity: (valid while greater than 0.0 ) turbulent intensity of free stream(*100) in transition
// freeturbIntensitySRModify: to use SR modify in free stream turbulent intensity decay or not
int turbInterval = 1;
int turbOrderStruct = 2;
@ -739,6 +791,7 @@ double turbIntensity = -1.0;
int freeturbIntensitySRModify = 0;
double freeDecayXLocation = 0.0;
int compressibleCorrection = 0;
int prandtlNumberCorrection = 0;
int transitionMaFix = 1;
# maximum eddy viscosity (myt/my) max.
@ -749,7 +802,7 @@ int monitor_vistmax = 0;
# LES Parameter #
//-----------------------------------------------------------------------
// iLES: Create LESSolver or not.
// == 1 - Create LESSolver;
// = 1 - Create LESSolver;
// != 1 - not.
// amplitudeofDisturb: Amplitude of adding disturb.
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
@ -808,9 +861,10 @@ int monitorNegativeConstant = 0;
// iapplication:
// 0 -- gas model is fixed in the codes.
// 1 -- gas model is imported from library files.
// iCodeBranch:
// 0 -- The old code version is used for Navier-Stokes.
// 1 -- A new code version is active for 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.
@ -824,7 +878,6 @@ int monitorNegativeConstant = 0;
// 0 -- not used .
// 1 -- used.
// nDensityModify: The type of densitymodify.
// 0 -- not used.
// 1 -- used.
// nchem:
@ -860,9 +913,13 @@ int monitorNegativeConstant = 0;
// 1 -- One-temperature model.
// 2 -- Two-temperature model.
// 3 -- Three-temperature model.
// nIdealState: whether take all gas species as ideal gas for gas-mixture process.
// 0 -- No.
// 1 -- Yes.
// nTEnergyModel: the method to computing temperature energy model.
// 0 -- the energy term is computed using the conventional method.
// 1 -- the energy term is computed using the curve fitting method.
// 1 -- the energy term is computed using the polynomial fitting method.
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
// parkVDPower: the power of translational-rotational temperature in the Park V-D(vibration-dissociation) coupling model.
// The value is in range of [0.0, 1.0], DPLR suggests 0.5, LAURA suggests 0.7, while 0.6 is given as default value.
// catalyticCoef:
@ -875,6 +932,13 @@ int monitorNegativeConstant = 0;
// nTemperatureJump : the method to calculate the temperature jump.
// 0 -- calculated by the variables of heat conductivity and constant volume specific heat for each energy mode.
// 1 -- the general method where the iteration is calculated with the translation-rotation temperature.
// nSurfGradMethod : the method to compute the surface heating ratio.
// 0 -- the gradient of variable is computed with the first-order difference method.
// 1 -- the gradient of variable is computed with the Green-Guass integral method.
// nRapidFlowfield : initialize the flowfield using the rapid engineering method when it is greater than zero.
// nSurfHeatMonitor : To exam the surface heating change or not. 0 is no, 1 is yes.
// nInitPressureStep : the steps to initialize the boundary variables when the rapid method is used. 100 is the default value.
// nDumpCFLNumber : 1 indicates dumping the CFL number to file, 0 denotes no dumping.
// sigmaVelocity: the coordination coefficient of tangential momentum for computation of slip velocity. The value is in range of (0.0, 2.0].
// sigmaTemperature: the heat coordination coefficient for computation of slip temperature. The value is in range of (0.0, 2.0].
// sigmaMassFraction: the species coordination coefficient for computation of slip mass fractions. The value is in range of (0.0, 2.0].
@ -884,13 +948,17 @@ int monitorNegativeConstant = 0;
// 1.146 -- proposed for an additional "fictitious" velocity slip.
// chemicalRelaxCorf: The value is in range of [0.001, 1.0].
// chemicalSpectrumRadiusCoef: The value is in range of [1.0, 3.0].
// viscousSpectrumRadiusCoef : The value is in range of [1.0, 3.0].
// inviscidSpectrumRadiusCoef: The value is in range of [1.0, 3.0].
// spectrumRadiusCoef: The value is in range of [0.0, 2.0].
// staticPressureRelaxCorf: The value is in range of [0.1, 1.0].
// nIsChemicalFreeze : the flag to freeze the chemical reactions.
// 0 -- not freeze, the chemical reaction sources will be calculated.
// 1 -- freezes the chemical reactions, the chemical reaction sources will not be calculated.// veTemperatureMin: The minimum of Tv and Te
//maxViscous: the maximum of Viscous.
//trTemperatureMin: the minimum value of trTemperature.
//veTemperatureMin: the minimum value of veTemperature.
//densityMin: the minimum value of density.
//tAdjustmentFactor: magnification of temperature, this value is in range of (1.0, 10.0].
// nDebug: cout the Wrong place and abort
// 0 -- not used.
// 1 -- used.
@ -903,9 +971,30 @@ int monitorNegativeConstant = 0;
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
// 0 -- not used.
// 1 -- used.
// nViscosityPeModified: Pe Modified for ViscosityCoef
// 0 -- not used.
// 1 -- used.
// nChemcalSourceModified: Modified on ChemcalSource
// 0 -- not used.
// 1 -- used.
// nChemcalSourceEsMethod: Modified on ChemcalSource
// 0 -- approximation algorithm 1 (Ori.)
// 1 -- approximation algorithm 2 (New)
// nMaxStepTemperature: the iterative steps of temperature.
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs
// 0 -- not used
// 1 -- used
// nDiagonalModified: Modified on Diagonal
// 0 -- not used
// 1 -- Ori.
// 2 -- new
//nGradPrimtiveMethod:
// 0 -- Ori.
// 1 -- new
// nAblation:
// 0 -- The wall ablation is not computed.
// 1 -- The wall ablation is computed.
@ -913,9 +1002,11 @@ int monitorNegativeConstant = 0;
// 0 -- The injection velocity of ablation wall is not computed.
// 1 -- The injection velocity of ablation wall is computed.
// nViscosityModel:
// 0 -- Blottner fitting method.
// 1 -- Gupta fitting method.
// 0 -- Blottner fitting method(N89).
// 1 -- Gupta fitting method(N90).
// nContinueModel: The new continue model can switch different computation model.
// 0 -- Not use the new continue model.
// 1 -- use the new continue model.
// nSutherland:
// 0 -- stands for selecting the Blotter curve fits mode.
// 1 -- stands for Sutherland relation.
@ -925,20 +1016,54 @@ int monitorNegativeConstant = 0;
// "DK" -- indicates the Dunn-Kang Model, three-Type Models are embeded in the library, namely, the 5-species-11-reactions, the 7-species-15-reactions, the 11-species-26-reactions.
// "Mars-Pa8" is for Park model of Mars gas, "Mars-Mc8" for McKenzie model of Mars gas.
// "Combustion-12" -- indicates the Combustion Chamber Gas Model which includes 12-species-20-reactions.
// "Gas-Mixture" -- indicates the process of mixing two species without reacting.
// "Gas-Mixture" -- indicates the process of mixing gas without reacting.
// for struct solver mixing two species£¨SpeciesA, SpeciesB£©.
// for unstruct solver mixing multi-species£¨O2 NO CO CO2 H2 N2 Air CH4£©.
// For self-definition model, the gasfile is used to indicate the file path of the new gas model.
// speciesName: Used to list the names of each species, while each species name is separated by the symbol of comma.
// initMassFraction: Used to list the initial mass fractions of species in accordance with the sequence of names in the parameter speciesName.
// ifStartFromPerfectGasResults: The chemical reaction simulation is start from perfect gas flowfield or not, 0 is for no and else is for yes.
// nIterFirstStep : the maximum number of iteration in the first step for the self-adaptive calculation.
// nIterSecondStep : the maximum number of iteration in the second step for the self-adaptive calculation.
// nIterThirdStep : the maximum number of iteration in the third step for the self-adaptive calculation.
// nEnergyAssembly : the vibration energy is computed with combined method which includes the fitting method and the molecular kinetic theory.
// 0 -- no,
// 1 -- yes.
// nControlVariable: the variable to computing the residual error that determines the convergence is meet or not in the one-temperature model.
// 0 -- the density.
// 1 -- the translation temperature.
// 2 -- the vibration temperature.
// 3 -- the electron temperature.
// 4 -- the pressure.
// 5 -- the mass fraction of oxygen.
// 6 -- the mass fraction of nitrogen.
// 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
int dg_high_order = 0;
int iapplication = 0;
int iCodeBranch = 0;
int isAdaptiveSolver = 0;
int nm = 5;
int nEquilibriumGas = 0;
int nPCWCycleStep = 3;
int nRETCycleStep = 3;
int nSLIPCycleStep= 3;
int nIterFirstStep = 1000;
int nIterSecondStep= 2000;
int nIterThirdStep = 2000;
int nEnergyAssembly = 0;
int nControlVariable = 1;
double firstStepError = 0.01;
double secondStepError = 0.001;
double thirdStepError = 0.001;
double predictCFLError = 0.1;
double refGama = 1.4;
double prl = 0.72;
@ -952,7 +1077,8 @@ int nchemsrc = 1;
int nchemrad = 1;
int ntmodel = 1;
int nEnergyRecycle = 0;
int nIdealState = 0;
int nEnergyRecycle = 1;
int nSlipBCModel = 0;
int nDensityModify = 1;
int nTEnergyModel = 0;
@ -960,6 +1086,11 @@ int nMeanFreePathType = 0;
int nIsChemicalFreeze = 0;
int nIsSuperCatalytic = 1;
int nTemperatureJump = 0;
int nSurfGradMethod = 0;
int nRapidFlowfield = 0;
int nSurfHeatMonitor = 0;
int nInitPressureStep = 100;
int nDumpCFLNumber = 0;
double parkVDPower = 0.6;
double catalyticCoef = 0.0;
@ -970,17 +1101,38 @@ double velocitySlipCorrectConstant = 1.0;
double chemicalRelaxCorf = 1.0;
double chemicalSpectrumRadiusCoef = 1.0;
double viscousSpectrumRadiusCoef = 1.0;
double inviscidSpectrumRadiusCoef = 1.0;
double staticPressureRelaxCorf = 1.0;
double viscousSpectrumRadiusCoef = 1.5;
double inviscidSpectrumRadiusCoef = 1.5;
double spectrumRadiusCoef = 0.5;
double staticPressureRelaxCorf = 0.2;
double maxViscous = 10000.0;
double trTemperatureMin = 10.0;
double veTemperatureMin = 30.0;
int nDebug = 0;
int nSpeciesLimit = 0;
int nTurblenceForChemical = 0;
int nViscosityFluxSublevelModified = 0 ;
int nChemcalSourceModified = 0;
double maxTemperature = 50000.0;
double densityMin = 1.0e-8;
double densityMinFactor = 0.1;
double tAdjustmentFactor = 10.0;
double iniSpeedCoef = 1.0;
int nDebug = 0;
int nSpeciesLimit = 1;
int nTurblenceForChemical = 0;
int nViscosityFluxSublevelModified = 1;
int nViscosityPeModified = 0;
int nChemcalSourceModified = 2;
int nChemcalSourceEsMethod = 1;
int nMaxStepTemperature = 5;
int veTemperatureMinModified = 1;
int nDiagonalModified = 0;
int nGradPrimtiveMethod = 1;
int nInviscidFluxModify = 1;
int nQlLimitMethod = 2;
int nSpeciesForWallMethod = 1;
int nDensityForWallMethod = 0;
int nProtectData = 0;
int useHyflowSetting = 0;
int nAblation = 0;
int isInjection = 0;
int nViscosityModel = 0;
@ -1000,7 +1152,7 @@ string initMassFraction = "0.0, 0.233, 0.0, 0.0, 0.767";
//string speciesName = "O, O2, NO, N, N2, C, CO, CO2";
//string initMassFraction = "0.0015, 0.0429, 0.0, 0.0, 0.0, 0.0, 0.0777, 0.8779";
//string gasfile = "DK7";
//string gasfile = "Pa";
//string speciesName = "O, O2, NO, N, NO+, C, C2, CO, CO2, CN, N2, e-";
//string initMassFraction = "0.0, 0.233, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.767, 0.0";
@ -1017,6 +1169,11 @@ double gamaSpeciesB = 1.3;
double molecularWeightSpeciesA = 29.0;
double molecularWeightSpeciesB = 30.0;
//string gasfile = "Gas-Mixture";
//string speciesName = "O2, N2";
//string initMassFraction = "1.0, 0.0";
int nContinueModel = 0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
@ -1124,7 +1281,7 @@ int codeOfOversetGrid = 0;
int oversetInterpolationMethod = 0;
int readOversetFileOrNot = 0;
int symetryOrNot = 0;
int readInAuxiliaryInnerGrid = 1;
int readInAuxiliaryInnerGrid = 0;
int readInAuxiliaryOuterGrid = 0;
int readInSklFileOrNot = 0;
string auxiliaryInnerGrid0 = "./grid/aux-upper.fts";
@ -1137,13 +1294,18 @@ double toleranceForOversetBox = 1.0e-3;
int twoOrderInterpolationOrNot = 0;
int keyEnlargeOfActiveNodes = 0;
int outTecplotOverset = 0;
int outPutOversetVisualization = 0;
int numberOfMovingBodies = 2;
// ----------------- ALE configuration ------------------------------
int codeOfAleModel = 1;
int codeOfAleModel = 0;
int aleStartStrategy = -1;
double referenceLength = 1.0;
double referenceVelocity = 1.0;
double referenceDensity = 1.0;
int strategyForFaceNormalVelocity = 0; //0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd;
int strategyForGCLSource = 0; //0-present; 1-Ahn;
@ -1187,6 +1349,11 @@ double configPamameter_0[] = 0.0 ,0.0 ,0.0 ,0.0 ,0.0
int RBDMethod_0 = 0;
double amplitude_0 = 0.0;
double reduceFrequency_0 = 0.0;
//direction of rotation
// 1 -- clockwise from the point of view along the positive x axis.
// -1 -- anticlockwise from the point of view along the positive x axis.
int direction_0 = -1;
double rotateFrequency_0 = 0.0;
//string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter";
//additional force (system axis) fX fY fZ
double addedForce_0[] = 0.0 ,0.0 ,0.0 ;
@ -1218,3 +1385,12 @@ int integralOrder = 4;
#########################################################################
int isPlotVolumeField = 0;
#########################################################################
# Incompressible Parameter #
#########################################################################
int isSolveEnergyEquation = 0;
int isSolveTurbEquation = 0;
int isSolveSpeciesEquation = 0;

View File

@ -14,7 +14,6 @@ string defaultParaFile = "./bin/cfd_para.hypara";
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
// 4 -- Knowledge repository / examples of PHengLEI-API.
int ndim = 2;
int nparafile = 1;
@ -23,7 +22,7 @@ string parafilename = "./bin/cfd_para_subsonic.hypara";
//string parafilename = "./bin/cfd_para_transonic.hypara";
//string parafilename = "./bin/cfd_para_supersonic.hypara";
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/incompressible.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
@ -34,11 +33,11 @@ string parafilename = "./bin/cfd_para_subsonic.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 4;
//string parafilename = "./bin/repository.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 5;
//string parafilename = "./bin/overset_grid_view.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";

View File

@ -1,8 +1,8 @@
# nBoundaryConditons : number of global boundary conditions.
# nBoundaryConditions : number of global boundary conditions.
# bcName : Boundary Condition Name.
# bcType(in PHengLEI): Boundary Condition Type.
# Account of how to set boundaryconditon.
# Account of how to set boundarycondition.
# string bcName = "Farfield";
# {
# int bcType = 4;
@ -13,7 +13,7 @@
# double angleSlide = 0;
# }
int nBoundaryConditons = 5;
int nBoundaryConditions = 5;
string bcName = "SOLID_SURFACE";
{
int bcType = 2;

View File

@ -24,6 +24,7 @@
// 4 -- Grid deformation, achieve unstructured grid deformation.
// 5 -- Grid repairing, repair the original grid in order to remove the negative volume cells.
// 6 -- Grid mirroring, mirror a symmetry grid to whole grid.
// 7 -- Grid type change, convert structured grid to unstructured grid.
// multiblock: Multi-block grid or not, only for structured grid conversion.
// 0 -- Not.
// 1 -- Yes.
@ -32,12 +33,23 @@
// 0 -- X axis.
// 1 -- Y axis.
// 2 -- Z axis.
// gridReorder: Reorder cell and face of grid or not, only for 3D unstructured grid conversion,
// which is CGNS type.
// 0 -- Not.
// 1 -- Yes.
// faceReorderMethod: the reorder method face of unstructured grid.
// 0 -- BSFCELLFACEORG.
// 1 -- BSFCELLFACELEFT.
// 2 -- BSFCELLFACERIGHT.
int gridtype = 0;
int gridobj = 1;
int multiblock = 0;
int iadapt = 0;
int SymmetryFaceVector = 1;
int gridReorder = 0;
int faceReorderMethod = 0;
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
@ -61,6 +73,7 @@ int omit_no_bound_bc = 0;
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
// dumpOldGrid: If dump out the old grid file.
// 0 -- Not. (default)
// 1 -- Yes.
@ -82,7 +95,6 @@ string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
// ----------------- some advanced choices ------------------------------
// iunsteady: The Grid is for unsteady simulation or not.
int iunsteady = 0;
int codeOfAleModel = 0;
// fileformat: Ustar Grid file format.
// 0 -- BINARY.
@ -102,12 +114,10 @@ string holeFullFileName = "./oversetGridView/holeFullFile.dat";
string linkFileName = "./oversetGridView/topology.dat";
string zoneInverseFileName = "./oversetGridView/zoneInverseMapping.inp";
// ----------------- Adaptive Mesh Refine -------------------------------
// In this file, the original_grid_file is used of the partition part.
// If use it dependently, abstract it here.
string adapt_grid_file = "./grid/sphere_mixed_adapt1.fts";
string geometryFileName = "./grid/jsm.igs";
// ----------------- Grid Refine Parameters -----------------------------
// anisoRefine: If refine grid by anisoRefine type.
// 0 -- Not. (default)
// 1 -- Yes.
// geometryUnit: Geometry unit.
// 1 -- meter.
// 2 -- millimeter.
@ -117,14 +127,14 @@ string geometryFileName = "./grid/jsm.igs";
// 1 -- JSM-C2-NPOFF case.
// 2 -- CHNT.
// projectOrgPoint: If the original wall points need to be projected or not.
int geometryUnit = 1;
int anisoRefine = 0;
int geometryUnit = 1;
int isProject = 0;
int readDist = 0;
int isDeform = 0;
int exclusiveCase = 0; // 0: NON case; 1: JSM-C2-NPOFF case; 2: CHNT.
int projectOrgPoint = 0; // if project original wall points.
int exclusiveCase = 0;
int projectOrgPoint = 0;
string geometryFileName = "./grid/jsm.igs";
// ----------------- Grid Deform Parameters -----------------------------
// deformationMethod: Grid Deform.
@ -181,8 +191,11 @@ double rotationAngle = 0.0;
// 1 -- struct grid.
// 2 -- refine structured grid.
// maxproc: The number of partition zones that want to be divided into.
// numberOfMultifile: The number of partition grid files that want to be dumped out.
int pgridtype = 0;
int maxproc = 4;
int numberOfMultifile = 1;
// traceMark: Trace mark or not, only for structured grid partition.
// 0 -- Not.
@ -291,6 +304,7 @@ int compressible = 1;
// refMolecularWeight : the reference molecular weight of gas used for perfect gas. The unit is g/mol.
// Generally, the gas is air. Sometimes, it is experiment gas, such as Nitrogen, Argon, and so on.
int directionMethod = 0;
double refMachNumber = 0.73;
double attackd = 2.79;
double angleSlide = 0.00;
@ -334,6 +348,7 @@ double wallTemperature = -1.0;
double radiationCoef = 0.8;
double gridScaleFactor = 1.0;
double gridTranslationVector[] = [0.0, 0.0, 0.0];
int numberOfAerodynamicForceComponents = 1;
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
@ -355,11 +370,17 @@ double refMolecularWeight = 28.9644; // unit of g/mol.
// -- "vanleer", "steger", "hlle", "lax_f".
// -- "roe", "modified_roe".
// -- "ausm+", "ausm+w", "ausm+up", "ausmdv", "ausmpw", "ausmpw+".
// isWennScheme: If using WENN Scheme of struct grid.
// 0 -- NO. (default)
// 1 -- Yes.
// str_limiter_name: Limiter of struct grid.
// -- "vanalbada", "vanleer", "minmod", "smooth", "minvan", "3rdsmooth", "3rd_minmod_smooth".
// -- "nolim", no limiter.
// -- "vanalbada_clz", clz supersonic version.
// -- "weno3_js", "wenn3_prm211", "wenn3_zm", "wenn3_zes2", "wenn3_zes3"
string inviscidSchemeName = "roe";
int isWennScheme = 0;
string str_limiter_name = "vanalbada";
#*******************************************************************
@ -421,6 +442,7 @@ string str_limiter_name = "vanalbada";
// 3 -- Harten type, which is default used.
// roeEntropyScale: Entropy fix (correction) coefficient scale, default is 1.0.
// It is used to scale the default Roe entropy fix coefficients.
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0
//int viscousType = 0;
//string viscousName = "Euler";
@ -451,6 +473,8 @@ double skewnessAngle = 60.0;
int roeEntropyFixMethod = 3;
double roeEntropyScale = 1.0;
double AusmpwPlusLimiter = 1.0;
//-----------------------------------------------------------------------
# Temporal Discretisation #
//-----------------------------------------------------------------------
@ -466,8 +490,8 @@ double roeEntropyScale = 1.0;
// statisticalTimePeriod: Used as time period of statistic analysis.
// when the value is negative, time period is treated as infinite.
// statisticMethod: Statistic reynolds stress method.
0 --tau = <q^2> - <q>^2
1 --tau = <u'u'>
// 0 -- tau = <q^2> - <q>^2
// 1 -- tau = <u'u'>
// min_sub_iter: The min sub iteration of unsteady simulation.
// max_sub_iter: The max sub iteration of unsteady simulation.
// tol_sub_iter: The tolerance of sub iteration of unsteady simulation.
@ -478,9 +502,8 @@ double roeEntropyScale = 1.0;
// 4 -- LU-SGS.
// 5 -- Block LU-SGS.
// 6 -- Jacobian iteration.
// 7 -- Lower G-S iteration.
// 8 -- Upper G-S iteration.
// 9 -- Lower/Upper G-S iteration.
// 7 -- Line LU-SGS.
// 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.
// CFLStart: Started cfl number.
@ -493,6 +516,10 @@ double roeEntropyScale = 1.0;
// ifLocalTimeStep: Time step method.
// 0 --Local.
// 1 --Global.
// isUseLocalCFL: use variable number of CFL or not.
// 0 -- global unified CFL number.
// 1 -- local CFL number.
// isUsePreTwall: use the previous temperatures on wall. 1 indicates yes, and 0 indicates no.
// visl_min: Minimum value of laminar viscosity coefficient.
// turbCFLScale: Turbulence model cfl number factor.
// codeOfAleModel: Arbitrary Lagrangian-Eulerian method.
@ -509,6 +536,7 @@ double roeEntropyScale = 1.0;
int iunsteady = 0;
double physicalTimeStep = 0.01;
double physicalTimeStepDimensional = -0.001;
int ifStartFromSteadyResults = 0;
int ifStaticsFlowField = 0;
int ifStaticsReynoldsStress = 0;
@ -525,10 +553,18 @@ double tol_sub_iter = 0.01;
int tscheme = 4;
int iSimplifyViscousTerm = 1;
int ifLocalTimeStep = 0;
int isUseLocalCFL = 0;
int isUsePreTwall = 0;
double CFLStart = 0.01;
double CFLEnd = 10.0;
int CFLVaryStep = 500;
double pMaxForCFL = 0.2;
double pMinForCFL = 0.1;
double deltaMaxForCFL = 0.2;
double magnifyFactorForCFL = 1.1;
double reduceFactorForCFL = 0.5;
double ktmax = 1.0e10;
int swapDq = 1;
@ -548,7 +584,7 @@ double dtau = 0.001;
int wallFunctionType = 0;
int RKStage = 2;
double lamda[] = 0.5, 1.0;
double lamda[] = [0.5, 1.0];
//int RKStage = 1;
//double lamda[] = 1.0;
@ -579,12 +615,20 @@ double lamda[] = 0.5, 1.0;
// wall_aircoefile: The file path to save flowfield variables of wall, write data for every default steps.
// nDumpSurfaceInfo = 0 the "wall_varfile" write the informations including heat flux.
// nDumpSurfaceInfo = 1 the "wall_varfile" write the informations without heat flux.
// nIsComputeWallDist: Whether to compute the wall distance.
// 0 -- Compute wall distance.
// 1 -- Not compute.
//
// protectionFile0 and protectionFile1 : Two continuation file of the data protection mechanism.
// wall_heatfluxfile : The file to output the MaxHeatFlux of wall.
int numberOfGridGroups = 1;
string gridfile = "./grid/rae2822_hybrid2d__4.fts";
string wallTemperaturefile= "";
int nIsComputeWallDist = 0;
int walldistMethod = 1;
int cellMethodOrNodeMethod = 0;
string resSaveFile = "results/res.dat";
string turbresfile = "results/turbres.dat";
@ -597,6 +641,10 @@ string visualfile = "results/tecflow.plt";
string wall_aircoefile = "results/wall_aircoef.dat";
string samplefile = "results/sample.dat";
string protectionFile0 = "results/flow0.dat";
string protectionFile1 = "results/flow1.dat";
string wall_heatfluxfile = "results/wall_heatflux.dat";
int nDumpSurfaceInfo = 0;
string wall_varfile = "";
@ -648,7 +696,10 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21),
// -- vibration temperature(Tv, 33), electron temperature(Te, 34), vibrational energy(Ev, 35), electric energy(Ee, 36),
// -- 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), iblank(81).
// -- 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),
// -- overlap iblank(iblank, 81)
// -- specific heat ratio(gama, 56)
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
@ -660,10 +711,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
// -heat flux of species diffusion term(Qs, 9), -heat flux of vibrational temperature term(Qv, 10), -heat flux of electron temperature term(Qe, 11),
// -species mass fractions(Ns, 12), -x component of wall velocity(Vx, 13), -y component of wall velocity(Vy, 14), -z component of wall velocity(Vz, 15)
// -slip translational-rotational temperature(Tts, 16), -slip vibrational temperature(Tvs, 17), -slip electron temperature(Tes, 18), -absolute wall velocity(Vs, 19)
// -Stanton number(St, 20), -coefficient of heat rate(Ch, 21), -temperature jump(deltaT, 22), -transition gamaeff(gamaeff, 48),
// -transition intermittency(intermittency, 51), -transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
// -overlap iblank(iblank, 81)
// -Stanton number(St, 20), -coefficient of heat rate(Ch, 21), -temperature jump(deltaT, 22), -Grid Reynolds number on wall(Re_w, 23)
int nVisualVariables = 8;
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
@ -691,7 +739,7 @@ int dumpStandardModel = 0;
// 1 -- Real cell where the probe is located.
// nProbeVariables: Number of variables want to be dumped for probes monitered.
// probeVariables : Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5).
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6).
// Important Warning: Array size of probeVariables MUST be equal to nProbeVariables!!!
// probeVariables order must from small to big.
// probeVariablesInterpolationMethod: Interpolation method used to compute the probe variables.
@ -713,8 +761,8 @@ string probesDefineFile = "bin/probes_XYZ.dat";
int searchCellsMethod = 0;
int nProbeVariables = 6;
int probeVariables[] = [0, 1, 2, 3, 4, 5];
int nProbeVariables = 7;
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
int probeVariablesInterpolationMethod = 0;
//-----------------------------------------------------------------------
# Turbulence Parameter #
@ -722,9 +770,13 @@ int probeVariablesInterpolationMethod = 0;
// turbInterval: Iteration number of turbulence.
// kindOfTurbSource: Kinds of turbulent source.
// 0 -- Original.
// 1 -- Edwards.
// 2 -- new.
// mod_turb_res: If modify the residuals for the cells next to the wall or not, default is 0.
// transitionType: transition model type
// 0 -- none.
// 2 -- gama-re-theta.
// turbIntensity: (valid while greater than 0.0 ) turbulent intensity of free stream(*100) in transition
// freeturbIntensitySRModify: to use SR modify in free stream turbulent intensity decay or not
int turbInterval = 1;
int turbOrderStruct = 2;
@ -739,6 +791,7 @@ double turbIntensity = -1.0;
int freeturbIntensitySRModify = 0;
double freeDecayXLocation = 0.0;
int compressibleCorrection = 0;
int prandtlNumberCorrection = 0;
int transitionMaFix = 1;
# maximum eddy viscosity (myt/my) max.
@ -749,7 +802,7 @@ int monitor_vistmax = 0;
# LES Parameter #
//-----------------------------------------------------------------------
// iLES: Create LESSolver or not.
// == 1 - Create LESSolver;
// = 1 - Create LESSolver;
// != 1 - not.
// amplitudeofDisturb: Amplitude of adding disturb.
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
@ -808,9 +861,10 @@ int monitorNegativeConstant = 0;
// iapplication:
// 0 -- gas model is fixed in the codes.
// 1 -- gas model is imported from library files.
// iCodeBranch:
// 0 -- The old code version is used for Navier-Stokes.
// 1 -- A new code version is active for 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.
@ -824,7 +878,6 @@ int monitorNegativeConstant = 0;
// 0 -- not used .
// 1 -- used.
// nDensityModify: The type of densitymodify.
// 0 -- not used.
// 1 -- used.
// nchem:
@ -860,9 +913,13 @@ int monitorNegativeConstant = 0;
// 1 -- One-temperature model.
// 2 -- Two-temperature model.
// 3 -- Three-temperature model.
// nIdealState: whether take all gas species as ideal gas for gas-mixture process.
// 0 -- No.
// 1 -- Yes.
// nTEnergyModel: the method to computing temperature energy model.
// 0 -- the energy term is computed using the conventional method.
// 1 -- the energy term is computed using the curve fitting method.
// 1 -- the energy term is computed using the polynomial fitting method.
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
// parkVDPower: the power of translational-rotational temperature in the Park V-D(vibration-dissociation) coupling model.
// The value is in range of [0.0, 1.0], DPLR suggests 0.5, LAURA suggests 0.7, while 0.6 is given as default value.
// catalyticCoef:
@ -875,6 +932,13 @@ int monitorNegativeConstant = 0;
// nTemperatureJump : the method to calculate the temperature jump.
// 0 -- calculated by the variables of heat conductivity and constant volume specific heat for each energy mode.
// 1 -- the general method where the iteration is calculated with the translation-rotation temperature.
// nSurfGradMethod : the method to compute the surface heating ratio.
// 0 -- the gradient of variable is computed with the first-order difference method.
// 1 -- the gradient of variable is computed with the Green-Guass integral method.
// nRapidFlowfield : initialize the flowfield using the rapid engineering method when it is greater than zero.
// nSurfHeatMonitor : To exam the surface heating change or not. 0 is no, 1 is yes.
// nInitPressureStep : the steps to initialize the boundary variables when the rapid method is used. 100 is the default value.
// nDumpCFLNumber : 1 indicates dumping the CFL number to file, 0 denotes no dumping.
// sigmaVelocity: the coordination coefficient of tangential momentum for computation of slip velocity. The value is in range of (0.0, 2.0].
// sigmaTemperature: the heat coordination coefficient for computation of slip temperature. The value is in range of (0.0, 2.0].
// sigmaMassFraction: the species coordination coefficient for computation of slip mass fractions. The value is in range of (0.0, 2.0].
@ -884,13 +948,17 @@ int monitorNegativeConstant = 0;
// 1.146 -- proposed for an additional "fictitious" velocity slip.
// chemicalRelaxCorf: The value is in range of [0.001, 1.0].
// chemicalSpectrumRadiusCoef: The value is in range of [1.0, 3.0].
// viscousSpectrumRadiusCoef : The value is in range of [1.0, 3.0].
// inviscidSpectrumRadiusCoef: The value is in range of [1.0, 3.0].
// spectrumRadiusCoef: The value is in range of [0.0, 2.0].
// staticPressureRelaxCorf: The value is in range of [0.1, 1.0].
// nIsChemicalFreeze : the flag to freeze the chemical reactions.
// 0 -- not freeze, the chemical reaction sources will be calculated.
// 1 -- freezes the chemical reactions, the chemical reaction sources will not be calculated.// veTemperatureMin: The minimum of Tv and Te
//maxViscous: the maximum of Viscous.
//trTemperatureMin: the minimum value of trTemperature.
//veTemperatureMin: the minimum value of veTemperature.
//densityMin: the minimum value of density.
//tAdjustmentFactor: magnification of temperature, this value is in range of (1.0, 10.0].
// nDebug: cout the Wrong place and abort
// 0 -- not used.
// 1 -- used.
@ -903,9 +971,30 @@ int monitorNegativeConstant = 0;
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
// 0 -- not used.
// 1 -- used.
// nViscosityPeModified: Pe Modified for ViscosityCoef
// 0 -- not used.
// 1 -- used.
// nChemcalSourceModified: Modified on ChemcalSource
// 0 -- not used.
// 1 -- used.
// nChemcalSourceEsMethod: Modified on ChemcalSource
// 0 -- approximation algorithm 1 (Ori.)
// 1 -- approximation algorithm 2 (New)
// nMaxStepTemperature: the iterative steps of temperature.
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs
// 0 -- not used
// 1 -- used
// nDiagonalModified: Modified on Diagonal
// 0 -- not used
// 1 -- Ori.
// 2 -- new
//nGradPrimtiveMethod:
// 0 -- Ori.
// 1 -- new
// nAblation:
// 0 -- The wall ablation is not computed.
// 1 -- The wall ablation is computed.
@ -913,9 +1002,11 @@ int monitorNegativeConstant = 0;
// 0 -- The injection velocity of ablation wall is not computed.
// 1 -- The injection velocity of ablation wall is computed.
// nViscosityModel:
// 0 -- Blottner fitting method.
// 1 -- Gupta fitting method.
// 0 -- Blottner fitting method(N89).
// 1 -- Gupta fitting method(N90).
// nContinueModel: The new continue model can switch different computation model.
// 0 -- Not use the new continue model.
// 1 -- use the new continue model.
// nSutherland:
// 0 -- stands for selecting the Blotter curve fits mode.
// 1 -- stands for Sutherland relation.
@ -925,20 +1016,54 @@ int monitorNegativeConstant = 0;
// "DK" -- indicates the Dunn-Kang Model, three-Type Models are embeded in the library, namely, the 5-species-11-reactions, the 7-species-15-reactions, the 11-species-26-reactions.
// "Mars-Pa8" is for Park model of Mars gas, "Mars-Mc8" for McKenzie model of Mars gas.
// "Combustion-12" -- indicates the Combustion Chamber Gas Model which includes 12-species-20-reactions.
// "Gas-Mixture" -- indicates the process of mixing two species without reacting.
// "Gas-Mixture" -- indicates the process of mixing gas without reacting.
// for struct solver mixing two species£¨SpeciesA, SpeciesB£©.
// for unstruct solver mixing multi-species£¨O2 NO CO CO2 H2 N2 Air CH4£©.
// For self-definition model, the gasfile is used to indicate the file path of the new gas model.
// speciesName: Used to list the names of each species, while each species name is separated by the symbol of comma.
// initMassFraction: Used to list the initial mass fractions of species in accordance with the sequence of names in the parameter speciesName.
// ifStartFromPerfectGasResults: The chemical reaction simulation is start from perfect gas flowfield or not, 0 is for no and else is for yes.
// nIterFirstStep : the maximum number of iteration in the first step for the self-adaptive calculation.
// nIterSecondStep : the maximum number of iteration in the second step for the self-adaptive calculation.
// nIterThirdStep : the maximum number of iteration in the third step for the self-adaptive calculation.
// nEnergyAssembly : the vibration energy is computed with combined method which includes the fitting method and the molecular kinetic theory.
// 0 -- no,
// 1 -- yes.
// nControlVariable: the variable to computing the residual error that determines the convergence is meet or not in the one-temperature model.
// 0 -- the density.
// 1 -- the translation temperature.
// 2 -- the vibration temperature.
// 3 -- the electron temperature.
// 4 -- the pressure.
// 5 -- the mass fraction of oxygen.
// 6 -- the mass fraction of nitrogen.
// 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
int dg_high_order = 0;
int iapplication = 0;
int iCodeBranch = 0;
int isAdaptiveSolver = 0;
int nm = 5;
int nEquilibriumGas = 0;
int nPCWCycleStep = 3;
int nRETCycleStep = 3;
int nSLIPCycleStep= 3;
int nIterFirstStep = 1000;
int nIterSecondStep= 2000;
int nIterThirdStep = 2000;
int nEnergyAssembly = 0;
int nControlVariable = 1;
double firstStepError = 0.01;
double secondStepError = 0.001;
double thirdStepError = 0.001;
double predictCFLError = 0.1;
double refGama = 1.4;
double prl = 0.72;
@ -952,7 +1077,8 @@ int nchemsrc = 1;
int nchemrad = 1;
int ntmodel = 1;
int nEnergyRecycle = 0;
int nIdealState = 0;
int nEnergyRecycle = 1;
int nSlipBCModel = 0;
int nDensityModify = 1;
int nTEnergyModel = 0;
@ -960,6 +1086,11 @@ int nMeanFreePathType = 0;
int nIsChemicalFreeze = 0;
int nIsSuperCatalytic = 1;
int nTemperatureJump = 0;
int nSurfGradMethod = 0;
int nRapidFlowfield = 0;
int nSurfHeatMonitor = 0;
int nInitPressureStep = 100;
int nDumpCFLNumber = 0;
double parkVDPower = 0.6;
double catalyticCoef = 0.0;
@ -970,17 +1101,38 @@ double velocitySlipCorrectConstant = 1.0;
double chemicalRelaxCorf = 1.0;
double chemicalSpectrumRadiusCoef = 1.0;
double viscousSpectrumRadiusCoef = 1.0;
double inviscidSpectrumRadiusCoef = 1.0;
double staticPressureRelaxCorf = 1.0;
double viscousSpectrumRadiusCoef = 1.5;
double inviscidSpectrumRadiusCoef = 1.5;
double spectrumRadiusCoef = 0.5;
double staticPressureRelaxCorf = 0.2;
double maxViscous = 10000.0;
double trTemperatureMin = 10.0;
double veTemperatureMin = 30.0;
int nDebug = 0;
int nSpeciesLimit = 0;
int nTurblenceForChemical = 0;
int nViscosityFluxSublevelModified = 0 ;
int nChemcalSourceModified = 0;
double maxTemperature = 50000.0;
double densityMin = 1.0e-8;
double densityMinFactor = 0.1;
double tAdjustmentFactor = 10.0;
double iniSpeedCoef = 1.0;
int nDebug = 0;
int nSpeciesLimit = 1;
int nTurblenceForChemical = 0;
int nViscosityFluxSublevelModified = 1;
int nViscosityPeModified = 0;
int nChemcalSourceModified = 2;
int nChemcalSourceEsMethod = 1;
int nMaxStepTemperature = 5;
int veTemperatureMinModified = 1;
int nDiagonalModified = 0;
int nGradPrimtiveMethod = 1;
int nInviscidFluxModify = 1;
int nQlLimitMethod = 2;
int nSpeciesForWallMethod = 1;
int nDensityForWallMethod = 0;
int nProtectData = 0;
int useHyflowSetting = 0;
int nAblation = 0;
int isInjection = 0;
int nViscosityModel = 0;
@ -1000,7 +1152,7 @@ string initMassFraction = "0.0, 0.233, 0.0, 0.0, 0.767";
//string speciesName = "O, O2, NO, N, N2, C, CO, CO2";
//string initMassFraction = "0.0015, 0.0429, 0.0, 0.0, 0.0, 0.0, 0.0777, 0.8779";
//string gasfile = "DK7";
//string gasfile = "Pa";
//string speciesName = "O, O2, NO, N, NO+, C, C2, CO, CO2, CN, N2, e-";
//string initMassFraction = "0.0, 0.233, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.767, 0.0";
@ -1017,6 +1169,11 @@ double gamaSpeciesB = 1.3;
double molecularWeightSpeciesA = 29.0;
double molecularWeightSpeciesB = 30.0;
//string gasfile = "Gas-Mixture";
//string speciesName = "O2, N2";
//string initMassFraction = "1.0, 0.0";
int nContinueModel = 0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
@ -1124,7 +1281,7 @@ int codeOfOversetGrid = 0;
int oversetInterpolationMethod = 0;
int readOversetFileOrNot = 0;
int symetryOrNot = 0;
int readInAuxiliaryInnerGrid = 1;
int readInAuxiliaryInnerGrid = 0;
int readInAuxiliaryOuterGrid = 0;
int readInSklFileOrNot = 0;
string auxiliaryInnerGrid0 = "./grid/aux-upper.fts";
@ -1137,13 +1294,18 @@ double toleranceForOversetBox = 1.0e-3;
int twoOrderInterpolationOrNot = 0;
int keyEnlargeOfActiveNodes = 0;
int outTecplotOverset = 0;
int outPutOversetVisualization = 0;
int numberOfMovingBodies = 2;
// ----------------- ALE configuration ------------------------------
int codeOfAleModel = 1;
int codeOfAleModel = 0;
int aleStartStrategy = -1;
double referenceLength = 1.0;
double referenceVelocity = 1.0;
double referenceDensity = 1.0;
int strategyForFaceNormalVelocity = 0; //0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd;
int strategyForGCLSource = 0; //0-present; 1-Ahn;
@ -1187,6 +1349,11 @@ double configPamameter_0[] = 0.0 ,0.0 ,0.0 ,0.0 ,0.0
int RBDMethod_0 = 0;
double amplitude_0 = 0.0;
double reduceFrequency_0 = 0.0;
//direction of rotation
// 1 -- clockwise from the point of view along the positive x axis.
// -1 -- anticlockwise from the point of view along the positive x axis.
int direction_0 = -1;
double rotateFrequency_0 = 0.0;
//string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter";
//additional force (system axis) fX fY fZ
double addedForce_0[] = 0.0 ,0.0 ,0.0 ;
@ -1218,3 +1385,12 @@ int integralOrder = 4;
#########################################################################
int isPlotVolumeField = 0;
#########################################################################
# Incompressible Parameter #
#########################################################################
int isSolveEnergyEquation = 0;
int isSolveTurbEquation = 0;
int isSolveSpeciesEquation = 0;

View File

@ -14,7 +14,6 @@ string defaultParaFile = "./bin/cfd_para.hypara";
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
// 4 -- Knowledge repository / examples of PHengLEI-API.
int ndim = 2;
int nparafile = 1;
@ -23,7 +22,7 @@ string parafilename = "./bin/cfd_para_subsonic.hypara";
//string parafilename = "./bin/cfd_para_transonic.hypara";
//string parafilename = "./bin/cfd_para_supersonic.hypara";
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/incompressible.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
@ -34,11 +33,11 @@ string parafilename = "./bin/cfd_para_subsonic.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 4;
//string parafilename = "./bin/repository.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 5;
//string parafilename = "./bin/overset_grid_view.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";

View File

@ -1,8 +1,8 @@
# nBoundaryConditons : number of global boundary conditions.
# nBoundaryConditions : number of global boundary conditions.
# bcName : Boundary Condition Name.
# bcType(in PHengLEI): Boundary Condition Type.
# Account of how to set boundaryconditon.
# Account of how to set boundarycondition.
# string bcName = "Farfield";
# {
# int bcType = 4;
@ -13,7 +13,7 @@
# double angleSlide = 0;
# }
int nBoundaryConditons = 3;
int nBoundaryConditions = 3;
string bcName = "Wall_viscous";
{
int bcType = 2;

View File

@ -24,6 +24,7 @@
// 4 -- Grid deformation, achieve unstructured grid deformation.
// 5 -- Grid repairing, repair the original grid in order to remove the negative volume cells.
// 6 -- Grid mirroring, mirror a symmetry grid to whole grid.
// 7 -- Grid type change, convert structured grid to unstructured grid.
// multiblock: Multi-block grid or not, only for structured grid conversion.
// 0 -- Not.
// 1 -- Yes.
@ -32,12 +33,23 @@
// 0 -- X axis.
// 1 -- Y axis.
// 2 -- Z axis.
// gridReorder: Reorder cell and face of grid or not, only for 3D unstructured grid conversion,
// which is CGNS type.
// 0 -- Not.
// 1 -- Yes.
// faceReorderMethod: the reorder method face of unstructured grid.
// 0 -- BSFCELLFACEORG.
// 1 -- BSFCELLFACELEFT.
// 2 -- BSFCELLFACERIGHT.
int gridtype = 0;
int gridobj = 1;
int multiblock = 0;
int iadapt = 0;
int SymmetryFaceVector = 1;
int gridReorder = 0;
int faceReorderMethod = 0;
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
@ -61,6 +73,7 @@ int omit_no_bound_bc = 0;
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
// dumpOldGrid: If dump out the old grid file.
// 0 -- Not. (default)
// 1 -- Yes.
@ -82,7 +95,6 @@ string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
// ----------------- some advanced choices ------------------------------
// iunsteady: The Grid is for unsteady simulation or not.
int iunsteady = 0;
int codeOfAleModel = 0;
// fileformat: Ustar Grid file format.
// 0 -- BINARY.
@ -102,12 +114,10 @@ string holeFullFileName = "./oversetGridView/holeFullFile.dat";
string linkFileName = "./oversetGridView/topology.dat";
string zoneInverseFileName = "./oversetGridView/zoneInverseMapping.inp";
// ----------------- Adaptive Mesh Refine -------------------------------
// In this file, the original_grid_file is used of the partition part.
// If use it dependently, abstract it here.
string adapt_grid_file = "./grid/sphere_mixed_adapt1.fts";
string geometryFileName = "./grid/jsm.igs";
// ----------------- Grid Refine Parameters -----------------------------
// anisoRefine: If refine grid by anisoRefine type.
// 0 -- Not. (default)
// 1 -- Yes.
// geometryUnit: Geometry unit.
// 1 -- meter.
// 2 -- millimeter.
@ -117,14 +127,14 @@ string geometryFileName = "./grid/jsm.igs";
// 1 -- JSM-C2-NPOFF case.
// 2 -- CHNT.
// projectOrgPoint: If the original wall points need to be projected or not.
int geometryUnit = 1;
int anisoRefine = 0;
int geometryUnit = 1;
int isProject = 0;
int readDist = 0;
int isDeform = 0;
int exclusiveCase = 0; // 0: NON case; 1: JSM-C2-NPOFF case; 2: CHNT.
int projectOrgPoint = 0; // if project original wall points.
int exclusiveCase = 0;
int projectOrgPoint = 0;
string geometryFileName = "./grid/jsm.igs";
// ----------------- Grid Deform Parameters -----------------------------
// deformationMethod: Grid Deform.
@ -181,8 +191,11 @@ double rotationAngle = 0.0;
// 1 -- struct grid.
// 2 -- refine structured grid.
// maxproc: The number of partition zones that want to be divided into.
// numberOfMultifile: The number of partition grid files that want to be dumped out.
int pgridtype = 0;
int maxproc = 4;
int numberOfMultifile = 1;
// traceMark: Trace mark or not, only for structured grid partition.
// 0 -- Not.
@ -291,6 +304,7 @@ int compressible = 1;
// refMolecularWeight : the reference molecular weight of gas used for perfect gas. The unit is g/mol.
// Generally, the gas is air. Sometimes, it is experiment gas, such as Nitrogen, Argon, and so on.
int directionMethod = 0;
double refMachNumber = 0.73;
double attackd = 2.79;
double angleSlide = 0.00;
@ -334,6 +348,7 @@ double wallTemperature = -1.0;
double radiationCoef = 0.8;
double gridScaleFactor = 1.0;
double gridTranslationVector[] = [0.0, 0.0, 0.0];
int numberOfAerodynamicForceComponents = 1;
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
@ -355,11 +370,17 @@ double refMolecularWeight = 28.9644; // unit of g/mol.
// -- "vanleer", "steger", "hlle", "lax_f".
// -- "roe", "modified_roe".
// -- "ausm+", "ausm+w", "ausm+up", "ausmdv", "ausmpw", "ausmpw+".
// isWennScheme: If using WENN Scheme of struct grid.
// 0 -- NO. (default)
// 1 -- Yes.
// str_limiter_name: Limiter of struct grid.
// -- "vanalbada", "vanleer", "minmod", "smooth", "minvan", "3rdsmooth", "3rd_minmod_smooth".
// -- "nolim", no limiter.
// -- "vanalbada_clz", clz supersonic version.
// -- "weno3_js", "wenn3_prm211", "wenn3_zm", "wenn3_zes2", "wenn3_zes3"
string inviscidSchemeName = "roe";
int isWennScheme = 0;
string str_limiter_name = "vanalbada";
#*******************************************************************
@ -421,6 +442,7 @@ string str_limiter_name = "vanalbada";
// 3 -- Harten type, which is default used.
// roeEntropyScale: Entropy fix (correction) coefficient scale, default is 1.0.
// It is used to scale the default Roe entropy fix coefficients.
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0
//int viscousType = 0;
//string viscousName = "Euler";
@ -451,6 +473,8 @@ double skewnessAngle = 60.0;
int roeEntropyFixMethod = 3;
double roeEntropyScale = 1.0;
double AusmpwPlusLimiter = 1.0;
//-----------------------------------------------------------------------
# Temporal Discretisation #
//-----------------------------------------------------------------------
@ -466,8 +490,8 @@ double roeEntropyScale = 1.0;
// statisticalTimePeriod: Used as time period of statistic analysis.
// when the value is negative, time period is treated as infinite.
// statisticMethod: Statistic reynolds stress method.
0 --tau = <q^2> - <q>^2
1 --tau = <u'u'>
// 0 -- tau = <q^2> - <q>^2
// 1 -- tau = <u'u'>
// min_sub_iter: The min sub iteration of unsteady simulation.
// max_sub_iter: The max sub iteration of unsteady simulation.
// tol_sub_iter: The tolerance of sub iteration of unsteady simulation.
@ -478,9 +502,8 @@ double roeEntropyScale = 1.0;
// 4 -- LU-SGS.
// 5 -- Block LU-SGS.
// 6 -- Jacobian iteration.
// 7 -- Lower G-S iteration.
// 8 -- Upper G-S iteration.
// 9 -- Lower/Upper G-S iteration.
// 7 -- Line LU-SGS.
// 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.
// CFLStart: Started cfl number.
@ -493,6 +516,10 @@ double roeEntropyScale = 1.0;
// ifLocalTimeStep: Time step method.
// 0 --Local.
// 1 --Global.
// isUseLocalCFL: use variable number of CFL or not.
// 0 -- global unified CFL number.
// 1 -- local CFL number.
// isUsePreTwall: use the previous temperatures on wall. 1 indicates yes, and 0 indicates no.
// visl_min: Minimum value of laminar viscosity coefficient.
// turbCFLScale: Turbulence model cfl number factor.
// codeOfAleModel: Arbitrary Lagrangian-Eulerian method.
@ -509,6 +536,7 @@ double roeEntropyScale = 1.0;
int iunsteady = 0;
double physicalTimeStep = 0.01;
double physicalTimeStepDimensional = -0.001;
int ifStartFromSteadyResults = 0;
int ifStaticsFlowField = 0;
int ifStaticsReynoldsStress = 0;
@ -525,10 +553,18 @@ double tol_sub_iter = 0.01;
int tscheme = 4;
int iSimplifyViscousTerm = 1;
int ifLocalTimeStep = 0;
int isUseLocalCFL = 0;
int isUsePreTwall = 0;
double CFLStart = 0.01;
double CFLEnd = 10.0;
int CFLVaryStep = 500;
double pMaxForCFL = 0.2;
double pMinForCFL = 0.1;
double deltaMaxForCFL = 0.2;
double magnifyFactorForCFL = 1.1;
double reduceFactorForCFL = 0.5;
double ktmax = 1.0e10;
int swapDq = 1;
@ -548,7 +584,7 @@ double dtau = 0.001;
int wallFunctionType = 0;
int RKStage = 2;
double lamda[] = 0.5, 1.0;
double lamda[] = [0.5, 1.0];
//int RKStage = 1;
//double lamda[] = 1.0;
@ -579,12 +615,20 @@ double lamda[] = 0.5, 1.0;
// wall_aircoefile: The file path to save flowfield variables of wall, write data for every default steps.
// nDumpSurfaceInfo = 0 the "wall_varfile" write the informations including heat flux.
// nDumpSurfaceInfo = 1 the "wall_varfile" write the informations without heat flux.
// nIsComputeWallDist: Whether to compute the wall distance.
// 0 -- Compute wall distance.
// 1 -- Not compute.
//
// protectionFile0 and protectionFile1 : Two continuation file of the data protection mechanism.
// wall_heatfluxfile : The file to output the MaxHeatFlux of wall.
int numberOfGridGroups = 1;
string gridfile = "./grid/rae2822_hybrid2d__4.fts";
string wallTemperaturefile= "";
int nIsComputeWallDist = 0;
int walldistMethod = 1;
int cellMethodOrNodeMethod = 0;
string resSaveFile = "results/res.dat";
string turbresfile = "results/turbres.dat";
@ -597,6 +641,10 @@ string visualfile = "results/tecflow.plt";
string wall_aircoefile = "results/wall_aircoef.dat";
string samplefile = "results/sample.dat";
string protectionFile0 = "results/flow0.dat";
string protectionFile1 = "results/flow1.dat";
string wall_heatfluxfile = "results/wall_heatflux.dat";
int nDumpSurfaceInfo = 0;
string wall_varfile = "";
@ -648,7 +696,10 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21),
// -- vibration temperature(Tv, 33), electron temperature(Te, 34), vibrational energy(Ev, 35), electric energy(Ee, 36),
// -- 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), iblank(81).
// -- 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),
// -- overlap iblank(iblank, 81)
// -- specific heat ratio(gama, 56)
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
@ -660,10 +711,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
// -heat flux of species diffusion term(Qs, 9), -heat flux of vibrational temperature term(Qv, 10), -heat flux of electron temperature term(Qe, 11),
// -species mass fractions(Ns, 12), -x component of wall velocity(Vx, 13), -y component of wall velocity(Vy, 14), -z component of wall velocity(Vz, 15)
// -slip translational-rotational temperature(Tts, 16), -slip vibrational temperature(Tvs, 17), -slip electron temperature(Tes, 18), -absolute wall velocity(Vs, 19)
// -Stanton number(St, 20), -coefficient of heat rate(Ch, 21), -temperature jump(deltaT, 22), -transition gamaeff(gamaeff, 48),
// -transition intermittency(intermittency, 51), -transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
// -overlap iblank(iblank, 81)
// -Stanton number(St, 20), -coefficient of heat rate(Ch, 21), -temperature jump(deltaT, 22), -Grid Reynolds number on wall(Re_w, 23)
int nVisualVariables = 8;
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
@ -691,7 +739,7 @@ int dumpStandardModel = 0;
// 1 -- Real cell where the probe is located.
// nProbeVariables: Number of variables want to be dumped for probes monitered.
// probeVariables : Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5).
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6).
// Important Warning: Array size of probeVariables MUST be equal to nProbeVariables!!!
// probeVariables order must from small to big.
// probeVariablesInterpolationMethod: Interpolation method used to compute the probe variables.
@ -713,8 +761,8 @@ string probesDefineFile = "bin/probes_XYZ.dat";
int searchCellsMethod = 0;
int nProbeVariables = 6;
int probeVariables[] = [0, 1, 2, 3, 4, 5];
int nProbeVariables = 7;
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
int probeVariablesInterpolationMethod = 0;
//-----------------------------------------------------------------------
# Turbulence Parameter #
@ -722,9 +770,13 @@ int probeVariablesInterpolationMethod = 0;
// turbInterval: Iteration number of turbulence.
// kindOfTurbSource: Kinds of turbulent source.
// 0 -- Original.
// 1 -- Edwards.
// 2 -- new.
// mod_turb_res: If modify the residuals for the cells next to the wall or not, default is 0.
// transitionType: transition model type
// 0 -- none.
// 2 -- gama-re-theta.
// turbIntensity: (valid while greater than 0.0 ) turbulent intensity of free stream(*100) in transition
// freeturbIntensitySRModify: to use SR modify in free stream turbulent intensity decay or not
int turbInterval = 1;
int turbOrderStruct = 2;
@ -739,6 +791,7 @@ double turbIntensity = -1.0;
int freeturbIntensitySRModify = 0;
double freeDecayXLocation = 0.0;
int compressibleCorrection = 0;
int prandtlNumberCorrection = 0;
int transitionMaFix = 1;
# maximum eddy viscosity (myt/my) max.
@ -749,7 +802,7 @@ int monitor_vistmax = 0;
# LES Parameter #
//-----------------------------------------------------------------------
// iLES: Create LESSolver or not.
// == 1 - Create LESSolver;
// = 1 - Create LESSolver;
// != 1 - not.
// amplitudeofDisturb: Amplitude of adding disturb.
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
@ -808,9 +861,10 @@ int monitorNegativeConstant = 0;
// iapplication:
// 0 -- gas model is fixed in the codes.
// 1 -- gas model is imported from library files.
// iCodeBranch:
// 0 -- The old code version is used for Navier-Stokes.
// 1 -- A new code version is active for 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.
@ -824,7 +878,6 @@ int monitorNegativeConstant = 0;
// 0 -- not used .
// 1 -- used.
// nDensityModify: The type of densitymodify.
// 0 -- not used.
// 1 -- used.
// nchem:
@ -860,9 +913,13 @@ int monitorNegativeConstant = 0;
// 1 -- One-temperature model.
// 2 -- Two-temperature model.
// 3 -- Three-temperature model.
// nIdealState: whether take all gas species as ideal gas for gas-mixture process.
// 0 -- No.
// 1 -- Yes.
// nTEnergyModel: the method to computing temperature energy model.
// 0 -- the energy term is computed using the conventional method.
// 1 -- the energy term is computed using the curve fitting method.
// 1 -- the energy term is computed using the polynomial fitting method.
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
// parkVDPower: the power of translational-rotational temperature in the Park V-D(vibration-dissociation) coupling model.
// The value is in range of [0.0, 1.0], DPLR suggests 0.5, LAURA suggests 0.7, while 0.6 is given as default value.
// catalyticCoef:
@ -875,6 +932,13 @@ int monitorNegativeConstant = 0;
// nTemperatureJump : the method to calculate the temperature jump.
// 0 -- calculated by the variables of heat conductivity and constant volume specific heat for each energy mode.
// 1 -- the general method where the iteration is calculated with the translation-rotation temperature.
// nSurfGradMethod : the method to compute the surface heating ratio.
// 0 -- the gradient of variable is computed with the first-order difference method.
// 1 -- the gradient of variable is computed with the Green-Guass integral method.
// nRapidFlowfield : initialize the flowfield using the rapid engineering method when it is greater than zero.
// nSurfHeatMonitor : To exam the surface heating change or not. 0 is no, 1 is yes.
// nInitPressureStep : the steps to initialize the boundary variables when the rapid method is used. 100 is the default value.
// nDumpCFLNumber : 1 indicates dumping the CFL number to file, 0 denotes no dumping.
// sigmaVelocity: the coordination coefficient of tangential momentum for computation of slip velocity. The value is in range of (0.0, 2.0].
// sigmaTemperature: the heat coordination coefficient for computation of slip temperature. The value is in range of (0.0, 2.0].
// sigmaMassFraction: the species coordination coefficient for computation of slip mass fractions. The value is in range of (0.0, 2.0].
@ -884,13 +948,17 @@ int monitorNegativeConstant = 0;
// 1.146 -- proposed for an additional "fictitious" velocity slip.
// chemicalRelaxCorf: The value is in range of [0.001, 1.0].
// chemicalSpectrumRadiusCoef: The value is in range of [1.0, 3.0].
// viscousSpectrumRadiusCoef : The value is in range of [1.0, 3.0].
// inviscidSpectrumRadiusCoef: The value is in range of [1.0, 3.0].
// spectrumRadiusCoef: The value is in range of [0.0, 2.0].
// staticPressureRelaxCorf: The value is in range of [0.1, 1.0].
// nIsChemicalFreeze : the flag to freeze the chemical reactions.
// 0 -- not freeze, the chemical reaction sources will be calculated.
// 1 -- freezes the chemical reactions, the chemical reaction sources will not be calculated.// veTemperatureMin: The minimum of Tv and Te
//maxViscous: the maximum of Viscous.
//trTemperatureMin: the minimum value of trTemperature.
//veTemperatureMin: the minimum value of veTemperature.
//densityMin: the minimum value of density.
//tAdjustmentFactor: magnification of temperature, this value is in range of (1.0, 10.0].
// nDebug: cout the Wrong place and abort
// 0 -- not used.
// 1 -- used.
@ -903,9 +971,30 @@ int monitorNegativeConstant = 0;
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
// 0 -- not used.
// 1 -- used.
// nViscosityPeModified: Pe Modified for ViscosityCoef
// 0 -- not used.
// 1 -- used.
// nChemcalSourceModified: Modified on ChemcalSource
// 0 -- not used.
// 1 -- used.
// nChemcalSourceEsMethod: Modified on ChemcalSource
// 0 -- approximation algorithm 1 (Ori.)
// 1 -- approximation algorithm 2 (New)
// nMaxStepTemperature: the iterative steps of temperature.
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs
// 0 -- not used
// 1 -- used
// nDiagonalModified: Modified on Diagonal
// 0 -- not used
// 1 -- Ori.
// 2 -- new
//nGradPrimtiveMethod:
// 0 -- Ori.
// 1 -- new
// nAblation:
// 0 -- The wall ablation is not computed.
// 1 -- The wall ablation is computed.
@ -913,9 +1002,11 @@ int monitorNegativeConstant = 0;
// 0 -- The injection velocity of ablation wall is not computed.
// 1 -- The injection velocity of ablation wall is computed.
// nViscosityModel:
// 0 -- Blottner fitting method.
// 1 -- Gupta fitting method.
// 0 -- Blottner fitting method(N89).
// 1 -- Gupta fitting method(N90).
// nContinueModel: The new continue model can switch different computation model.
// 0 -- Not use the new continue model.
// 1 -- use the new continue model.
// nSutherland:
// 0 -- stands for selecting the Blotter curve fits mode.
// 1 -- stands for Sutherland relation.
@ -925,20 +1016,54 @@ int monitorNegativeConstant = 0;
// "DK" -- indicates the Dunn-Kang Model, three-Type Models are embeded in the library, namely, the 5-species-11-reactions, the 7-species-15-reactions, the 11-species-26-reactions.
// "Mars-Pa8" is for Park model of Mars gas, "Mars-Mc8" for McKenzie model of Mars gas.
// "Combustion-12" -- indicates the Combustion Chamber Gas Model which includes 12-species-20-reactions.
// "Gas-Mixture" -- indicates the process of mixing two species without reacting.
// "Gas-Mixture" -- indicates the process of mixing gas without reacting.
// for struct solver mixing two species£¨SpeciesA, SpeciesB£©.
// for unstruct solver mixing multi-species£¨O2 NO CO CO2 H2 N2 Air CH4£©.
// For self-definition model, the gasfile is used to indicate the file path of the new gas model.
// speciesName: Used to list the names of each species, while each species name is separated by the symbol of comma.
// initMassFraction: Used to list the initial mass fractions of species in accordance with the sequence of names in the parameter speciesName.
// ifStartFromPerfectGasResults: The chemical reaction simulation is start from perfect gas flowfield or not, 0 is for no and else is for yes.
// nIterFirstStep : the maximum number of iteration in the first step for the self-adaptive calculation.
// nIterSecondStep : the maximum number of iteration in the second step for the self-adaptive calculation.
// nIterThirdStep : the maximum number of iteration in the third step for the self-adaptive calculation.
// nEnergyAssembly : the vibration energy is computed with combined method which includes the fitting method and the molecular kinetic theory.
// 0 -- no,
// 1 -- yes.
// nControlVariable: the variable to computing the residual error that determines the convergence is meet or not in the one-temperature model.
// 0 -- the density.
// 1 -- the translation temperature.
// 2 -- the vibration temperature.
// 3 -- the electron temperature.
// 4 -- the pressure.
// 5 -- the mass fraction of oxygen.
// 6 -- the mass fraction of nitrogen.
// 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
int dg_high_order = 0;
int iapplication = 0;
int iCodeBranch = 0;
int isAdaptiveSolver = 0;
int nm = 5;
int nEquilibriumGas = 0;
int nPCWCycleStep = 3;
int nRETCycleStep = 3;
int nSLIPCycleStep= 3;
int nIterFirstStep = 1000;
int nIterSecondStep= 2000;
int nIterThirdStep = 2000;
int nEnergyAssembly = 0;
int nControlVariable = 1;
double firstStepError = 0.01;
double secondStepError = 0.001;
double thirdStepError = 0.001;
double predictCFLError = 0.1;
double refGama = 1.4;
double prl = 0.72;
@ -952,7 +1077,8 @@ int nchemsrc = 1;
int nchemrad = 1;
int ntmodel = 1;
int nEnergyRecycle = 0;
int nIdealState = 0;
int nEnergyRecycle = 1;
int nSlipBCModel = 0;
int nDensityModify = 1;
int nTEnergyModel = 0;
@ -960,6 +1086,11 @@ int nMeanFreePathType = 0;
int nIsChemicalFreeze = 0;
int nIsSuperCatalytic = 1;
int nTemperatureJump = 0;
int nSurfGradMethod = 0;
int nRapidFlowfield = 0;
int nSurfHeatMonitor = 0;
int nInitPressureStep = 100;
int nDumpCFLNumber = 0;
double parkVDPower = 0.6;
double catalyticCoef = 0.0;
@ -970,17 +1101,38 @@ double velocitySlipCorrectConstant = 1.0;
double chemicalRelaxCorf = 1.0;
double chemicalSpectrumRadiusCoef = 1.0;
double viscousSpectrumRadiusCoef = 1.0;
double inviscidSpectrumRadiusCoef = 1.0;
double staticPressureRelaxCorf = 1.0;
double viscousSpectrumRadiusCoef = 1.5;
double inviscidSpectrumRadiusCoef = 1.5;
double spectrumRadiusCoef = 0.5;
double staticPressureRelaxCorf = 0.2;
double maxViscous = 10000.0;
double trTemperatureMin = 10.0;
double veTemperatureMin = 30.0;
int nDebug = 0;
int nSpeciesLimit = 0;
int nTurblenceForChemical = 0;
int nViscosityFluxSublevelModified = 0 ;
int nChemcalSourceModified = 0;
double maxTemperature = 50000.0;
double densityMin = 1.0e-8;
double densityMinFactor = 0.1;
double tAdjustmentFactor = 10.0;
double iniSpeedCoef = 1.0;
int nDebug = 0;
int nSpeciesLimit = 1;
int nTurblenceForChemical = 0;
int nViscosityFluxSublevelModified = 1;
int nViscosityPeModified = 0;
int nChemcalSourceModified = 2;
int nChemcalSourceEsMethod = 1;
int nMaxStepTemperature = 5;
int veTemperatureMinModified = 1;
int nDiagonalModified = 0;
int nGradPrimtiveMethod = 1;
int nInviscidFluxModify = 1;
int nQlLimitMethod = 2;
int nSpeciesForWallMethod = 1;
int nDensityForWallMethod = 0;
int nProtectData = 0;
int useHyflowSetting = 0;
int nAblation = 0;
int isInjection = 0;
int nViscosityModel = 0;
@ -1000,7 +1152,7 @@ string initMassFraction = "0.0, 0.233, 0.0, 0.0, 0.767";
//string speciesName = "O, O2, NO, N, N2, C, CO, CO2";
//string initMassFraction = "0.0015, 0.0429, 0.0, 0.0, 0.0, 0.0, 0.0777, 0.8779";
//string gasfile = "DK7";
//string gasfile = "Pa";
//string speciesName = "O, O2, NO, N, NO+, C, C2, CO, CO2, CN, N2, e-";
//string initMassFraction = "0.0, 0.233, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.767, 0.0";
@ -1017,6 +1169,11 @@ double gamaSpeciesB = 1.3;
double molecularWeightSpeciesA = 29.0;
double molecularWeightSpeciesB = 30.0;
//string gasfile = "Gas-Mixture";
//string speciesName = "O2, N2";
//string initMassFraction = "1.0, 0.0";
int nContinueModel = 0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
@ -1124,7 +1281,7 @@ int codeOfOversetGrid = 0;
int oversetInterpolationMethod = 0;
int readOversetFileOrNot = 0;
int symetryOrNot = 0;
int readInAuxiliaryInnerGrid = 1;
int readInAuxiliaryInnerGrid = 0;
int readInAuxiliaryOuterGrid = 0;
int readInSklFileOrNot = 0;
string auxiliaryInnerGrid0 = "./grid/aux-upper.fts";
@ -1137,13 +1294,18 @@ double toleranceForOversetBox = 1.0e-3;
int twoOrderInterpolationOrNot = 0;
int keyEnlargeOfActiveNodes = 0;
int outTecplotOverset = 0;
int outPutOversetVisualization = 0;
int numberOfMovingBodies = 2;
// ----------------- ALE configuration ------------------------------
int codeOfAleModel = 1;
int codeOfAleModel = 0;
int aleStartStrategy = -1;
double referenceLength = 1.0;
double referenceVelocity = 1.0;
double referenceDensity = 1.0;
int strategyForFaceNormalVelocity = 0; //0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd;
int strategyForGCLSource = 0; //0-present; 1-Ahn;
@ -1187,6 +1349,11 @@ double configPamameter_0[] = 0.0 ,0.0 ,0.0 ,0.0 ,0.0
int RBDMethod_0 = 0;
double amplitude_0 = 0.0;
double reduceFrequency_0 = 0.0;
//direction of rotation
// 1 -- clockwise from the point of view along the positive x axis.
// -1 -- anticlockwise from the point of view along the positive x axis.
int direction_0 = -1;
double rotateFrequency_0 = 0.0;
//string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter";
//additional force (system axis) fX fY fZ
double addedForce_0[] = 0.0 ,0.0 ,0.0 ;
@ -1218,3 +1385,12 @@ int integralOrder = 4;
#########################################################################
int isPlotVolumeField = 0;
#########################################################################
# Incompressible Parameter #
#########################################################################
int isSolveEnergyEquation = 0;
int isSolveTurbEquation = 0;
int isSolveSpeciesEquation = 0;

View File

@ -14,7 +14,6 @@ string defaultParaFile = "./bin/cfd_para.hypara";
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
// 4 -- Knowledge repository / examples of PHengLEI-API.
int ndim = 3;
int nparafile = 1;
@ -23,7 +22,7 @@ int nsimutask = 0;
//string parafilename = "./bin/cfd_para_transonic.hypara";
//string parafilename = "./bin/cfd_para_supersonic.hypara";
string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/incompressible.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
@ -34,11 +33,11 @@ string parafilename = "./bin/cfd_para_hypersonic.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 4;
//string parafilename = "./bin/repository.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 5;
//string parafilename = "./bin/overset_grid_view.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,197 @@
#########################################################################
# General Control Parameter #
#########################################################################
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
int maxSimuStep = 60000;
int intervalStepFlow = 500;
int intervalStepPlot = 500;
int intervalStepForce = 50;
int intervalStepRes = 50;
// ifLowSpeedPrecon: Precondition process to accelerate convergence for low speed flow.
// 0 -- no precondition process. (default, mach > 0.3)
// 1 -- carry out precondition process. (mach number <= 0.3)
int ifLowSpeedPrecon = 0;
#########################################################################
# Inflow Parameter #
#########################################################################
// refMachNumber: Mach number.
// attackd: Angle of attack.
// angleSlide: Angle of sideslip.
// inflowParaType: The type of inflow parameters.
// 0 -- the nondimensional conditions.
// 1 -- the flight conditions.
// 2 -- the experiment conditions.
// 3 -- the subsonic boundary conditions.
// 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.
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
// height: Fly height, unit of km.
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
// 1 dm = 0.1 m.
// 1 cm = 0.01 m.
// 1 mm = 0.001m.
// 1 inch = 0.0254m.
// 1 foot = 12 inches = 0.3048m.
// 1 yard = 3 feet = 0.9144m.
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
double refMachNumber = 0.2;
double attackd = 19.0;
double angleSlide = 0.00;
int inflowParaType = 0;
double refReNumber = 9.0e6;
double refDimensionalTemperature = 288.0;
//int inflowParaType = 1;
//double height = 0.001;
double gridScaleFactor = 1.0;
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
double forceReferenceLength = 1.0; // unit of meter.
double forceReferenceArea = 1.0; // unit of meter^2.
double TorqueRefX = 0.0; // unit of meter.
double TorqueRefY = 0.0; // unit of meter.
double TorqueRefZ = 0.0; // unit of meter.
#########################################################################
# Physical models #
#########################################################################
// viscousType : Viscous model.
// 0 -- Euler.
// 1 -- Lamilar.
// 3 -- 1eq turbulent.
// 4 -- 2eq turbulent.
// viscousName: Laminar or tubulent model.
// -- "1eq-sa", when viscousType = 3.
// -- "2eq-kw-menter-sst", when viscousType = 4.
// DESType: Type of DES.
// 0 -- RANS.(default)
// 1 -- DES.
// 2 -- DDES.
// 3 -- IDDES.
//int viscousType = 0;
//string viscousName = "Euler";
//int viscousType = 1;
//string viscousName = "laminar";
int viscousType = 3;
string viscousName = "1eq-sa";
//int viscousType = 4;
//string viscousName = "2eq-kw-menter-sst";
int DESType = 0;
int roeEntropyFixMethod = 2;
double roeEntropyScale = 1.0;
#########################################################################
# Spatial Discretisation #
#########################################################################
#*******************************************************************
# Struct Solver *
#*******************************************************************
// str_limiter_name: Limiter of struct grid.
// -- "3rdsmooth", "smooth".
// -- "nolim", no limiter.
string str_limiter_name = "smooth";
double MUSCLCoefXk = 0.333333;
#*******************************************************************
# UnStruct Solver *
#*******************************************************************
// uns_limiter_name: Limiter of Unstruct grid.
// -- "vencat".
// -- "1st", meaning accuracy of first-order.
// -- "nolim", no limiter.
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
// The smaller the value, the more robust it is.
string uns_limiter_name = "vencat";
double venkatCoeff = 50.0;
#########################################################################
# Temporal Discretisation #
#########################################################################
// iunsteady: Steady or unsteady.
// 0 -- steady.
// 1 -- unsteay.
// CFLEnd: The CFL number, [0.1, 100].
// The bigger the value, the convergence faster but lower robustness.
// nLUSGSSweeps: Number of Sub-iteration of LU-SGS.
// 1 -- is recommended for structured solver.
// 1-3 -- is recommended for unstructured solver.
int iunsteady = 0;
double CFLEnd = 10.0;
int tscheme = 8;
int nLUSGSSweeps = 1;
#########################################################################
# Multi-Grid parameters #
#########################################################################
// nMGLevel: The number of Multi-Grid level.
// = 1 -- single-level.
// > 1 -- multi-level.
// flowInitStep: Flow initialization step, 0 - 500 is suggested.
// Multi-Grid : Number of steps computing on coarse grid, during flow initialization.
// Single-Grid: Number of steps computing using first-order with vanleer, during flow initialization.
int nMGLevel = 1;
int flowInitStep = 100;
#########################################################################
# File In or Out #
#########################################################################
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// IMPORTANT WARNING: The file index should be ignored,
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
// Please use 'rae2822_hybrid2d__4.fts' here!
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
string gridfile = "./grid/30p30n_str__4.fts";
int plotFieldType = 0;
// ----------------- Advanced Parameters, DO NOT care it ----------------
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables: Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
// -- viscosityLaminar(7), viscosityTurbulent(8),
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21).
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
int nVisualVariables = 8;
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
// limitVariables: Limit model (It is useful only if limitVector is 0).
// 0 -- limit only for pressure and denstiny, then get the min value.
// 1 -- limit for every variables, then get the min value.
// limitVector:
// 0 -- Each variable use the same limiter coefficient.
// 1 -- Each variable use the respective limiter coefficients.
// reconmeth:
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
int reconmeth = 1;
int limitVariables = 0;
int limitVector = 0;

View File

@ -0,0 +1,31 @@
#########################################################################
# Grid data type #
#########################################################################
// gridtype: Grid type for generation, conversion, reconstruction, merging.
// 0 -- Unstructured grid.
// 1 -- Structured grid.
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
// from_gtype: Type of grid data type in grid conversion process.
// -1 -- MULTI_TYPE.
// 1 -- PHengLEI, *.fts.
// 2 -- CGNS, *.cgns.
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
// 5 -- Fluent, *.cas/*.msh.
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
int gridtype = 1;
int axisup = 1;
int from_gtype = 3;
#########################################################################
# File path #
#########################################################################
// from_gfile: path of original data file for unstructure grid convert from.
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
string from_gfile = "./grid/30p30n_str.grd";
string out_gfile = "./grid/30p30n_str.fts";

View File

@ -0,0 +1,52 @@
string title = "PHengLEI Main Parameter Control File";
// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE.
string defaultParaFile = "./bin/cfd_para.hypara";
// ndim: Dimensional of the grid, 2 or 3.
// nparafile: the number of parameter files.
// nsimutask: simulation task type.
// 0 -- CFD Solver of NS or Turbulation.
// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc.
// Grid conversion: from other format to PHengLEI format (.fts).
// Grid reconstruction: such as grid adaptation.
// Grid merging: merge two blocks into one block.
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
int ndim = 2;
int nparafile = 1;
int nsimutask = 0;
string parafilename = "./bin/cfd_para_subsonic.hypara";
//string parafilename = "./bin/cfd_para_transonic.hypara";
//string parafilename = "./bin/cfd_para_supersonic.hypara";
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
//int nsimutask = 2;
//string parafilename = "./bin/cfd_para.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";
//int nsimutask = 99;
//string parafilename = "./bin/post_processing.hypara";
// ---------------- Advanced Parameters, DO NOT care it ----------------
int numberOfGridProcessor = 0;
// ATP read
//@string parafilename1 = ""
//@string parafilename2 = "";

View File

@ -0,0 +1,24 @@
// pgridtype: The grid type.
// 0 -- unstruct grid.
// 1 -- struct grid.
// maxproc: The number of partition zones that want to be divided into,
// which is equal to the number of CPU processors you want.
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
// 30~70 thousands unstructured cells per CPU-Core is suggested.
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
// numberOfMultifile: The number of partition grid files that want to be dumped out.
int pgridtype = 1;
int maxproc = 4;
string original_grid_file = "./grid/30p30n_str.fts";
string partition_grid_file = "./grid/30p30n_str__4.fts";
int numberOfMultifile = 1;
// numberOfMultigrid: Number of multi-grid levels, ONLY used for structured grid.
// 1 -- single level.
// 2 -- 2 level.
// N -- N level,..., et al.
int numberOfMultigrid = 1;

View File

@ -0,0 +1,161 @@
1
8
81 617
A
21
1 41 1 1 4
1 1 65 1 -1
353 353 -65 -1 7
1 1 65 129 -1
281 281 -1 -65 6
1 1 189 129 -1
121 121 -61 -1 8
1 1 221 189 -1
121 121 -93 -61 8
1 1 221 245 -1
121 121 -93 -117 8
1 1 309 245 -1
41 41 65 1 2
1 1 309 341 -1
41 41 -65 -97 2
1 1 -481 -553 -1
41 41 -65 -137 5
1 1 -481 -449 -1
41 41 -65 -33 5
1 1 -373 -449 -1
121 121 -33 -109 4
1 1 -341 -373 -1
121 121 -1 -33 4
41 1 617 617 4
1 1 -553 -617 -1
1 1 -65 -1 7
81 81 553 617 4
81 41 617 617 4
81 81 341 553 4
81 81 245 341 4
81 81 65 245 4
81 81 65 1 4
41 81 1 1 4
41 97
B
6
41 41 65 1 -1
1 1 309 245 1
-1 -41 1 1 -1
81 121 117 117 8
1 1 65 1 2
41 41 -65 -97 -1
1 1 309 341 1
1 1 97 65 2
1 41 97 97 -1
81 121 1 1 4
81 49
C
6
81 49 49 49 -1
81 49 1 1 4
81 81 1 49 2
81 49 1 1 -1
81 49 117 117 8
-1 -49 49 49 -1
1 49 1 1 4
1 1 49 1 2
-49 -1 1 1 -1
49 1 117 117 8
121 141
D
14
121 121 -1 -33 -1
1 1 -341 -373 1
81 121 1 1 -1
1 41 97 97 2
81 49 1 1 -1
81 49 49 49 3
1 1 33 1 2
1 49 1 1 -1
-1 -49 49 49 3
121 121 -33 -109 -1
1 1 -373 -449 1
1 1 77 33 2
1 1 93 77 2
1 1 109 93 2
1 1 125 109 2
1 1 -125 -141 -1
1 1 -17 -1 8
49 1 141 141 -1
113 161 65 65 6
-121 -49 141 141 -1
41 113 65 65 6
121 121 141 109 -1
41 41 -1 -33 5
41 137
E
8
41 41 -1 -33 -1
121 121 141 109 4
1 1 33 1 2
1 41 1 1 -1
1 41 65 65 6
41 41 -65 -33 -1
1 1 -481 -449 1
1 1 65 33 2
41 41 -65 -137 -1
1 1 -481 -553 1
1 1 137 65 2
41 1 137 137 -1
1 41 65 65 7
281 65
F
8
1 1 65 1 2
1 161 1 1 -1
73 233 65 65 7
113 161 65 65 -1
49 1 141 141 4
41 113 65 65 -1
-121 -49 141 141 4
1 41 65 65 -1
1 41 1 1 5
161 281 65 65 -1
1 121 1 1 8
281 281 -1 -65 -1
1 1 65 129 1
161 281 1 1 -1
233 353 65 65 7
353 65
G
7
1 1 -65 -1 -1
1 1 -553 -617 1
1 41 65 65 -1
41 1 137 137 5
73 41 65 65 2
73 233 65 65 -1
1 161 1 1 6
233 353 65 65 -1
161 281 1 1 6
353 353 -65 -1 -1
1 1 65 1 1
1 353 1 1 4
121 117
H
11
1 1 61 17 2
1 1 -17 -1 -1
1 1 -125 -141 4
1 121 1 1 -1
161 281 65 65 6
121 121 -61 -1 -1
1 1 189 129 1
1 1 93 61 2
121 121 -93 -61 -1
1 1 221 189 1
1 1 117 93 2
81 49 117 117 -1
81 49 1 1 3
49 1 117 117 -1
-49 -1 1 1 3
81 121 117 117 -1
-1 -41 1 1 2
121 121 -93 -117 -1
1 1 221 245 1

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,197 @@
#########################################################################
# General Control Parameter #
#########################################################################
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
int maxSimuStep = 100000;
int intervalStepFlow = 5000;
int intervalStepPlot = 5000;
int intervalStepForce = 100;
int intervalStepRes = 100;
// ifLowSpeedPrecon: Precondition process to accelerate convergence for low speed flow.
// 0 -- no precondition process. (default, mach > 0.3)
// 1 -- carry out precondition process. (mach number <= 0.3)
int ifLowSpeedPrecon = 0;
#########################################################################
# Inflow Parameter #
#########################################################################
// refMachNumber: Mach number.
// attackd: Angle of attack.
// angleSlide: Angle of sideslip.
// inflowParaType: The type of inflow parameters.
// 0 -- the nondimensional conditions.
// 1 -- the flight conditions.
// 2 -- the experiment conditions.
// 3 -- the subsonic boundary conditions.
// 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.
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
// height: Fly height, unit of km.
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
// 1 dm = 0.1 m.
// 1 cm = 0.01 m.
// 1 mm = 0.001m.
// 1 inch = 0.0254m.
// 1 foot = 12 inches = 0.3048m.
// 1 yard = 3 feet = 0.9144m.
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
double refMachNumber = 0.2;
double attackd = 0.00;
double angleSlide = 0.00;
int inflowParaType = 0;
double refReNumber = 5.0e6;
double refDimensionalTemperature = 288.15;
//int inflowParaType = 1;
//double height = 0.001;
double gridScaleFactor = 0.001;
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
double forceReferenceLength = 1.0; // unit of meter.
double forceReferenceArea = 2.0; // unit of meter^2.
double TorqueRefX = 0.0; // unit of meter.
double TorqueRefY = 0.0; // unit of meter.
double TorqueRefZ = 0.0; // unit of meter.
#########################################################################
# Physical models #
#########################################################################
// viscousType : Viscous model.
// 0 -- Euler.
// 1 -- Lamilar.
// 3 -- 1eq turbulent.
// 4 -- 2eq turbulent.
// viscousName: Laminar or tubulent model.
// -- "1eq-sa", when viscousType = 3.
// -- "2eq-kw-menter-sst", when viscousType = 4.
// DESType: Type of DES.
// 0 -- RANS.(default)
// 1 -- DES.
// 2 -- DDES.
// 3 -- IDDES.
//int viscousType = 0;
//string viscousName = "Euler";
//int viscousType = 1;
//string viscousName = "laminar";
//int viscousType = 3;
//string viscousName = "1eq-sa";
int viscousType = 4;
string viscousName = "2eq-kw-menter-sst";
int DESType = 0;
int roeEntropyFixMethod = 2;
double roeEntropyScale = 1.0;
#########################################################################
# Spatial Discretisation #
#########################################################################
#*******************************************************************
# Struct Solver *
#*******************************************************************
// str_limiter_name: Limiter of struct grid.
// -- "3rdsmooth", "smooth".
// -- "nolim", no limiter.
string str_limiter_name = "nolim";
double MUSCLCoefXk =0.333333;
#*******************************************************************
# UnStruct Solver *
#*******************************************************************
// uns_limiter_name: Limiter of Unstruct grid.
// -- "vencat".
// -- "1st", meaning accuracy of first-order.
// -- "nolim", no limiter.
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
// The smaller the value, the more robust it is.
string uns_limiter_name = "vencat";
double venkatCoeff = 50.0;
#########################################################################
# Temporal Discretisation #
#########################################################################
// iunsteady: Steady or unsteady.
// 0 -- steady.
// 1 -- unsteay.
// CFLEnd: The CFL number, [0.1, 100].
// The bigger the value, the convergence faster but lower robustness.
// nLUSGSSweeps: Number of Sub-iteration of LU-SGS.
// 1 -- is recommended for structured solver.
// 1-3 -- is recommended for unstructured solver.
int iunsteady = 0;
double CFLEnd = 500.0;
int tscheme = 8;
int nLUSGSSweeps = 1;
#########################################################################
# Multi-Grid parameters #
#########################################################################
// nMGLevel: The number of Multi-Grid level.
// = 1 -- single-level.
// > 1 -- multi-level.
// flowInitStep: Flow initialization step, 0 - 500 is suggested.
// Multi-Grid : Number of steps computing on coarse grid, during flow initialization.
// Single-Grid: Number of steps computing using first-order with vanleer, during flow initialization.
int nMGLevel = 1;
int flowInitStep = 100;
#########################################################################
# File In or Out #
#########################################################################
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// IMPORTANT WARNING: The file index should be ignored,
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
// Please use 'rae2822_hybrid2d__4.fts' here!
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
string gridfile = "./grid/Mesh4_137_97.fts";
int plotFieldType = 0;
// ----------------- Advanced Parameters, DO NOT care it ----------------
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables: Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
// -- viscosityLaminar(7), viscosityTurbulent(8),
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21).
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
int nVisualVariables = 8;
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
// limitVariables: Limit model (It is useful only if limitVector is 0).
// 0 -- limit only for pressure and denstiny, then get the min value.
// 1 -- limit for every variables, then get the min value.
// limitVector:
// 0 -- Each variable use the same limiter coefficient.
// 1 -- Each variable use the respective limiter coefficients.
// reconmeth:
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
int reconmeth = 1;
int limitVariables = 0;
int limitVector = 0;

View File

@ -0,0 +1,31 @@
#########################################################################
# Grid data type #
#########################################################################
// gridtype: Grid type for generation, conversion, reconstruction, merging.
// 0 -- Unstructured grid.
// 1 -- Structured grid.
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
// from_gtype: Type of grid data type in grid conversion process.
// -1 -- MULTI_TYPE.
// 1 -- PHengLEI, *.fts.
// 2 -- CGNS, *.cgns.
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
// 5 -- Fluent, *.cas/*.msh.
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
int gridtype = 1;
int axisup = 1;
int from_gtype = 3;
#########################################################################
# File path #
#########################################################################
// from_gfile: path of original data file for unstructure grid convert from.
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
string from_gfile = "./grid/Mesh4_137_97.grd";
string out_gfile = "./grid/Mesh4_137_97.fts";

View File

@ -0,0 +1,52 @@
string title = "PHengLEI Main Parameter Control File";
// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE.
string defaultParaFile = "./bin/cfd_para.hypara";
// ndim: Dimensional of the grid, 2 or 3.
// nparafile: the number of parameter files.
// nsimutask: simulation task type.
// 0 -- CFD Solver of NS or Turbulation.
// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc.
// Grid conversion: from other format to PHengLEI format (.fts).
// Grid reconstruction: such as grid adaptation.
// Grid merging: merge two blocks into one block.
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
int ndim = 2;
int nparafile = 1;
int nsimutask = 0;
string parafilename = "./bin/cfd_para_subsonic.hypara";
//string parafilename = "./bin/cfd_para_transonic.hypara";
//string parafilename = "./bin/cfd_para_supersonic.hypara";
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
//int nsimutask = 2;
//string parafilename = "./bin/cfd_para.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";
//int nsimutask = 99;
//string parafilename = "./bin/post_processing.hypara";
// ---------------- Advanced Parameters, DO NOT care it ----------------
int numberOfGridProcessor = 0;
// ATP read
//@string parafilename1 = ""
//@string parafilename2 = "";

View File

@ -0,0 +1,10 @@
1
1
137 97
A
5
1 25 1 1 3
25 137 1 1 2
137 137 1 97 6
1 137 97 97 4
1 1 1 97 4

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,204 @@
#########################################################################
# General Control Parameter #
#########################################################################
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
int maxSimuStep = 10000;
int intervalStepFlow = 500;
int intervalStepPlot = 500;
int intervalStepForce = 50;
int intervalStepRes = 50;
#########################################################################
# Inflow Parameter #
#########################################################################
// refMachNumber: Mach number.
// attackd: Angle of attack.
// angleSlide: Angle of sideslip.
// inflowParaType: The type of inflow parameters.
// 0 -- the nondimensional conditions.
// 1 -- the flight conditions.
// 2 -- the experiment conditions.
// 3 -- the subsonic boundary conditions.
// 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.
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
// height: Fly height, unit of km.
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
// 1 dm = 0.1 m.
// 1 cm = 0.01 m.
// 1 mm = 0.001m.
// 1 inch = 0.0254m.
// 1 foot = 12 inches = 0.3048m.
// 1 yard = 3 feet = 0.9144m.
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
double refMachNumber = 0.73;
double attackd = 2.31;
double angleSlide = 0.00;
int inflowParaType = 0;
double refReNumber = 6.5e6;
double refDimensionalTemperature = 288.15;
//int inflowParaType = 1;
//double height = 0.001;
//int inflowParaType = 2;
//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2).
//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
double gridScaleFactor = 1.0;
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
double forceReferenceLength = 1.0; // unit of meter.
double forceReferenceArea = 1.0; // unit of meter^2.
double TorqueRefX = 0.0; // unit of meter.
double TorqueRefY = 0.0; // unit of meter.
double TorqueRefZ = 0.0; // unit of meter.
#########################################################################
# Physical models #
#########################################################################
// viscousType : Viscous model.
// 0 -- Euler.
// 1 -- Lamilar.
// 3 -- 1eq turbulent.
// 4 -- 2eq turbulent.
// viscousName: Laminar or tubulent model.
// -- "1eq-sa", when viscousType = 3.
// -- "2eq-kw-menter-sst", when viscousType = 4.
// DESType: Type of DES.
// 0 -- RANS.(default)
// 1 -- DES.
// 2 -- DDES.
// 3 -- IDDES.
//int viscousType = 0;
//string viscousName = "Euler";
//int viscousType = 1;
//string viscousName = "laminar";
int viscousType = 3;
string viscousName = "1eq-sa";
//int viscousType = 4;
//string viscousName = "2eq-kw-menter-sst";
int DESType = 0;
int roeEntropyFixMethod = 2;
double roeEntropyScale = 1.0;
#########################################################################
# Spatial Discretisation #
#########################################################################
#*******************************************************************
# Struct Solver *
#*******************************************************************
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
// Using this when solve structered grid or hybrid.
// -- "roe", "vanleer", "ausm+up", "ausmpw".
// str_limiter_name: Limiter of struct grid.
// -- "3rdsmooth", "smooth".
// -- "nolim", no limiter.
string inviscidSchemeName = "roe";
string str_limiter_name = "smooth";
double MUSCLCoefXk = 0.333333;
#*******************************************************************
# UnStruct Solver *
#*******************************************************************
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
// Using this when solve Unstructered grid or hybrid.
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpwplus".
// uns_limiter_name: Limiter of Unstruct grid.
// -- "vencat", "barth".
// -- "1st", meaning accuracy of first-order.
// -- "nolim", no limiter.
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
// The smaller the value, the more robust it is.
string uns_scheme_name = "roe";
string uns_limiter_name = "vencat";
double venkatCoeff = 5.0;
#########################################################################
# Temporal Discretisation #
#########################################################################
// iunsteady: Steady or unsteady.
// 0 -- steady.
// 1 -- unsteay.
// CFLEnd: The CFL number, [0.1, 100].
// The bigger the value, the convergence faster but lower robustness.
// nLUSGSSweeps: Number of Sub-iteration of LU-SGS.
// 1 -- is recommended for structured solver.
// 1-3 -- is recommended for unstructured solver.
int iunsteady = 0;
double CFLEnd = 10.0;
int tscheme = 8;
int nLUSGSSweeps = 1;
#########################################################################
# Multi-Grid parameters #
#########################################################################
// nMGLevel: The number of Multi-Grid level.
// = 1 -- single-level.
// > 1 -- multi-level.
// flowInitStep: Flow initialization step, 0 - 500 is suggested.
// Multi-Grid : Number of steps computing on coarse grid, during flow initialization.
// Single-Grid: Number of steps computing using first-order with vanleer, during flow initialization.
int nMGLevel = 1;
int flowInitStep = 100;
#########################################################################
# File In or Out #
#########################################################################
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// IMPORTANT WARNING: The file index should be ignored,
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
// Please use 'rae2822_hybrid2d__4.fts' here!
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
string gridfile = "./grid/rae2822_vis2d__4.fts";
int plotFieldType = 0;
// ----------------- Advanced Parameters, DO NOT care it ----------------
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables: Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
// -- viscosityLaminar(7), viscosityTurbulent(8),
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21), iblank(81).
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
int nVisualVariables = 8;
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
// limitVariables: Limit model (It is useful only if limitVector is 0).
// 0 -- limit only for pressure and denstiny, then get the min value.
// 1 -- limit for every variables, then get the min value.
// limitVector:
// 0 -- Each variable use the same limiter coefficient.
// 1 -- Each variable use the respective limiter coefficients.
// reconmeth:
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
int reconmeth = 1;
int limitVariables = 0;
int limitVector = 0;

View File

@ -0,0 +1,30 @@
#########################################################################
# Grid data type #
#########################################################################
// gridtype: Grid type for generation, conversion, reconstruction, merging.
// 0 -- Unstructured grid.
// 1 -- Structured grid.
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
// from_gtype: Type of grid data type in grid conversion process.
// -1 -- MULTI_TYPE.
// 1 -- PHengLEI, *.fts.
// 2 -- CGNS, *.cgns.
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
// 5 -- Fluent, *.cas/*.msh.
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
int gridtype = 1;
int axisup = 1;
int from_gtype = 3;
#########################################################################
# File path #
#########################################################################
// from_gfile: path of original data file for unstructure grid convert from.
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
string from_gfile = "./grid/rae2822_vis2d.grd";
string out_gfile = "./grid/rae2822_vis2d.fts";

View File

@ -0,0 +1,52 @@
string title = "PHengLEI Main Parameter Control File";
// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE.
string defaultParaFile = "./bin/cfd_para.hypara";
// ndim: Dimensional of the grid, 2 or 3.
// nparafile: the number of parameter files.
// nsimutask: simulation task type.
// 0 -- CFD Solver of NS or Turbulation.
// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc.
// Grid conversion: from other format to PHengLEI format (.fts).
// Grid reconstruction: such as grid adaptation.
// Grid merging: merge two blocks into one block.
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
int ndim = 2;
int nparafile = 1;
int nsimutask = 0;
//string parafilename = "./bin/cfd_para_subsonic.hypara";
string parafilename = "./bin/cfd_para_transonic.hypara";
//string parafilename = "./bin/cfd_para_supersonic.hypara";
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
//int nsimutask = 2;
//string parafilename = "./bin/cfd_para.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";
//int nsimutask = 99;
//string parafilename = "./bin/post_processing.hypara";
// ---------------- Advanced Parameters, DO NOT care it ----------------
int numberOfGridProcessor = 0;
// ATP read
//@string parafilename1 = ""
//@string parafilename2 = "";

View File

@ -0,0 +1,21 @@
// pgridtype: The grid type.
// 0 -- unstruct grid.
// 1 -- struct grid.
// maxproc: The number of partition zones that want to be divided into,
// which is equal to the number of CPU processors you want.
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
// 30~70 thousands unstructured cells per CPU-Core is suggested.
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
int pgridtype = 1;
int maxproc = 4;
string original_grid_file = "./grid/rae2822_vis2d.fts";
string partition_grid_file = "./grid/rae2822_vis2d__4.fts";
// numberOfMultigrid: Number of multi-grid levels, ONLY used for structured grid.
// 1 -- single level.
// 2 -- 2 level.
// N -- N level,..., et al.
int numberOfMultigrid = 1;

View File

@ -0,0 +1,13 @@
1
1
369 65
A
6
-33 -1 1 1 -1
-337 -369 1 1 1
33 337 1 1 2
-337 -369 1 1 -1
-33 -1 1 1 1
369 369 1 65 4
1 369 65 65 4
1 1 1 65 4

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,196 @@
#########################################################################
# General Control Parameter #
#########################################################################
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
int maxSimuStep = 60000;
int intervalStepFlow = 500;
int intervalStepPlot = 500;
int intervalStepForce = 50;
int intervalStepRes = 50;
// ifLowSpeedPrecon: Precondition process to accelerate convergence for low speed flow.
// 0 -- no precondition process. (default, mach > 0.3)
// 1 -- carry out precondition process. (mach number <= 0.3)
int ifLowSpeedPrecon = 0;
#########################################################################
# Inflow Parameter #
#########################################################################
// refMachNumber: Mach number.
// attackd: Angle of attack.
// angleSlide: Angle of sideslip.
// inflowParaType: The type of inflow parameters.
// 0 -- the nondimensional conditions.
// 1 -- the flight conditions.
// 2 -- the experiment conditions.
// 3 -- the subsonic boundary conditions.
// 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.
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
// height: Fly height, unit of km.
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
// 1 dm = 0.1 m.
// 1 cm = 0.01 m.
// 1 mm = 0.001m.
// 1 inch = 0.0254m.
// 1 foot = 12 inches = 0.3048m.
// 1 yard = 3 feet = 0.9144m.
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
double refMachNumber = 0.2;
double attackd = 19.0;
double angleSlide = 0.00;
int inflowParaType = 0;
double refReNumber = 9.0e6;
double refDimensionalTemperature = 288.0;
//int inflowParaType = 1;
//double height = 0.001;
double gridScaleFactor = 1.0;
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
double forceReferenceLength = 1.0; // unit of meter.
double forceReferenceArea = 1.0; // unit of meter^2.
double TorqueRefX = 0.0; // unit of meter.
double TorqueRefY = 0.0; // unit of meter.
double TorqueRefZ = 0.0; // unit of meter.
#########################################################################
# Physical models #
#########################################################################
// viscousType : Viscous model.
// 0 -- Euler.
// 1 -- Lamilar.
// 3 -- 1eq turbulent.
// 4 -- 2eq turbulent.
// viscousName: Laminar or tubulent model.
// -- "1eq-sa", when viscousType = 3.
// -- "2eq-kw-menter-sst", when viscousType = 4.
// DESType: Type of DES.
// 0 -- RANS.(default)
// 1 -- DES.
// 2 -- DDES.
// 3 -- IDDES.
//int viscousType = 0;
//string viscousName = "Euler";
//int viscousType = 1;
//string viscousName = "laminar";
int viscousType = 3;
string viscousName = "1eq-sa";
//int viscousType = 4;
//string viscousName = "2eq-kw-menter-sst";
int DESType = 0;
int roeEntropyFixMethod = 6;
double roeEntropyScale = 1.0;
#########################################################################
# Spatial Discretisation #
#########################################################################
#*******************************************************************
# Struct Solver *
#*******************************************************************
// str_limiter_name: Limiter of struct grid.
// -- "3rdsmooth", "smooth".
// -- "nolim", no limiter.
string str_limiter_name = "smooth";
double MUSCLCoefXk = 0.333333;
#*******************************************************************
# UnStruct Solver *
#*******************************************************************
// uns_limiter_name: Limiter of Unstruct grid.
// -- "vencat".
// -- "1st", meaning accuracy of first-order.
// -- "nolim", no limiter.
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
// The smaller the value, the more robust it is.
string uns_limiter_name = "vencat";
double venkatCoeff = 50.0;
#########################################################################
# Temporal Discretisation #
#########################################################################
// iunsteady: Steady or unsteady.
// 0 -- steady.
// 1 -- unsteay.
// CFLEnd: The CFL number, [0.1, 100].
// The bigger the value, the convergence faster but lower robustness.
// nLUSGSSweeps: Number of Sub-iteration of LU-SGS.
// 1 -- is recommended for structured solver.
// 1-3 -- is recommended for unstructured solver.
int iunsteady = 0;
double CFLEnd = 10.0;
int nLUSGSSweeps = 1;
#########################################################################
# Multi-Grid parameters #
#########################################################################
// nMGLevel: The number of Multi-Grid level.
// = 1 -- single-level.
// > 1 -- multi-level.
// flowInitStep: Flow initialization step, 0 - 500 is suggested.
// Multi-Grid : Number of steps computing on coarse grid, during flow initialization.
// Single-Grid: Number of steps computing using first-order with vanleer, during flow initialization.
int nMGLevel = 1;
int flowInitStep = 100;
#########################################################################
# File In or Out #
#########################################################################
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// IMPORTANT WARNING: The file index should be ignored,
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
// Please use 'rae2822_hybrid2d__4.fts' here!
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
string gridfile = "./grid/30p30n_str__4.fts";
int plotFieldType = 0;
// ----------------- Advanced Parameters, DO NOT care it ----------------
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables: Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
// -- viscosityLaminar(7), viscosityTurbulent(8),
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21).
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
int nVisualVariables = 8;
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
// limitVariables: Limit model (It is useful only if limitVector is 0).
// 0 -- limit only for pressure and denstiny, then get the min value.
// 1 -- limit for every variables, then get the min value.
// limitVector:
// 0 -- Each variable use the same limiter coefficient.
// 1 -- Each variable use the respective limiter coefficients.
// reconmeth:
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
int reconmeth = 1;
int limitVariables = 0;
int limitVector = 0;

View File

@ -0,0 +1,31 @@
#########################################################################
# Grid data type #
#########################################################################
// gridtype: Grid type for generation, conversion, reconstruction, merging.
// 0 -- Unstructured grid.
// 1 -- Structured grid.
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
// from_gtype: Type of grid data type in grid conversion process.
// -1 -- MULTI_TYPE.
// 1 -- PHengLEI, *.fts.
// 2 -- CGNS, *.cgns.
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
// 5 -- Fluent, *.cas/*.msh.
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
int gridtype = 1;
int axisup = 1;
int from_gtype = 3;
#########################################################################
# File path #
#########################################################################
// from_gfile: path of original data file for unstructure grid convert from.
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
string from_gfile = "./grid/30p30n_str.grd";
string out_gfile = "./grid/30p30n_str.fts";

View File

@ -0,0 +1,52 @@
string title = "PHengLEI Main Parameter Control File";
// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE.
string defaultParaFile = "./bin/cfd_para.hypara";
// ndim: Dimensional of the grid, 2 or 3.
// nparafile: the number of parameter files.
// nsimutask: simulation task type.
// 0 -- CFD Solver of NS or Turbulation.
// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc.
// Grid conversion: from other format to PHengLEI format (.fts).
// Grid reconstruction: such as grid adaptation.
// Grid merging: merge two blocks into one block.
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
int ndim = 2;
int nparafile = 1;
int nsimutask = 0;
string parafilename = "./bin/cfd_para_subsonic.hypara";
//string parafilename = "./bin/cfd_para_transonic.hypara";
//string parafilename = "./bin/cfd_para_supersonic.hypara";
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
//int nsimutask = 2;
//string parafilename = "./bin/cfd_para.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";
//int nsimutask = 99;
//string parafilename = "./bin/post_processing.hypara";
// ---------------- Advanced Parameters, DO NOT care it ----------------
int numberOfGridProcessor = 0;
// ATP read
//@string parafilename1 = ""
//@string parafilename2 = "";

View File

@ -0,0 +1,24 @@
// pgridtype: The grid type.
// 0 -- unstruct grid.
// 1 -- struct grid.
// maxproc: The number of partition zones that want to be divided into,
// which is equal to the number of CPU processors you want.
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
// 30~70 thousands unstructured cells per CPU-Core is suggested.
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
// numberOfMultifile: The number of partition grid files that want to be dumped out.
int pgridtype = 1;
int maxproc = 4;
string original_grid_file = "./grid/30p30n_str.fts";
string partition_grid_file = "./grid/30p30n_str__4.fts";
int numberOfMultifile = 1;
// numberOfMultigrid: Number of multi-grid levels, ONLY used for structured grid.
// 1 -- single level.
// 2 -- 2 level.
// N -- N level,..., et al.
int numberOfMultigrid = 1;

View File

@ -0,0 +1,161 @@
1
8
81 617
A
21
1 41 1 1 4
1 1 65 1 -1
353 353 -65 -1 7
1 1 65 129 -1
281 281 -1 -65 6
1 1 189 129 -1
121 121 -61 -1 8
1 1 221 189 -1
121 121 -93 -61 8
1 1 221 245 -1
121 121 -93 -117 8
1 1 309 245 -1
41 41 65 1 2
1 1 309 341 -1
41 41 -65 -97 2
1 1 -481 -553 -1
41 41 -65 -137 5
1 1 -481 -449 -1
41 41 -65 -33 5
1 1 -373 -449 -1
121 121 -33 -109 4
1 1 -341 -373 -1
121 121 -1 -33 4
41 1 617 617 4
1 1 -553 -617 -1
1 1 -65 -1 7
81 81 553 617 4
81 41 617 617 4
81 81 341 553 4
81 81 245 341 4
81 81 65 245 4
81 81 65 1 4
41 81 1 1 4
41 97
B
6
41 41 65 1 -1
1 1 309 245 1
-1 -41 1 1 -1
81 121 117 117 8
1 1 65 1 2
41 41 -65 -97 -1
1 1 309 341 1
1 1 97 65 2
1 41 97 97 -1
81 121 1 1 4
81 49
C
6
81 49 49 49 -1
81 49 1 1 4
81 81 1 49 2
81 49 1 1 -1
81 49 117 117 8
-1 -49 49 49 -1
1 49 1 1 4
1 1 49 1 2
-49 -1 1 1 -1
49 1 117 117 8
121 141
D
14
121 121 -1 -33 -1
1 1 -341 -373 1
81 121 1 1 -1
1 41 97 97 2
81 49 1 1 -1
81 49 49 49 3
1 1 33 1 2
1 49 1 1 -1
-1 -49 49 49 3
121 121 -33 -109 -1
1 1 -373 -449 1
1 1 77 33 2
1 1 93 77 2
1 1 109 93 2
1 1 125 109 2
1 1 -125 -141 -1
1 1 -17 -1 8
49 1 141 141 -1
113 161 65 65 6
-121 -49 141 141 -1
41 113 65 65 6
121 121 141 109 -1
41 41 -1 -33 5
41 137
E
8
41 41 -1 -33 -1
121 121 141 109 4
1 1 33 1 2
1 41 1 1 -1
1 41 65 65 6
41 41 -65 -33 -1
1 1 -481 -449 1
1 1 65 33 2
41 41 -65 -137 -1
1 1 -481 -553 1
1 1 137 65 2
41 1 137 137 -1
1 41 65 65 7
281 65
F
8
1 1 65 1 2
1 161 1 1 -1
73 233 65 65 7
113 161 65 65 -1
49 1 141 141 4
41 113 65 65 -1
-121 -49 141 141 4
1 41 65 65 -1
1 41 1 1 5
161 281 65 65 -1
1 121 1 1 8
281 281 -1 -65 -1
1 1 65 129 1
161 281 1 1 -1
233 353 65 65 7
353 65
G
7
1 1 -65 -1 -1
1 1 -553 -617 1
1 41 65 65 -1
41 1 137 137 5
73 41 65 65 2
73 233 65 65 -1
1 161 1 1 6
233 353 65 65 -1
161 281 1 1 6
353 353 -65 -1 -1
1 1 65 1 1
1 353 1 1 4
121 117
H
11
1 1 61 17 2
1 1 -17 -1 -1
1 1 -125 -141 4
1 121 1 1 -1
161 281 65 65 6
121 121 -61 -1 -1
1 1 189 129 1
1 1 93 61 2
121 121 -93 -61 -1
1 1 221 189 1
1 1 117 93 2
81 49 117 117 -1
81 49 1 1 3
49 1 117 117 -1
-49 -1 1 1 3
81 121 117 117 -1
-1 -41 1 1 2
121 121 -93 -117 -1
1 1 221 245 1

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,195 @@
#########################################################################
# General Control Parameter #
#########################################################################
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
int maxSimuStep = 5000;
int intervalStepFlow = 500;
int intervalStepPlot = 500;
int intervalStepForce = 50;
int intervalStepRes = 10;
#########################################################################
# Inflow Parameter #
#########################################################################
// refMachNumber: Mach number.
// attackd: Angle of attack.
// angleSlide: Angle of sideslip.
// wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition.
// inflowParaType: The type of inflow parameters.
// 0 -- the nondimensional conditions.
// 1 -- the flight conditions.
// 2 -- the experiment conditions.
// 3 -- the subsonic boundary conditions.
// 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.
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
// height: Fly height, unit of km.
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
// 1 dm = 0.1 m.
// 1 cm = 0.01 m.
// 1 mm = 0.001m.
// 1 inch = 0.0254m.
// 1 foot = 12 inches = 0.3048m.
// 1 yard = 3 feet = 0.9144m.
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
double refMachNumber = 3.0;
double attackd = 0.00;
double angleSlide = 0.00;
double wallTemperature = -1.0;
int inflowParaType = 0;
double refReNumber = 1.0e5;
double refDimensionalTemperature = 293;
//int inflowParaType = 1;
//double height = 0.001;
//int inflowParaType = 2;
//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2).
//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
double gridScaleFactor = 1.0;
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
double forceReferenceLength = 1.0; // unit of meter.
double forceReferenceArea = 1.0; // unit of meter^2.
double TorqueRefX = 0.0; // unit of meter.
double TorqueRefY = 0.0; // unit of meter.
double TorqueRefZ = 0.0; // unit of meter.
#########################################################################
# Physical models #
#########################################################################
// viscousType : Viscous model.
// 0 -- Euler.
// 1 -- Lamilar.
// 3 -- 1eq turbulent.
// 4 -- 2eq turbulent.
// viscousName: Laminar or tubulent model.
// -- "1eq-sa", when viscousType = 3.
// -- "2eq-kw-menter-sst", when viscousType = 4.
// DESType: Type of DES.
// 0 -- RANS.(default)
// 1 -- DES.
// 2 -- DDES.
// 3 -- IDDES.
int viscousType = 0;
string viscousName = "Euler";
//int viscousType = 1;
//string viscousName = "laminar";
//int viscousType = 3;
//string viscousName = "1eq-sa";
//int viscousType = 4;
//string viscousName = "2eq-kw-menter-sst";
int DESType = 0;
int roeEntropyFixMethod = 6;
double roeEntropyScale = 1.0;
#########################################################################
# Spatial Discretisation #
#########################################################################
#*******************************************************************
# Struct Solver *
#*******************************************************************
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
// Using this when solve structered grid or hybrid.
// -- "vanleer", "steger", "ausmpw", "ausmpw+".
// str_limiter_name: Limiter of struct grid.
// -- "minmod", "3rd_minmod_smooth".
string inviscidSchemeName = "roe";
string str_limiter_name = "minvan";
#*******************************************************************
# UnStruct Solver *
#*******************************************************************
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
// Using this when solve Unstructered grid or hybrid.
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpwplus".
// uns_limiter_name: Limiter of Unstruct grid.
// -- "vencat", "barth".
// -- "1st", meaning accuracy of first-order.
// -- "nolim", no limiter.
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
// The smaller the value, the more robust it is.
string uns_scheme_name = "vanleer";
string uns_limiter_name = "vencat";
double venkatCoeff = 0.5;
#########################################################################
# Temporal Discretisation #
#########################################################################
// iunsteady: Steady or unsteady.
// 0 -- steady.
// 1 -- unsteay.
// CFLEnd: The CFL number, [0.1, 100].
// The bigger the value, the convergence faster but lower robustness.
// ktmax: The lower the value, the more robustness, 1.0e5 - 1.0e10.
int iunsteady = 0;
double CFLStart = 0.1;
double CFLEnd = 20.0;
int CFLVaryStep = 100;
double ktmax = 1.0e10;
double LUSGSTolerance = 0.1;
#########################################################################
# File In or Out #
#########################################################################
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// IMPORTANT WARNING: The file index should be ignored,
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
// Please use 'rae2822_hybrid2d__4.fts' here!
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
string gridfile = "./grid/cylinder.fts";
int plotFieldType = 0;
// ----------------- Advanced Parameters, DO NOT care it ----------------
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables: Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
// -- viscosityLaminar(7), viscosityTurbulent(8),
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21).
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
int nVisualVariables = 8;
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
// limitVariables: Limit model (It is useful only if limitVector is 0).
// 0 -- limit only for pressure and denstiny, then get the min value.
// 1 -- limit for every variables, then get the min value.
// limitVector:
// 0 -- Each variable use the same limiter coefficient.
// 1 -- Each variable use the respective limiter coefficients.
// reconmeth:
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
int reconmeth = 0;
int limitVariables = 0;
int limitVector = 1;

View File

@ -0,0 +1,31 @@
#########################################################################
# Grid data type #
#########################################################################
// gridtype: Grid type for generation, conversion, reconstruction, merging.
// 0 -- Unstructured grid.
// 1 -- Structured grid.
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
// from_gtype: Type of grid data type in grid conversion process.
// -1 -- MULTI_TYPE.
// 1 -- PHengLEI, *.fts.
// 2 -- CGNS, *.cgns.
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
// 5 -- Fluent, *.cas/*.msh.
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
int gridtype = 1;
int axisup = 1;
int from_gtype = 3;
#########################################################################
# File path #
#########################################################################
// from_gfile: path of original data file for unstructure grid convert from.
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
string from_gfile = "./grid/cylinder.grd";
string out_gfile = "./grid/cylinder.fts";

View File

@ -0,0 +1,52 @@
string title = "PHengLEI Main Parameter Control File";
// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE.
string defaultParaFile = "./bin/cfd_para.hypara";
// ndim: Dimensional of the grid, 2 or 3.
// nparafile: the number of parameter files.
// nsimutask: simulation task type.
// 0 -- CFD Solver of NS or Turbulation.
// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc.
// Grid conversion: from other format to PHengLEI format (.fts).
// Grid reconstruction: such as grid adaptation.
// Grid merging: merge two blocks into one block.
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
int ndim = 2;
int nparafile = 1;
int nsimutask = 0;
//string parafilename = "./bin/cfd_para_subsonic.hypara";
//string parafilename = "./bin/cfd_para_transonic.hypara";
string parafilename = "./bin/cfd_para_supersonic.hypara";
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
//int nsimutask = 2;
//string parafilename = "./bin/cfd_para.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";
//int nsimutask = 99;
//string parafilename = "./bin/post_processing.hypara";
// ---------------- Advanced Parameters, DO NOT care it ----------------
int numberOfGridProcessor = 0;
// ATP read
//@string parafilename1 = ""
//@string parafilename2 = "";

View File

@ -0,0 +1,9 @@
1
1
121 61
A
4
1 121 61 61 5
121 121 61 1 6
1 121 1 1 2
1 1 61 1 6

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,203 @@
#########################################################################
# General Control Parameter #
#########################################################################
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
int maxSimuStep = 10000;
int intervalStepFlow = 500;
int intervalStepPlot = 500;
int intervalStepForce = 50;
int intervalStepRes = 50;
#########################################################################
# Inflow Parameter #
#########################################################################
// refMachNumber: Mach number.
// attackd: Angle of attack.
// angleSlide: Angle of sideslip.
// inflowParaType: The type of inflow parameters.
// 0 -- the nondimensional conditions.
// 1 -- the flight conditions.
// 2 -- the experiment conditions.
// 3 -- the subsonic boundary conditions.
// 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.
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
// height: Fly height, unit of km.
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
// 1 dm = 0.1 m.
// 1 cm = 0.01 m.
// 1 mm = 0.001m.
// 1 inch = 0.0254m.
// 1 foot = 12 inches = 0.3048m.
// 1 yard = 3 feet = 0.9144m.
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
double refMachNumber = 0.73;
double attackd = 2.31;
double angleSlide = 0.00;
int inflowParaType = 0;
double refReNumber = 6.5e6;
double refDimensionalTemperature = 288.15;
//int inflowParaType = 1;
//double height = 0.001;
//int inflowParaType = 2;
//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2).
//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
double gridScaleFactor = 1.0;
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
double forceReferenceLength = 1.0; // unit of meter.
double forceReferenceArea = 1.0; // unit of meter^2.
double TorqueRefX = 0.0; // unit of meter.
double TorqueRefY = 0.0; // unit of meter.
double TorqueRefZ = 0.0; // unit of meter.
#########################################################################
# Physical models #
#########################################################################
// viscousType : Viscous model.
// 0 -- Euler.
// 1 -- Lamilar.
// 3 -- 1eq turbulent.
// 4 -- 2eq turbulent.
// viscousName: Laminar or tubulent model.
// -- "1eq-sa", when viscousType = 3.
// -- "2eq-kw-menter-sst", when viscousType = 4.
// DESType: Type of DES.
// 0 -- RANS.(default)
// 1 -- DES.
// 2 -- DDES.
// 3 -- IDDES.
//int viscousType = 0;
//string viscousName = "Euler";
//int viscousType = 1;
//string viscousName = "laminar";
int viscousType = 3;
string viscousName = "1eq-sa";
//int viscousType = 4;
//string viscousName = "2eq-kw-menter-sst";
int DESType = 0;
int roeEntropyFixMethod = 6;
double roeEntropyScale = 1.0;
#########################################################################
# Spatial Discretisation #
#########################################################################
#*******************************************************************
# Struct Solver *
#*******************************************************************
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
// Using this when solve structered grid or hybrid.
// -- "roe", "vanleer", "ausm+up", "ausmpw".
// str_limiter_name: Limiter of struct grid.
// -- "3rdsmooth", "smooth".
// -- "nolim", no limiter.
string inviscidSchemeName = "roe";
string str_limiter_name = "smooth";
double MUSCLCoefXk = 0.333333;
#*******************************************************************
# UnStruct Solver *
#*******************************************************************
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
// Using this when solve Unstructered grid or hybrid.
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpwplus".
// uns_limiter_name: Limiter of Unstruct grid.
// -- "vencat", "barth".
// -- "1st", meaning accuracy of first-order.
// -- "nolim", no limiter.
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
// The smaller the value, the more robust it is.
string uns_scheme_name = "roe";
string uns_limiter_name = "vencat";
double venkatCoeff = 5.0;
#########################################################################
# Temporal Discretisation #
#########################################################################
// iunsteady: Steady or unsteady.
// 0 -- steady.
// 1 -- unsteay.
// CFLEnd: The CFL number, [0.1, 100].
// The bigger the value, the convergence faster but lower robustness.
// nLUSGSSweeps: Number of Sub-iteration of LU-SGS.
// 1 -- is recommended for structured solver.
// 1-3 -- is recommended for unstructured solver.
int iunsteady = 0;
double CFLEnd = 10.0;
int nLUSGSSweeps = 1;
#########################################################################
# Multi-Grid parameters #
#########################################################################
// nMGLevel: The number of Multi-Grid level.
// = 1 -- single-level.
// > 1 -- multi-level.
// flowInitStep: Flow initialization step, 0 - 500 is suggested.
// Multi-Grid : Number of steps computing on coarse grid, during flow initialization.
// Single-Grid: Number of steps computing using first-order with vanleer, during flow initialization.
int nMGLevel = 1;
int flowInitStep = 100;
#########################################################################
# File In or Out #
#########################################################################
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// IMPORTANT WARNING: The file index should be ignored,
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
// Please use 'rae2822_hybrid2d__4.fts' here!
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
string gridfile = "./grid/rae2822_vis2d__4.fts";
int plotFieldType = 0;
// ----------------- Advanced Parameters, DO NOT care it ----------------
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables: Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
// -- viscosityLaminar(7), viscosityTurbulent(8),
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21), iblank(81).
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
int nVisualVariables = 8;
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
// limitVariables: Limit model (It is useful only if limitVector is 0).
// 0 -- limit only for pressure and denstiny, then get the min value.
// 1 -- limit for every variables, then get the min value.
// limitVector:
// 0 -- Each variable use the same limiter coefficient.
// 1 -- Each variable use the respective limiter coefficients.
// reconmeth:
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
int reconmeth = 1;
int limitVariables = 0;
int limitVector = 0;

View File

@ -0,0 +1,30 @@
#########################################################################
# Grid data type #
#########################################################################
// gridtype: Grid type for generation, conversion, reconstruction, merging.
// 0 -- Unstructured grid.
// 1 -- Structured grid.
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
// from_gtype: Type of grid data type in grid conversion process.
// -1 -- MULTI_TYPE.
// 1 -- PHengLEI, *.fts.
// 2 -- CGNS, *.cgns.
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
// 5 -- Fluent, *.cas/*.msh.
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
int gridtype = 1;
int axisup = 1;
int from_gtype = 3;
#########################################################################
# File path #
#########################################################################
// from_gfile: path of original data file for unstructure grid convert from.
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
string from_gfile = "./grid/rae2822_vis2d.grd";
string out_gfile = "./grid/rae2822_vis2d.fts";

View File

@ -0,0 +1,52 @@
string title = "PHengLEI Main Parameter Control File";
// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE.
string defaultParaFile = "./bin/cfd_para.hypara";
// ndim: Dimensional of the grid, 2 or 3.
// nparafile: the number of parameter files.
// nsimutask: simulation task type.
// 0 -- CFD Solver of NS or Turbulation.
// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc.
// Grid conversion: from other format to PHengLEI format (.fts).
// Grid reconstruction: such as grid adaptation.
// Grid merging: merge two blocks into one block.
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
int ndim = 2;
int nparafile = 1;
int nsimutask = 0;
//string parafilename = "./bin/cfd_para_subsonic.hypara";
string parafilename = "./bin/cfd_para_transonic.hypara";
//string parafilename = "./bin/cfd_para_supersonic.hypara";
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
//int nsimutask = 2;
//string parafilename = "./bin/cfd_para.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";
//int nsimutask = 99;
//string parafilename = "./bin/post_processing.hypara";
// ---------------- Advanced Parameters, DO NOT care it ----------------
int numberOfGridProcessor = 0;
// ATP read
//@string parafilename1 = ""
//@string parafilename2 = "";

View File

@ -0,0 +1,21 @@
// pgridtype: The grid type.
// 0 -- unstruct grid.
// 1 -- struct grid.
// maxproc: The number of partition zones that want to be divided into,
// which is equal to the number of CPU processors you want.
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
// 30~70 thousands unstructured cells per CPU-Core is suggested.
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
int pgridtype = 1;
int maxproc = 4;
string original_grid_file = "./grid/rae2822_vis2d.fts";
string partition_grid_file = "./grid/rae2822_vis2d__4.fts";
// numberOfMultigrid: Number of multi-grid levels, ONLY used for structured grid.
// 1 -- single level.
// 2 -- 2 level.
// N -- N level,..., et al.
int numberOfMultigrid = 1;

View File

@ -0,0 +1,13 @@
1
1
369 65
A
6
-33 -1 1 1 -1
-337 -369 1 1 1
33 337 1 1 2
-337 -369 1 1 -1
-33 -1 1 1 1
369 369 1 65 4
1 369 65 65 4
1 1 1 65 4

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,31 @@
#########################################################################
# Grid data type #
#########################################################################
// gridtype: Grid type for generation, conversion, reconstruction, merging.
// 0 -- Unstructured grid.
// 1 -- Structured grid.
// axisup: Type of Cartisien coordinates system, used in grid conversion.
// 1 -- Y upward. (default)
// 2 -- Z upward.
// from_gtype: Type of grid data type in grid conversion process.
// -1 -- MULTI_TYPE.
// 1 -- PHengLEI, *.fts.
// 2 -- CGNS, *.cgns.
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
// 5 -- Fluent, *.cas/*.msh.
// 6 -- Ustar, mgrid.in.
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
// 8 -- GMSH, *.msh.
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
int gridtype = 0;
int axisup = 1;
int from_gtype = 2;
#########################################################################
# File path #
#########################################################################
// from_gfile: path of original data file for unstructure grid convert from.
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
string from_gfile = "./grid/M6_unstr.cgns";
string out_gfile = "./grid/M6_unstr.fts";

View File

@ -0,0 +1,31 @@
#########################################################################
# Grid data type #
#########################################################################
// gridtype: Grid type for generation, conversion, reconstruction, merging.
// 0 -- Unstructured grid.
// 1 -- Structured grid.
// gridobj: Task type of grid treatment.
// 0 -- Grid generation of typical case, such as cylinder, flat plate, etc.
// 1 -- Grid conversion, from other grid data to PHenglEI, such as Fluent, CGNS.
// 2 -- Grid refinement.
// 3 -- Grid merging, merge two blocks into one block.
// 4 -- Grid deformation, achieve unstructured grid deformation.
// 5 -- Grid repairing, repair the original grid in order to remove the negative volume cells.
// 6 -- Grid mirroring, mirror a symmetry grid to whole grid.
// 7 -- Grid type change, convert structured grid to unstructured grid.
// anisoRefine: If refine grid by anisoRefine type.
// 0 -- Not. (default)
// 1 -- Yes.
int gridtype = 0;
int gridobj = 2;
int anisoRefine = 0;
#########################################################################
# File path #
#########################################################################
// from_gfile: path of original data file for unstructure grid convert from.
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
string from_gfile = "./grid/M6_unstr__4.fts";
string out_gfile = "./grid/M6_unstr_refined__4.fts";

View File

@ -0,0 +1,52 @@
string title = "PHengLEI Main Parameter Control File";
// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE.
string defaultParaFile = "./bin/cfd_para.hypara";
// ndim: Dimensional of the grid, 2 or 3.
// nparafile: the number of parameter files.
// nsimutask: simulation task type.
// 0 -- CFD Solver of NS or Turbulation.
// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc.
// Grid conversion: from other format to PHengLEI format (.fts).
// Grid reconstruction: such as grid adaptation.
// Grid merging: merge two blocks into one block.
// Grid repairing: repair the original grid in order to remove the negative volume cells.
// 2 -- Wall distance computation for turb-solver.
// 3 -- Grid partition.
int ndim = 3;
int nparafile = 1;
int nsimutask = 0;
//string parafilename = "./bin/cfd_para_subsonic.hypara";
//string parafilename = "./bin/cfd_para_transonic.hypara";
//string parafilename = "./bin/cfd_para_supersonic.hypara";
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
int nsimutask = 1;
string parafilename = "./bin/grid_para.hypara";
//int nsimutask = 2;
//string parafilename = "./bin/cfd_para.hypara";
//int nsimutask = 3;
//string parafilename = "./bin/partition.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";
//int nsimutask = 99;
//string parafilename = "./bin/post_processing.hypara";
// ---------------- Advanced Parameters, DO NOT care it ----------------
int numberOfGridProcessor = 0;
// ATP read
//@string parafilename1 = ""
//@string parafilename2 = "";

View File

@ -0,0 +1,21 @@
// pgridtype: The grid type.
// 0 -- unstruct grid.
// 1 -- struct grid.
// maxproc: The number of partition zones that want to be divided into,
// which is equal to the number of CPU processors you want.
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
// 30~70 thousands unstructured cells per CPU-Core is suggested.
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
int pgridtype = 0;
int maxproc = 4;
string original_grid_file = "./grid/M6_unstr.fts";
string partition_grid_file = "./grid/M6_unstr__4.fts";
// numberOfMultigrid: Number of multi-grid levels, ONLY used for structured grid.
// 1 -- single level.
// 2 -- 2 level.
// N -- N level,..., et al.
int numberOfMultigrid = 1;