调整F03-F04;更新F09-F10、Z01-Z02;新增G05-G07、H01-H05

This commit is contained in:
hechao 2022-06-29 21:09:35 +08:00
parent 8d8748c38a
commit 1740362305
94 changed files with 4968731 additions and 575 deletions

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;
@ -738,7 +790,8 @@ int transitionType = 0;
double turbIntensity = -1.0;
int freeturbIntensitySRModify = 0;
double freeDecayXLocation = 0.0;
int compressibleCorrection = 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;
@ -968,19 +1099,40 @@ double sigmaTemperature = 1.0;
double sigmaMassFraction = 1.0;
double velocitySlipCorrectConstant = 1.0;
double chemicalRelaxCorf = 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,8 +1169,13 @@ double gamaSpeciesB = 1.3;
double molecularWeightSpeciesA = 29.0;
double molecularWeightSpeciesB = 30.0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
//string gasfile = "Gas-Mixture";
//string speciesName = "O2, N2";
//string initMassFraction = "1.0, 0.0";
int nContinueModel = 0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
#########################################################################
// Multi-Grid parameters.
@ -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

@ -171,7 +171,6 @@ int flowInitStep = 100;
// Please use 'rae2822_hybrid2d__4.fts' here!
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
string gridfile = "./grid/background__2.fts";
int plotFieldType = 1;
// ----------------- Advanced Parameters, DO NOT care it ----------------

View File

@ -20,7 +20,6 @@
int gridtype = 0;
int axisup = 1;
int from_gtype = 2;
int dumpOldGrid = 0;
#########################################################################
# File path #
@ -28,17 +27,10 @@ int dumpOldGrid = 0;
// 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/aux-lower.cgns";
//string out_gfile = "./grid/aux-lower.fts";
int numberOfGridFile = 5;
string from_gfile = "./grid/aux-lower.cgns";
string from_gfile1 = "./grid/aux-upper.cgns";
string from_gfile2 = "./grid/background.cgns";
string from_gfile3 = "./grid/lowerwing.cgns";
string from_gfile4 = "./grid/upperwing.cgns";
//string from_gfile = "./grid/aux-upper.cgns";
//string out_gfile = "./grid/aux-upper.fts";
//string from_gfile = "./grid/background.cgns";
//string out_gfile = "./grid/background.fts";
//string from_gfile = "./grid/lowerwing.cgns";
//string out_gfile = "./grid/lowerwing.fts";
string from_gfile = "./grid/upperwing.cgns";
string out_gfile = "./grid/upperwing.fts";

View File

@ -23,8 +23,7 @@ int nparafile = 1;
//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 parafilename1 = "./bin/overset_config.hypara";
//string parafilename = "./bin/cfd_para_incompressible.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_para.hypara";
@ -35,11 +34,11 @@ int nparafile = 1;
//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 = 6;
string parafilename = "./bin/overset_config.hypara";

View File

@ -1,8 +1,8 @@
int parallelStrategy = 1;
int numberOfGridGroups = 3;
string gridfile = "./grid/background__2.fts";
string gridfile1 = "./grid/upperwing__2.fts";
string gridfile2 = "./grid/lowerwing__2.fts";
string gridfile = "./grid/background__4.fts";
string gridfile1 = "./grid/upperwing__4.fts";
string gridfile2 = "./grid/lowerwing__4.fts";
int codeOfOversetGrid = 1; // 0: 无重叠 1: 重叠;
int codeOfOversetSlipGrid = 0; // 0: 无滑移 1: 滑移;
int readOversetFileOrNot = 0; // 0: 适时装配 1: 读ovs文件
@ -20,8 +20,5 @@ double toleranceForOversetBox = 1e-3;
int twoOrderInterpolationOrNot = 1; //1-采用二阶插值多一排插值点0-一阶插值
int keyEnlargeOfActiveNodes = 1; //活跃区域扩展次数
int outTecplotOverset = 1; //
//kinetic
int numberOfMovingBodies = 2;
int morphing_0 = 0; //0-不变形1-二维fish
int morphing_1 = 0; //0-不变形1-二维fish
int morphing_2 = 0; //0-不变形1-二维fish

View File

@ -8,17 +8,17 @@
// 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 = 2;
int numberOfGridFile = 3;
int pgridtype = 0;
int pgridtype1 = 0;
int pgridtype2 = 0;
int maxproc = 4;
int maxproc1 = 4;
int maxproc2 = 4;
//string original_grid_file = "./grid/background.fts";
//string partition_grid_file = "./grid/background__2.fts";
//string original_grid_file = "./grid/lowerwing.fts";
//string partition_grid_file = "./grid/lowerwing__2.fts";
string original_grid_file = "./grid/upperwing.fts";
string partition_grid_file = "./grid/upperwing__2.fts";
string original_grid_file = "./grid/background.fts";
string original_grid_file1 = "./grid/lowerwing.fts";
string original_grid_file2 = "./grid/upperwing.fts";
// numberOfMultigrid: Number of multi-grid levels, ONLY used for structured grid.
// 1 -- single level.

View File

@ -1,65 +0,0 @@
# nBoundaryConditons : number of global boundary conditions.
# bcName : Boundary Condition Name.
# bcType(in PHengLEI): Boundary Condition Type.
# Account of how to set boundaryconditon.
# string bcName = "Farfield";
# {
# int bcType = 4;
# int inflowParaType = 1;
# double attackd = 0;
# double refReNumber = 6.5e6;
# double refMachNumber = 3.5;
# double angleSlide = 0;
# }
int nBoundaryConditons = 7;
string bcName = "Wall";
{
int bcType = 2;
}
string bcName = "Wall2";
{
int bcType = 2;
}
string bcName = "UserDefined";
{
int bcType = 1000;
}
string bcName = "Farfield";
{
int bcType = 4;
}
string bcName = "Farfield2";
{
int bcType = 4;
}
string bcName = "Farfield3";
{
int bcType = 4;
}
string bcName = "Farfield4";
{
int bcType = 4;
}
# 'bcType' is defined as following:
# 99: PERIODIC
# -2: WAKE
# -1: INTERFACE
# 0 : NO_BOUNDARY_CONDITION
# 1 : EXTRAPOLATION
# 2 : SOLID_SURFACE
# 3 : SYMMETRY
# 4 : FARFIELD
# 5 : INFLOW
# 6 : OUTFLOW
# 52: PRESSURE_INLET
# 62: PRESSURE_OUTLET
# 61: OUTFLOW_CONFINED
# 7 : POLE

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;
@ -738,7 +790,8 @@ int transitionType = 0;
double turbIntensity = -1.0;
int freeturbIntensitySRModify = 0;
double freeDecayXLocation = 0.0;
int compressibleCorrection = 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;
@ -968,19 +1099,40 @@ double sigmaTemperature = 1.0;
double sigmaMassFraction = 1.0;
double velocitySlipCorrectConstant = 1.0;
double chemicalRelaxCorf = 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,8 +1169,13 @@ double gamaSpeciesB = 1.3;
double molecularWeightSpeciesA = 29.0;
double molecularWeightSpeciesB = 30.0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
//string gasfile = "Gas-Mixture";
//string speciesName = "O2, N2";
//string initMassFraction = "1.0, 0.0";
int nContinueModel = 0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
#########################################################################
// Multi-Grid parameters.
@ -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

@ -171,7 +171,6 @@ int flowInitStep = 100;
// Please use 'rae2822_hybrid2d__4.fts' here!
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
string gridfile = "./grid/background__2.fts";
int plotFieldType = 1;
// ----------------- Advanced Parameters, DO NOT care it ----------------

View File

@ -20,7 +20,6 @@
int gridtype = 0;
int axisup = 1;
int from_gtype = 2;
int dumpOldGrid = 0;
#########################################################################
# File path #
@ -28,17 +27,10 @@ int dumpOldGrid = 0;
// 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/aux-lower.cgns";
//string out_gfile = "./grid/aux-lower.fts";
int numberOfGridFile = 5;
string from_gfile = "./grid/aux-lower.cgns";
string from_gfile1 = "./grid/aux-upper.cgns";
string from_gfile2 = "./grid/background.cgns";
string from_gfile3 = "./grid/lowerwing.cgns";
string from_gfile4 = "./grid/upperwing.cgns";
//string from_gfile = "./grid/aux-upper.cgns";
//string out_gfile = "./grid/aux-upper.fts";
//string from_gfile = "./grid/background.cgns";
//string out_gfile = "./grid/background.fts";
//string from_gfile = "./grid/lowerwing.cgns";
//string out_gfile = "./grid/lowerwing.fts";
string from_gfile = "./grid/upperwing.cgns";
string out_gfile = "./grid/upperwing.fts";

View File

@ -23,7 +23,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";
string parafilename1 = "./bin/overset_config.hypara";
//int nsimutask = 1;
@ -35,11 +35,11 @@ string parafilename1 = "./bin/overset_config.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 = 6;
//string parafilename = "./bin/overset_config.hypara";

View File

@ -1,8 +1,8 @@
int parallelStrategy = 1;
int numberOfGridGroups = 3;
string gridfile = "./grid/background__2.fts";
string gridfile1 = "./grid/upperwing__2.fts";
string gridfile2 = "./grid/lowerwing__2.fts";
string gridfile = "./grid/background__4.fts";
string gridfile1 = "./grid/upperwing__4.fts";
string gridfile2 = "./grid/lowerwing__4.fts";
int codeOfOversetGrid = 1; // 0: 无重叠 1: 重叠;
int codeOfOversetSlipGrid = 0; // 0: 无滑移 1: 滑移;
int readOversetFileOrNot = 0; // 0: 适时装配 1: 读ovs文件
@ -20,9 +20,4 @@ double toleranceForOversetBox = 1e-3;
int twoOrderInterpolationOrNot = 1; //1-采用二阶插值多一排插值点0-一阶插值
int keyEnlargeOfActiveNodes = 1; //活跃区域扩展次数
int outTecplotOverset = 1; //
// kinetic
int numberOfMovingBodies = 2;
int morphing_0 = 0; //0-不变形1-二维fish
int morphing_1 = 0; //0-不变形1-二维fish
int morphing_2 = 0; //0-不变形1-二维fish

View File

@ -8,17 +8,17 @@
// 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 = 2;
int numberOfGridFile = 3;
int pgridtype = 0;
int pgridtype1 = 0;
int pgridtype2 = 0;
int maxproc = 4;
int maxproc1 = 4;
int maxproc2 = 4;
//string original_grid_file = "./grid/background.fts";
//string partition_grid_file = "./grid/background__2.fts";
//string original_grid_file = "./grid/lowerwing.fts";
//string partition_grid_file = "./grid/lowerwing__2.fts";
string original_grid_file = "./grid/upperwing.fts";
string partition_grid_file = "./grid/upperwing__2.fts";
string original_grid_file = "./grid/background.fts";
string original_grid_file1 = "./grid/lowerwing.fts";
string original_grid_file2 = "./grid/upperwing.fts";
// numberOfMultigrid: Number of multi-grid levels, ONLY used for structured grid.
// 1 -- single level.

View File

@ -1,59 +0,0 @@
# nBoundaryConditons : number of global boundary conditions.
# bcName : Boundary Condition Name.
# bcType(in PHengLEI): Boundary Condition Type.
# Account of how to set boundaryconditon.
# string bcName = "Farfield";
# {
# int bcType = 4;
# int inflowParaType = 1;
# double attackd = 0;
# double refReNumber = 6.5e6;
# double refMachNumber = 3.5;
# double angleSlide = 0;
# }
int nBoundaryConditons = 7;
string bcName = "Wall";
{
int bcType = 2;
}
string bcName = "Wall2";
{
int bcType = 2;
}
string bcName = "UserDefined";
{
int bcType = 1000;
}
string bcName = "Farfield";
{
int bcType = 4;
}
string bcName = "Farfield2";
{
int bcType = 4;
}
string bcName = "Farfield3";
{
int bcType = 4;
}
string bcName = "Farfield4";
{
int bcType = 4;
}
# 'bcType' is defined as following:
# 99: PERIODIC
# -2: WAKE
# -1: INTERFACE
# 0 : NO_BOUNDARY_CONDITION
# 1 : EXTRAPOLATION
# 2 : SOLID_SURFACE
# 3 : SYMMETRY
# 4 : FARFIELD
# 5 : INFLOW
# 6 : OUTFLOW
# 52: PRESSURE_INLET
# 62: PRESSURE_OUTLET
# 61: OUTFLOW_CONFINED
# 7 : POLE

View File

@ -1,4 +1,4 @@
# nBoundaryConditons : Number of global boundary conditions.
# nBoundaryConditions : Number of global boundary conditions.
# bcName : Boundary condition name.
# bcType(in PHengLEI): Boundary condition type.
@ -25,7 +25,7 @@
# For more information, see examples/bin/boundary_condition.hypara file!!!
int nBoundaryConditons = 4;
int nBoundaryConditions = 4;
string bcName = "BODY";
{
int isSecondSegment = 0;

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;
@ -738,7 +790,8 @@ int transitionType = 0;
double turbIntensity = -1.0;
int freeturbIntensitySRModify = 0;
double freeDecayXLocation = 0.0;
int compressibleCorrection = 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;
@ -968,19 +1099,40 @@ double sigmaTemperature = 1.0;
double sigmaMassFraction = 1.0;
double velocitySlipCorrectConstant = 1.0;
double chemicalRelaxCorf = 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,8 +1169,13 @@ double gamaSpeciesB = 1.3;
double molecularWeightSpeciesA = 29.0;
double molecularWeightSpeciesB = 30.0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
//string gasfile = "Gas-Mixture";
//string speciesName = "O2, N2";
//string initMassFraction = "1.0, 0.0";
int nContinueModel = 0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
#########################################################################
// Multi-Grid parameters.
@ -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

@ -23,7 +23,7 @@ int nparafile = 1;
//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";
@ -37,14 +37,8 @@ int nparafile = 1;
int nsimutask = 1;
string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 4;
//string parafilename = "./bin/repository.hypara";
//int nsimutask = 5;
//string parafilename = "./bin/overset_grid_view.hypara";
//int nsimutask = 13;
//string parafilename = "./bin/lbm_para.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_refine_para.hypara";
//int nsimutask = 14;
//string parafilename = "./bin/integrative_solver.hypara";

View File

@ -1,4 +1,4 @@
# nBoundaryConditons : Number of global boundary conditions.
# nBoundaryConditions : Number of global boundary conditions.
# bcName : Boundary condition name.
# bcType(in PHengLEI): Boundary condition type.
@ -25,7 +25,7 @@
# For more information, see examples/bin/boundary_condition.hypara file!!!
int nBoundaryConditons = 4;
int nBoundaryConditions = 4;
string bcName = "BODY";
{
int isSecondSegment = 0;

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;
@ -738,7 +790,8 @@ int transitionType = 0;
double turbIntensity = -1.0;
int freeturbIntensitySRModify = 0;
double freeDecayXLocation = 0.0;
int compressibleCorrection = 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;
@ -968,19 +1099,40 @@ double sigmaTemperature = 1.0;
double sigmaMassFraction = 1.0;
double velocitySlipCorrectConstant = 1.0;
double chemicalRelaxCorf = 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,8 +1169,13 @@ double gamaSpeciesB = 1.3;
double molecularWeightSpeciesA = 29.0;
double molecularWeightSpeciesB = 30.0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
//string gasfile = "Gas-Mixture";
//string speciesName = "O2, N2";
//string initMassFraction = "1.0, 0.0";
int nContinueModel = 0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
#########################################################################
// Multi-Grid parameters.
@ -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

@ -23,7 +23,7 @@ int nparafile = 1;
//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";
@ -37,14 +37,8 @@ string parafilename = "./bin/grid_para.hypara";
//int nsimutask = 1;
//string parafilename = "./bin/grid_deform_para.hypara";
//int nsimutask = 4;
//string parafilename = "./bin/repository.hypara";
//int nsimutask = 5;
//string parafilename = "./bin/overset_grid_view.hypara";
//int nsimutask = 13;
//string parafilename = "./bin/lbm_para.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,237 @@
#########################################################################
# 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 = 20000;
int intervalStepFlow = 1000;
int intervalStepPlot = 1000;
int intervalStepForce = 100;
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.
// 4 -- the condition that the velocity, temperature and density are given.
// 5 -- the condition that the velocity, temperature and pressure are given.
// refReNumber: Reynolds number, which is based unit length, unit of 1/m.
// refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition.
// freestream_vibration_temperature: Dimensional freestream vibration temperature.
// 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 = 8.7569;
double attackd = 0.00;
double angleSlide = 0.00;
double wallTemperature = 1000.0;
int inflowParaType = 0;
double refReNumber = 4.7001e5;
double refDimensionalTemperature = 694.0;
//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)).
//The velocity, temperature and density are fixed.
//int inflowParaType = 4;
//double refDimensionalVelocity = 1000.0;
//double refDimensionalDensity = 1.0e3;
//The velocity, temperature and pressure are fixed.
//int inflowParaType = 5;
//double refDimensionalVelocity = 10.0;
//double refDimensionalPressure = 101325.0;
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 = 3;
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 = "steger";
string str_limiter_name = "minmod";
#*******************************************************************
# 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 = "steger";
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 = 1.0;
int CFLVaryStep = 1000;
double ktmax = 1.0e10;
#########################################################################
# 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/2D_Cylinder_Rn0d045_160X131_dy1d-5.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),
// -- 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).
// 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];
int nVisualWallVariables = 6;
int visualWallVariables[] = [0, 1, 2, 3, 4, 5];
// 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;
#########################################################################
# Non-equilibrium gas #
#########################################################################
// nGasModel: The type of gas.
// 0 -- Earth gas.
// 1 -- Mars gas.
// nchem:
// 0 -- without chemical reaction flow.
// 1 -- the chemical reaction flow is considered.
// nchemsrc:
// 0 -- the source terms are not computed.
// 1 -- the source terms are computed.
// nchemrad:
// 0 -- compute the spectrum radius without considering chemical reaction flow.
// 1 -- compute the spectrum radius that need to count the contribution from chemical reaction flow.
// ntmodel: The thermodynamic temperature model.
// 1 -- One-temperature model.
// 2 -- Two-temperature model.
// 3 -- Three-temperature model.
// ifStartFromPerfectGasResults: The chemical reaction simulation is start from perfect gas flowfield or not, 0 is for no and else is for yes.
int nchem = 1;
int nIdealState = 1;
int nchemsrc = 0;
int nchemrad = 0;
int ntmodel = 1;
string gasfile = "Gas-Mixture";
string speciesName = "O2, N2";
string initMassFraction = "0.23, 0.77";

View File

@ -0,0 +1,29 @@
#########################################################################
# 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 = 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/2D_Cylinder_Rn0d045_160X131_dy1d-5.cgns";
string out_gfile = "./grid/2D_Cylinder_Rn0d045_160X131_dy1d-5.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 = "";

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,237 @@
#########################################################################
# 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 = 50000;
int intervalStepFlow = 1000;
int intervalStepPlot = 1000;
int intervalStepForce = 100;
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.
// 4 -- the condition that the velocity, temperature and density are given.
// 5 -- the condition that the velocity, temperature and pressure are given.
// refReNumber: Reynolds number, which is based unit length, unit of 1/m.
// refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition.
// freestream_vibration_temperature: Dimensional freestream vibration temperature.
// 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 = 8.7569;
double attackd = 0.00;
double angleSlide = 0.00;
double wallTemperature = 2000.0;
//int inflowParaType = 0;
//double refReNumber = 4.7001e5;
//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)).
//The velocity, temperature and density are fixed.
//int inflowParaType = 4;
//double refDimensionalVelocity = 1000.0;
//double refDimensionalDensity = 1.0e3;
//The velocity, temperature and pressure are fixed.
int inflowParaType = 5;
double refDimensionalVelocity = 5280.0;
double refDimensionalPressure = 664.0;
double refDimensionalTemperature = 293.0;
double freestream_vibration_temperature = 293.0;
double gridScaleFactor = 0.001;
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 = 3;
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 = "steger";
string str_limiter_name = "minmod";
#*******************************************************************
# 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 = "steger";
string uns_limiter_name = "vencat";
double venkatCoeff = 0.1;
#########################################################################
# 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 CFLEnd = 0.5;
double ktmax = 1.0e10;
#########################################################################
# 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/R6d35MM_HalfModel_DY6d25E-4MM.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),
// -- 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).
// 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];
int nVisualWallVariables = 6;
int visualWallVariables[] = [0, 1, 2, 3, 4, 5];
// 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 = 1;
#########################################################################
# Non-equilibrium gas #
#########################################################################
// nGasModel: The type of gas.
// 0 -- Earth gas.
// 1 -- Mars gas.
// nchem:
// 0 -- without chemical reaction flow.
// 1 -- the chemical reaction flow is considered.
// nchemsrc:
// 0 -- the source terms are not computed.
// 1 -- the source terms are computed.
// nchemrad:
// 0 -- compute the spectrum radius without considering chemical reaction flow.
// 1 -- compute the spectrum radius that need to count the contribution from chemical reaction flow.
// ntmodel: The thermodynamic temperature model.
// 1 -- One-temperature model.
// 2 -- Two-temperature model.
// 3 -- Three-temperature model.
// ifStartFromPerfectGasResults: The chemical reaction simulation is start from perfect gas flowfield or not, 0 is for no and else is for yes.
int nchem = 1;
int nIdealState = 1;
int nchemsrc = 0;
int nchemrad = 0;
int ntmodel = 1;
string gasfile = "Gas-Mixture";
string speciesName = " O2, N2";
string initMassFraction = "0.23, 0.77";

View File

@ -0,0 +1,29 @@
#########################################################################
# 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 = 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/R6d35MM_HalfModel_DY6d25E-4MM.cgns";
string out_gfile = "./grid/R6d35MM_HalfModel_DY6d25E-4MM.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,79 @@
# nBoundaryConditons : Number of global boundary conditions.
# bcName : Boundary condition name.
# bcType(in PHengLEI): Boundary condition type.
# How to set boundary condition, for example:
# string bcName = "Wall";
# {
# int bcType = 2;
# int viscousType = 1;
# double wallTemperature = -1.0;
# double uWall = 0.0;
# double vWall = 0.0;
# double wWall = 0.0;
# }
# string bcName = "Inflow";
# {
# int bcType = 5;
# int inflowParaType = 0;
# double refMachNumber = 0.73;
# double attackd = 2.79;
# double angleSlide = 0.0;
# double refReNumber = 6.5e6;
# double refDimensionalTemperature = 288.15;
# }
# For more information, see examples/bin/boundary_condition.hypara file!!!
int nBoundaryConditions = 6;
string bcName = "jetwall";
{
string bodyName = "body";
int bcType = 2;
}
string bcName = "pipelinetop";
{
string bodyName = "body";
int bcType = 2;
}
string bcName = "symmetry";
{
int bcType = 3;
}
string bcName = "inlet";
{
int bcType = 5;
int inflowParaType = 5;
double refDimensionalVelocity = 9.2;
double refDimensionalPressure = 101325.0;
string speciesName ="Air, CH4";
double initMassFraction[2] = [1.0, 0.0];
}
string bcName = "jet";
{
int bcType = 5;
int inflowParaType = 5;
double refDimensionalVelocity = 68.9;
double refDimensionalPressure = 101325.0;
string speciesName ="Air, CH4";
double initMassFraction[2] = [0.0, 1.0];
}
string bcName = "outlet";
{
int bcType = 6;
}
# 'bcType' is defined as following:
# -2: WAKE
# -1: INTERFACE
# 0 : NO_BOUNDARY_CONDITION
# 1 : EXTRAPOLATION
# 2 : SOLID_SURFACE
# 3 : SYMMETRY
# 4 : FARFIELD
# 5 : INFLOW
# 6 : OUTFLOW
# 52: PRESSURE_INLET
# 62: PRESSURE_OUTLET
# 61: OUTFLOW_CONFINED
# 7 : POLE

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,256 @@
#########################################################################
# 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 = 50000;
int intervalStepFlow = 1000;
int intervalStepPlot = 1000;
int intervalStepForce = 100;
int intervalStepRes = 10;
// 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.
// 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.
// 4 -- the condition that the velocity, temperature and density are given.
// 5 -- the condition that the velocity, temperature and pressure are given.
// refReNumber: Reynolds number, which is based unit length, unit of 1/m.
// refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition.
// freestream_vibration_temperature: Dimensional freestream vibration temperature.
// 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;
double wallTemperature = -1.0;
//int inflowParaType = 0;
//double refReNumber = 1.0e5;
double refDimensionalTemperature = 300.0;
double freestream_vibration_temperature = 300.0;
//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)).
//The velocity, temperature and density are fixed.
//int inflowParaType = 4;
//double refDimensionalVelocity = 1000.0;
//double refDimensionalDensity = 1.0e3;
//The velocity, temperature and pressure are fixed.
int inflowParaType = 5;
double refDimensionalVelocity = 9.2;
double refDimensionalPressure = 101325.0;
double gridScaleFactor = 0.001;
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 = 3;
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 = "steger";
string str_limiter_name = "minmod";
#*******************************************************************
# 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 = "steger";
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.
// 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 = 50.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/multi-species.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),
// -- 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).
// 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];
int nVisualWallVariables = 6;
int visualWallVariables[] = [0, 1, 2, 3, 4, 5];
// 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;
#########################################################################
# Non-equilibrium gas #
#########################################################################
// nGasModel: The type of gas.
// 0 -- Earth gas.
// 1 -- Mars gas.
// nchem:
// 0 -- without chemical reaction flow.
// 1 -- the chemical reaction flow is considered.
// nchemsrc:
// 0 -- the source terms are not computed.
// 1 -- the source terms are computed.
// nchemrad:
// 0 -- compute the spectrum radius without considering chemical reaction flow.
// 1 -- compute the spectrum radius that need to count the contribution from chemical reaction flow.
// ntmodel: The thermodynamic temperature model.
// 1 -- One-temperature model.
// 2 -- Two-temperature model.
// 3 -- Three-temperature model.
// ifStartFromPerfectGasResults: The chemical reaction simulation is start from perfect gas flowfield or not, 0 is for no and else is for yes.
int nchem = 1;
int nIdealState = 1;
int nchemsrc = 0;
int nchemrad = 0;
int ntmodel = 1;
string gasfile = "Gas-Mixture";
string speciesName ="Air, CH4";
string initMassFraction = "1.0, 0.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 = 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/multi-species.cgns";
string out_gfile = "./grid/multi-species.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,61 @@
# nBoundaryConditions: Number of global boundary conditions.
# bcName : Boundary condition name.
# bcType(in PHengLEI): Boundary condition type.
# How to set boundary condition, for example:
# string bcName = "Wall";
# {
# int bcType = 2;
# int viscousType = 1;
# double wallTemperature = -1.0;
# double uWall = 0.0;
# double vWall = 0.0;
# double wWall = 0.0;
# }
# string bcName = "Inflow";
# {
# int bcType = 5;
# int inflowParaType = 0;
# double refMachNumber = 0.73;
# double attackd = 2.79;
# double angleSlide = 0.0;
# double refReNumber = 6.5e6;
# double refDimensionalTemperature = 288.15;
# }
# For more information, see examples/bin/boundary_condition.hypara file!!!
int nBoundaryConditions = 3;
string bcName = "wall";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
}
string bcName = "inlet";
{
int bcType = 5;
string flowType = "FLOW_VELOCITY_INLET";
double flowU =0.9191874;
}
string bcName = "outlet";
{
int bcType = 6;
string flowType = "FLOW_PRESSURE_OUTLET";
double flowP =0;
}
# 'bcType' is defined as following:
# -2: WAKE
# -1: INTERFACE
# 0 : NO_BOUNDARY_CONDITION
# 1 : EXTRAPOLATION
# 2 : SOLID_SURFACE
# 3 : SYMMETRY
# 4 : FARFIELD
# 5 : INFLOW
# 6 : OUTFLOW
# 52: PRESSURE_INLET
# 62: PRESSURE_OUTLET
# 61: OUTFLOW_CONFINED
# 7 : POLE

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,215 @@
#########################################################################
# General Control Parameter #
#########################################################################
// nIsComputeWallDist: Whether to compute the wall distance.
// 0 -- Compute wall distance.
// 1 -- Not compute.
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// 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.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
// 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.
// compressible: An indicator that distinguishes density base from pressure base. 0-incompressible, 1-compressible
// isUnsteady: An indicator that distinguishes unsteady problem from steady problem. 0-steady, 1-unsteady
// startTime: The initial time of the unsteady simulation.
// endTime: The end time of the unsteady simulation.
// dt: The time interval of the unsteady simulation.
// innerIter: The number of step for current time.
// OutputTimeStep: The interval step of output for unsteady simulation.
int nIsComputeWallDist = 1;
string gridfile = "./grid/back.fts";
int maxSimuStep = 2000;
int intervalStepFlow = 2000;
int intervalStepPlot = 1000;
int intervalStepRes = 10;
double gridScaleFactor = 1.0;
int compressible = 0;
int iunsteady = 0;
double startTime = 0.0;
double endTime = 30;
double dt = 0.1;
int innerIter = 10;
int OutputTimeStep = 5;
#########################################################################
# Post-Processing #
#########################################################################
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables : Variable types dumped, listed as following:
// -- U(22), V(23), W(24), P(25), CP(26), T(27), DEN(28), VIS(29), TE(31), ED(32), enthalpy(70)
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
int nVisualVariables = 4;
int visualVariables[] = [22, 23, 24, 25];
#########################################################################
# Flow Parameter #
#########################################################################
string FLOW[] = "FLOW";
// Initial value of variables or constant
double initRho = 1.0;
double initMu = 0.0001;
double initU = 0.9191874;
double initV = 0;
double initW = 0;
double initP = 0;
// Relaxing factor
double urfU = 0.4;
double urfV = 0.4;
double urfW = 0.4;
double urfP = 0.3;
double urfFlux = 0.4;
// Tolerance for governing equations
double resU = 1e-6;
double resV = 1e-6;
double resW = 1e-5;
double resP = 1e-5;
// Solver for solving linear system
// : CGS/GMRES/BiCGSTAB/AMG
string iterSolvU = "BiCGSTAB";
string iterSolvV = "BiCGSTAB";
string iterSolvW = "BiCGSTAB";
string iterSolvP = "AMG";
// Max Iter for solving linear system
int maxSweepU = 30;
int maxSweepV = 30;
int maxSweepW = 30;
int maxSweepP = 30;
// Tolerance for solving linear system
double iterSolvTolU = 1e-3;
double iterSolvTolV = 1e-3;
double iterSolvTolW = 1e-3;
double iterSolvTolP = 1e-2;
// Gradient Calculation
// : GAUSS/LSQ
string UGradCalc = "GAUSS";
string VGradCalc = "GAUSS";
string WGradCalc = "GAUSS";
string PGradCalc = "GAUSS";
// Convection scheme
// : UPWIND/CDS/QUICK/SUDS
string flowConvCalc = "UPWIND";
// Diffusion scheme(central difference)
// : NON_ORTHOGONAL
string flowDiffCalc = "NON_ORTHOGONAL";
// Transient scheme
// : CRANK_NICOLSON/IMPLICIT_2ND_ORDER/IMPLICIT_EULER
string flowTranCalc = "IMPLICIT_EULER";
// Source for flow
// : FLOW_DEFAULT/FLOW_GRAVITY
string flowSourceCalc[] = "FLOW_DEFAULT";
//string flowSourceCalc[] = "FLOW_DEFAULT FLOW_GRAVITY";
int bodyForceFlag = 0;
//double gravityX = 0.0;
//double gravityY = -9.81;
//double gravityZ = 0.0;
int isBoussinesq = 0;
#########################################################################
# Turbulence Parameter #
#########################################################################
// turb SA
//int viscousType = 11; //SPALART_ALLMARAS = 11, KEPSILON = 13
string TURB_SA[] = ["TURB_SA"];
string TURB_SA_SCALAR_NAME[] = ["kinetic"];
double urfMu = 1.0;
double kineticInitValue = 1.0;
string kineticConvCalc = "UPWIND";
string kineticDiffCalc = "NON_ORTHOGONAL";
string kineticSourceCalc[] = "TURB_SA_DEFAULT";
double kineticUrf = 1.0;
double kineticRes = 1e-6;
string turbIterSolv = "BiCGSTAB";
int turbMaxSweep = 30;
double turbIterSolvTol = 1e-12;
// turb K-EPSILON
//int viscousType = 13; //SPALART_ALLMARAS = 11, KEPSILON = 13
string TURB_K_EPSILON[] = ["TURB_K","TURB_EPSILON"];
string TURB_K_EPSILON_SCALAR_NAME[] = ["kinetic", "epsilon
string turbIterSolv = "BiCGSTAB";
int turbMaxSweep = 30;
double turbIterSolvTol = 1e-12;
string TURB_K[] = ["TURB_K"];
string TURB_K_SCALAR_NAME[] = ["kinetic"];
string TURB_EPSILON[] = ["TURB_EPSILON"];
string TURB_EPSILON_SCALAR_NAME[] = ["epsilon"];
double urfMu = 1.0;
// turb k
double kineticInitValue = 15.48;
string kineticConvCalc = "UPWIND";
string kineticDiffCalc = "NON_ORTHOGONAL";
string kineticSourceCalc[] = "TURB_K_DEFAULT";
double kineticUrf = 0.6;
double kineticRes = 1e-6;
// turb epsilon
double epsilonInitValue = 200.3;
string epsilonConvCalc = "UPWIND";
string epsilonDiffCalc = "NON_ORTHOGONAL";
string epsilonSourceCalc[] = "TURB_EPSILON_DEFAULT";
double epsilonUrf = 0.6;
double epsilonRes = 1e-6;
#########################################################################
# Energy Parameter #
#########################################################################
// energyType: The energy solver switch. 0-off, 1-on
// ENERGY[]: Solver binding for factory mode.
// ENERGY_SCALAR_NAME[]: The name of variable to be solved in energy equation.
// energyPrintName[]: The output on the screen during the solution.
int energyType = 0;
string ENERGY[] = ["ENERGY"];
string ENERGY_SCALAR_NAME[] = "enthalpy";
string energyPrintName[] = ["H"];
// Initial value of variables or constant
double initT = 273.0;
double initK = 0.026;
double initCPg = 1007.0;
double urfT = 0.8;
double urfH = 0.7;
double enthalpyInitValue = 0.21;
// Discrete schemes
string energyConvCalc = "UPWIND";
string energyDiffCalc = "NON_ORTHOGONAL";
string energySourceCalc[] = ["EMPTY"];
string energyGradCalc = "GAUSS";
string energyTranCalc = "IMPLICIT_EULER";
// Set for solving linear equations
string enthalpyIterSolv = "BiCGSTAB";
int enthalpyMaxSweep = 30;
double enthalpyIterSolvTol = 1e-12;
double enthalpyRes = 1e-6;

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 = 0;
int axisup = 1;
int from_gtype = 5;
#########################################################################
# 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/back.cas";
string out_gfile = "./grid/back.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_incompressible.hypara"
//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";
//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 = "";

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,73 @@
# nBoundaryConditions: Number of global boundary conditions.
# bcName : Boundary condition name.
# bcType(in PHengLEI): Boundary condition type.
# How to set boundary condition, for example:
# string bcName = "Wall";
# {
# int bcType = 2;
# int viscousType = 1;
# double wallTemperature = -1.0;
# double uWall = 0.0;
# double vWall = 0.0;
# double wWall = 0.0;
# }
# string bcName = "Inflow";
# {
# int bcType = 5;
# int inflowParaType = 0;
# double refMachNumber = 0.73;
# double attackd = 2.79;
# double angleSlide = 0.0;
# double refReNumber = 6.5e6;
# double refDimensionalTemperature = 288.15;
# }
# For more information, see examples/bin/boundary_condition.hypara file!!!
int nBoundaryConditions = 4;
string bcName = "bottomwall";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
string energyBoundaryType = "ENERGY_WALL";
}
string bcName = "coldwall";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
string energyBoundaryType = "ENERGY_WALL";
double T = 290.0;
}
string bcName = "hotwall";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
string energyBoundaryType = "ENERGY_WALL";
double T = 305.0;
}
string bcName = "topwall";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
string energyBoundaryType = "ENERGY_WALL";
}
# 'bcType' is defined as following:
# -2: WAKE
# -1: INTERFACE
# 0 : NO_BOUNDARY_CONDITION
# 1 : EXTRAPOLATION
# 2 : SOLID_SURFACE
# 3 : SYMMETRY
# 4 : FARFIELD
# 5 : INFLOW
# 6 : OUTFLOW
# 52: PRESSURE_INLET
# 62: PRESSURE_OUTLET
# 61: OUTFLOW_CONFINED
# 7 : POLE

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,214 @@
#########################################################################
# General Control Parameter #
#########################################################################
// nIsComputeWallDist: Whether to compute the wall distance.
// 0 -- Compute wall distance.
// 1 -- Not compute.
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// 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.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
// 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.
// compressible: An indicator that distinguishes density base from pressure base. 0-incompressible, 1-compressible
// isUnsteady: An indicator that distinguishes unsteady problem from steady problem. 0-steady, 1-unsteady
// startTime: The initial time of the unsteady simulation.
// endTime: The end time of the unsteady simulation.
// dt: The time interval of the unsteady simulation.
// innerIter: The number of step for current time.
// OutputTimeStep: The interval step of output for unsteady simulation.
int nIsComputeWallDist = 1;
string gridfile = "./grid/run.fts";
int maxSimuStep = 10000;
int intervalStepFlow = 2000;
int intervalStepPlot = 1000;
int intervalStepRes = 10;
double gridScaleFactor = 1.0;
int compressible = 0;
int iunsteady = 0;
double startTime = 0.0;
double endTime = 20.0;
double dt = 0.1;
int innerIter = 10;
int OutputTimeStep = 5;
#########################################################################
# Post-Processing #
#########################################################################
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables : Variable types dumped, listed as following:
// -- U(22), V(23), W(24), P(25), CP(26), T(27), DEN(28), VIS(29), TE(31), ED(32), enthalpy(70)
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
int nVisualVariables = 6;
int visualVariables[] = [22, 23, 24, 25, 27, 70];
#########################################################################
# Flow Parameter #
#########################################################################
string FLOW[] = "FLOW";
// Initial value of variables or constant
double initRho = 1.1405;
double initMu = 1.7894e-5;
double initU = 0;
double initV = 0;
double initW = 0;
double initP = 0;
// Relaxing factor
double urfU = 0.7;
double urfV = 0.7;
double urfW = 0.7;
double urfP = 0.3;
double urfFlux = 0.0;
// Tolerance for governing equations
double resU = 1e-6;
double resV = 1e-6;
double resW = 1e-5;
double resP = 1e-5;
// Solver for solving linear system
// : CGS/GMRES/BiCGSTAB/AMG
string iterSolvU = "BiCGSTAB";
string iterSolvV = "BiCGSTAB";
string iterSolvW = "BiCGSTAB";
string iterSolvP = "GMRES";
// Max Iter for solving linear system
int maxSweepU = 30;
int maxSweepV = 30;
int maxSweepW = 30;
int maxSweepP = 30;
// Tolerance for solving linear system
double iterSolvTolU = 1e-3;
double iterSolvTolV = 1e-3;
double iterSolvTolW = 1e-3;
double iterSolvTolP = 1e-2;
// Gradient Calculation
// : GAUSS/LSQ
string UGradCalc = "GAUSS";
string VGradCalc = "GAUSS";
string WGradCalc = "GAUSS";
string PGradCalc = "GAUSS";
// Convection scheme
// : UPWIND/CDS/QUICK/SUDS
string flowConvCalc = "UPWIND";
// Diffusion scheme(central difference)
// : NON_ORTHOGONAL
string flowDiffCalc = "NON_ORTHOGONAL";
// Transient scheme
// : CRANK_NICOLSON/IMPLICIT_2ND_ORDER/IMPLICIT_EULER
string flowTranCalc = "IMPLICIT_EULER";
// Source for flow
// : FLOW_DEFAULT/FLOW_GRAVITY
//string flowSourceCalc[] = "FLOW_DEFAULT";
string flowSourceCalc[] = "FLOW_DEFAULT FLOW_GRAVITY";
int bodyForceFlag = 1;
double gravityX = 0.0;
double gravityY = -9.81;
double gravityZ = 0.0;
int isBoussinesq = 1;
double thermalExpansion = 3.44827e-3;
double refT = 290;
#########################################################################
# Turbulence Parameter #
#########################################################################
//int viscousType = 13; //SPALART_ALLMARAS = 11, KEPSILON = 13
//turb SA
string TURB_SA[] = ["TURB_SA"];
string TURB_SA_SCALAR_NAME[] = ["kinetic"];
double urfMu = 1.0;
double kineticInitValue = 1.0;
string kineticConvCalc = "UPWIND";
string kineticDiffCalc = "NON_ORTHOGONAL";
string kineticSourceCalc[] = "TURB_SA_DEFAULT";
double kineticUrf = 1.0;
double kineticRes = 1e-6;
string turbIterSolv = "BiCGSTAB";
int turbMaxSweep = 30;
double turbIterSolvTol = 1e-12;
//turb KEPSILON
string TURB_K_EPSILON[] = ["TURB_K","TURB_EPSILON"];
string TURB_K_EPSILON_SCALAR_NAME[] = ["kinetic", "epsilon"];
string TURB_K[] = ["TURB_K"];
string TURB_K_SCALAR_NAME[] = ["kinetic"];
string TURB_EPSILON[] = ["TURB_EPSILON"];
string TURB_EPSILON_SCALAR_NAME[] = ["epsilon"];
double urfMu = 1.0;
// turb k
double kineticInitValue = 1.0;
string kineticConvCalc = "UPWIND";
string kineticDiffCalc = "NON_ORTHOGONAL";
string kineticSourceCalc[] = "TURB_K_DEFAULT";
double kineticUrf = 1.0;
double kineticRes = 1e-6;
// turb epsilon
double epsilonInitValue = 1.0;
string epsilonConvCalc = "UPWIND";
string epsilonDiffCalc = "NON_ORTHOGONAL";
string epsilonSourceCalc[] = "TURB_EPSILON_DEFAULT";
double epsilonUrf = 1.0;
double epsilonRes = 1e-6;
#########################################################################
# Energy Parameter #
#########################################################################
// energyType: The energy solver switch. 0-off, 1-on
// ENERGY[]: Solver binding for factory mode.
// ENERGY_SCALAR_NAME[]: The name of variable to be solved in energy equation.
// energyPrintName[]: The output on the screen during the solution.
int energyType = 1;
string ENERGY[] = ["ENERGY"];
string ENERGY_SCALAR_NAME[] = "enthalpy";
string energyPrintName[] = ["H"];
// Initial value of variables or constant
double initT = 295;
double initK = 0.0242;
double initCPg = 1006.43;
double urfT = 0.2;
double urfH = 0.2;
double enthalpyInitValue = 0.21;
// Discrete schemes
string energyConvCalc = "UPWIND";
string energyDiffCalc = "NON_ORTHOGONAL";
string energySourceCalc[] = ["EMPTY"];
string energyGradCalc = "GAUSS";
string energyTranCalc = "IMPLICIT_EULER";
// Set for solving linear equations
string enthalpyIterSolv = "BiCGSTAB";
int enthalpyMaxSweep = 30;
double enthalpyIterSolvTol = 1e-12;
double enthalpyRes = 1e-6;

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 = 0;
int axisup = 1;
int from_gtype = 5;
#########################################################################
# 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/run.cas";
string out_gfile = "./grid/run.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_incompressible.hypara"
//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";
//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 = "";

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,68 @@
# nBoundaryConditions: Number of global boundary conditions.
# bcName : Boundary condition name.
# bcType(in PHengLEI): Boundary condition type.
# How to set boundary condition, for example:
# string bcName = "Wall";
# {
# int bcType = 2;
# int viscousType = 1;
# double wallTemperature = -1.0;
# double uWall = 0.0;
# double vWall = 0.0;
# double wWall = 0.0;
# }
# string bcName = "Inflow";
# {
# int bcType = 5;
# int inflowParaType = 0;
# double refMachNumber = 0.73;
# double attackd = 2.79;
# double angleSlide = 0.0;
# double refReNumber = 6.5e6;
# double refDimensionalTemperature = 288.15;
# }
# For more information, see examples/bin/boundary_condition.hypara file!!!
int nBoundaryConditions = 4;
string bcName = "bottom";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
}
string bcName = "left";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
}
string bcName = "right";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
}
string bcName = "top";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
double flowU = 1.0;
}
# 'bcType' is defined as following:
# -2: WAKE
# -1: INTERFACE
# 0 : NO_BOUNDARY_CONDITION
# 1 : EXTRAPOLATION
# 2 : SOLID_SURFACE
# 3 : SYMMETRY
# 4 : FARFIELD
# 5 : INFLOW
# 6 : OUTFLOW
# 52: PRESSURE_INLET
# 62: PRESSURE_OUTLET
# 61: OUTFLOW_CONFINED
# 7 : POLE

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,197 @@
#########################################################################
# General Control Parameter #
#########################################################################
// nIsComputeWallDist: Whether to compute the wall distance.
// 0 -- Compute wall distance.
// 1 -- Not compute.
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// 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.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
// 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.
// compressible: An indicator that distinguishes density base from pressure base. 0-incompressible, 1-compressible
// isUnsteady: An indicator that distinguishes unsteady problem from steady problem. 0-steady, 1-unsteady
// startTime: The initial time of the unsteady simulation.
// endTime: The end time of the unsteady simulation.
// dt: The time interval of the unsteady simulation.
// innerIter: The number of step for current time.
// OutputTimeStep: The interval step of output for unsteady simulation.
int nIsComputeWallDist = 1;
string gridfile = "./grid/cavity.fts";
int maxSimuStep = 10000;
int intervalStepFlow = 2000;
int intervalStepPlot = 2000;
int intervalStepRes = 10;
double gridScaleFactor = 1.0;
int compressible = 0;
int iunsteady = 0;
double startTime = 0.0;
double endTime = 30;
double dt = 0.1;
int innerIter = 10;
int OutputTimeStep = 5;
#########################################################################
# Post-Processing #
#########################################################################
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables : Variable types dumped, listed as following:
// -- U(22), V(23), W(24), P(25), CP(26), T(27), DEN(28), VIS(29), TE(31), ED(32), enthalpy(70)
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
int nVisualVariables = 4;
int visualVariables[] = [22, 23, 24, 25];
#########################################################################
# Flow Parameter #
#########################################################################
string FLOW[] = "FLOW";
// Initial value of variables or constant
double initRho = 1.0;
double initMu = 0.001;
double initU = 0;
double initV = 0;
double initW = 0;
double initP = 0;
// Relaxing factor
double urfU = 0.4;
double urfV = 0.4;
double urfW = 0.4;
double urfP = 0.7;
double urfFlux = 0.4;
// Tolerance for governing equations
double resU = 1e-6;
double resV = 1e-6;
double resW = 1e-5;
double resP = 1e-5;
// Solver for solving linear system
// : CGS/GMRES/BiCGSTAB/AMG
string iterSolvU = "BiCGSTAB";
string iterSolvV = "BiCGSTAB";
string iterSolvW = "BiCGSTAB";
string iterSolvP = "GMRES";
// Max Iter for solving linear system
int maxSweepU = 30;
int maxSweepV = 30;
int maxSweepW = 30;
int maxSweepP = 30;
// Tolerance for solving linear system
double iterSolvTolU = 1e-3;
double iterSolvTolV = 1e-3;
double iterSolvTolW = 1e-3;
double iterSolvTolP = 1e-2;
// Gradient Calculation
// : GAUSS/LSQ
string UGradCalc = "GAUSS";
string VGradCalc = "GAUSS";
string WGradCalc = "GAUSS";
string PGradCalc = "GAUSS";
// Convection scheme
// : UPWIND/CDS/QUICK/SUDS
string flowConvCalc = "UPWIND";
// Diffusion scheme(central difference)
// : NON_ORTHOGONAL
string flowDiffCalc = "NON_ORTHOGONAL";
// Transient scheme
// : CRANK_NICOLSON/IMPLICIT_2ND_ORDER/IMPLICIT_EULER
string flowTranCalc = "IMPLICIT_EULER";
// Source for flow
// : FLOW_DEFAULT/FLOW_GRAVITY
string flowSourceCalc[] = "FLOW_DEFAULT";
// string flowSourceCalc[] = "FLOW_DEFAULT FLOW_GRAVITY";
int bodyForceFlag = 0;
int isBoussinesq = 0;
//double gravityX = 0.0;
//double gravityY = -9.81;
//double gravityZ = 0.0;
#########################################################################
# Turbulence Parameter #
#########################################################################
// turb K-EPSILON
//int viscousType = 13; //SPALART_ALLMARAS = 11, KEPSILON = 13
string TURB_K_EPSILON[] = ["TURB_K","TURB_EPSILON"];
string TURB_K_EPSILON_SCALAR_NAME[] = ["kinetic", "epsilon"];
string turbIterSolv = "BiCGSTAB";
int turbMaxSweep = 30;
double turbIterSolvTol = 1e-12;
string TURB_K[] = ["TURB_K"];
string TURB_K_SCALAR_NAME[] = ["kinetic"];
string TURB_EPSILON[] = ["TURB_EPSILON"];
string TURB_EPSILON_SCALAR_NAME[] = ["epsilon"];
double urfMu = 1.0;
// turb k
double kineticInitValue = 1.0;
string kineticConvCalc = "UPWIND";
string kineticDiffCalc = "NON_ORTHOGONAL";
string kineticSourceCalc[] = "TURB_K_DEFAULT";
double kineticUrf = 1.0;
double kineticRes = 1e-6;
// turb epsilon
double epsilonInitValue = 1.0;
string epsilonConvCalc = "UPWIND";
string epsilonDiffCalc = "NON_ORTHOGONAL";
string epsilonSourceCalc[] = "TURB_EPSILON_DEFAULT";
double epsilonUrf = 1.0;
double epsilonRes = 1e-6;
#########################################################################
# Energy Parameter #
#########################################################################
// energyType: The energy solver switch. 0-off, 1-on
// ENERGY[]: Solver binding for factory mode.
// ENERGY_SCALAR_NAME[]: The name of variable to be solved in energy equation.
// energyPrintName[]: The output on the screen during the solution.
int energyType = 0;
string ENERGY[] = ["ENERGY"];
string ENERGY_SCALAR_NAME[] = "enthalpy";
string energyPrintName[] = ["H"];
// Initial value of variables or constant
double initT = 273.0;
double initK = 0.026;
double initCPg = 1007.0;
double urfT = 0.8;
double urfH = 0.7;
double enthalpyInitValue = 0.21;
// Discrete schemes
string energyConvCalc = "UPWIND";
string energyDiffCalc = "NON_ORTHOGONAL";
string energySourceCalc[] = ["EMPTY"];
string energyGradCalc = "GAUSS";
string energyTranCalc = "IMPLICIT_EULER";
// Set for solving linear equations
string enthalpyIterSolv = "BiCGSTAB";
int enthalpyMaxSweep = 30;
double enthalpyIterSolvTol = 1e-12;
double enthalpyRes = 1e-6;

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 = 0;
int axisup = 1;
int from_gtype = 5;
#########################################################################
# 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/cavity.cas";
string out_gfile = "./grid/cavity.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_incompressible.hypara"
//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";
//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 = "";

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,71 @@
# nBoundaryConditions: Number of global boundary conditions.
# bcName : Boundary condition name.
# bcType(in PHengLEI): Boundary condition type.
# How to set boundary condition, for example:
# string bcName = "Wall";
# {
# int bcType = 2;
# int viscousType = 1;
# double wallTemperature = -1.0;
# double uWall = 0.0;
# double vWall = 0.0;
# double wWall = 0.0;
# }
# string bcName = "Inflow";
# {
# int bcType = 5;
# int inflowParaType = 0;
# double refMachNumber = 0.73;
# double attackd = 2.79;
# double angleSlide = 0.0;
# double refReNumber = 6.5e6;
# double refDimensionalTemperature = 288.15;
# }
# For more information, see examples/bin/boundary_condition.hypara file!!!
int nBoundaryConditions = 3;
string bcName = "in";
{
int bcType = 5;
string flowType = "FLOW_VELOCITY_INLET";
string kineticBoundaryType = "TURB_K_INLET";
string epsilonBoundaryType = "TURB_EPSILON_INLET";
double flowW = 50;
double kinetic = 9.375004;
double epsilon = 54151.86;
}
string bcName = "out";
{
int bcType = 6;
string flowType = "FLOW_PRESSURE_OUTLET";
string kineticBoundaryType = "TURB_K_PRESSUREOUTLET";
string epsilonBoundaryType = "TURB_EPSILON_PRESSUREOUTLET";
double flowP = 0;
double kinetic = 9.375004;
double epsilon = 54151.86;
}
string bcName = "wall";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
string kineticBoundaryType = "TURB_K_WALL";
string epsilonBoundaryType = "TURB_EPSILON_WALL";
}
# 'bcType' is defined as following:
# -2: WAKE
# -1: INTERFACE
# 0 : NO_BOUNDARY_CONDITION
# 1 : EXTRAPOLATION
# 2 : SOLID_SURFACE
# 3 : SYMMETRY
# 4 : FARFIELD
# 5 : INFLOW
# 6 : OUTFLOW
# 52: PRESSURE_INLET
# 62: PRESSURE_OUTLET
# 61: OUTFLOW_CONFINED
# 7 : POLE

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,202 @@
#########################################################################
# General Control Parameter #
#########################################################################
// nIsComputeWallDist: Whether to compute the wall distance.
// 0 -- Compute wall distance.
// 1 -- Not compute.
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// 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.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
// 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.
// compressible: An indicator that distinguishes density base from pressure base. 0-incompressible, 1-compressible
// isUnsteady: An indicator that distinguishes unsteady problem from steady problem. 0-steady, 1-unsteady
// startTime: The initial time of the unsteady simulation.
// endTime: The end time of the unsteady simulation.
// dt: The time interval of the unsteady simulation.
// innerIter: The number of step for current time.
// OutputTimeStep: The interval step of output for unsteady simulation.
int nIsComputeWallDist = 1;
string gridfile = "./grid/pipe.fts";
int maxSimuStep = 10000;
int intervalStepFlow = 1000;
int intervalStepPlot = 1000;
int intervalStepRes = 1000;
double gridScaleFactor = 1;
int compressible = 0;
int iunsteady = 0;
double startTime = 0.0;
double endTime = 5;
double dt = 0.1;
int innerIter = 10;
int OutputTimeStep = 5;
#########################################################################
# Post-Processing #
#########################################################################
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables : Variable types dumped, listed as following:
// -- U(22), V(23), W(24), P(25), CP(26), T(27), DEN(28), VIS(29), TE(31), ED(32), enthalpy(57)
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
// plotFieldType: If dump out the field results to visulization.
int plotFieldType = 1;
//int nVisualVariables = 4;
//int visualVariables[] = [22, 23, 24, 25];
int nVisualVariables = 7;
int visualVariables[] = [22, 23, 24, 25, 29,31,32];
#########################################################################
# Flow Parameter #
#########################################################################
string FLOW[] = "FLOW";
// Initial value of variables or constant
double initRho = 1.225;
double initMu = 1.7894e-05;
double initU = 0;
double initV = 0;
double initW = 50;
double initP = 0;
// Relaxing factor
double urfU = 0.4;
double urfV = 0.4;
double urfW = 0.4;
double urfP = 0.3;
double urfFlux = 0.4;
// Tolerance for governing equations
double resU = 1e-6;
double resV = 1e-6;
double resW = 1e-5;
double resP = 1e-5;
// Solver for solving linear system
// : CGS/GMRES/BiCGSTAB/AMG
string iterSolvU = "BiCGSTAB";
string iterSolvV = "BiCGSTAB";
string iterSolvW = "BiCGSTAB";
string iterSolvP = "AMG";
// Max Iter for solving linear system
int maxSweepU = 30;
int maxSweepV = 30;
int maxSweepW = 30;
int maxSweepP = 30;
// Tolerance for solving linear system
double iterSolvTolU = 1e-4;
double iterSolvTolV = 1e-4;
double iterSolvTolW = 1e-4;
double iterSolvTolP = 1e-3;
// Gradient Calculation
// : GAUSS/LSQ
string UGradCalc = "GAUSS";
string VGradCalc = "GAUSS";
string WGradCalc = "GAUSS";
string PGradCalc = "GAUSS";
// Convection scheme
// : UPWIND/CDS/QUICK/SUDS
string flowConvCalc = "UPWIND";
// Diffusion scheme(central difference)
// : NON_ORTHOGONAL
string flowDiffCalc = "NON_ORTHOGONAL";
// Transient scheme
// : CRANK_NICOLSON/IMPLICIT_2ND_ORDER/IMPLICIT_EULER
string flowTranCalc = "IMPLICIT_EULER";
// Source for flow
// : FLOW_DEFAULT/FLOW_GRAVITY
string flowSourceCalc[] = "FLOW_DEFAULT";
//string flowSourceCalc[] = "FLOW_DEFAULT FLOW_GRAVITY";
int bodyForceFlag = 0;
double gravityX = 0.0;
double gravityY = -9.81;
double gravityZ = 0.0;
#########################################################################
# Turbulence Parameter #
#########################################################################
int viscousType = 13; //SPALART_ALLMARAS = 11, KEPSILON = 13
//turb K-EPSILON
string TURB_K_EPSILON[] = ["TURB_K","TURB_EPSILON"];
string TURB_K_EPSILON_SCALAR_NAME[] = ["kinetic", "epsilon"];
string TURB_K[] = ["TURB_K"];
string TURB_K_SCALAR_NAME[] = ["kinetic"];
string TURB_EPSILON[] = ["TURB_EPSILON"];
string TURB_EPSILON_SCALAR_NAME[] = ["epsilon"];
double urfMu = 0.6;
string turbIterSolv = "BiCGSTAB";
int turbMaxSweep = 30;
double turbIterSolvTol = 1e-12;
// turb k
double kineticInitValue = 9.375001;
string kineticConvCalc = "UPWIND";
string kineticDiffCalc = "NON_ORTHOGONAL";
string kineticSourceCalc[] = "TURB_K_DEFAULT";
double kineticUrf = 0.6;
double kineticRes = 1e-6;
// turb epsilon
double epsilonInitValue = 54151.86;
string epsilonConvCalc = "UPWIND";
string epsilonDiffCalc = "NON_ORTHOGONAL";
string epsilonSourceCalc[] = "TURB_EPSILON_DEFAULT";
double epsilonUrf = 0.6;
double epsilonRes = 1e-6;
#########################################################################
# Energy Parameter #
#########################################################################
// energyType: The energy solver switch. 0-off, 1-on
// ENERGY[]: Solver binding for factory mode.
// ENERGY_SCALAR_NAME[]: The name of variable to be solved in energy equation.
// energyPrintName[]: The output on the screen during the solution.
int energyType = 0;
string ENERGY[] = ["ENERGY"];
string ENERGY_SCALAR_NAME[] = "enthalpy";
string energyPrintName[] = ["H"];
// Initial value of variables or constant
double initT = 273.0;
double initK = 0.026;
double initCPg = 1007.0;
double urfT = 0.8;
double urfH = 0.7;
double enthalpyInitValue = 0.21;
// Discrete schemes
string energyConvCalc = "UPWIND";
string energyDiffCalc = "NON_ORTHOGONAL";
string energySourceCalc[] = ["EMPTY"];
string energyGradCalc = "GAUSS";
string energyTranCalc = "IMPLICIT_EULER";
// Set for solving linear equations
string enthalpyIterSolv = "BiCGSTAB";
int enthalpyMaxSweep = 30;
double enthalpyIterSolvTol = 1e-12;
double enthalpyRes = 1e-6;

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 = 0;
int axisup = 1;
int from_gtype = 5;
#########################################################################
# 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/pipe.cas";
string out_gfile = "./grid/pipe.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_incompressible.hypara"
//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";
//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 = "";

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,63 @@
# nBoundaryConditons : number of global boundary conditions.
# bcName : Boundary Condition Name.
# bcType(in PHengLEI): Boundary Condition Type.
# Account of how to set boundaryconditon.
# string bcName = "Farfield";
# {
# int bcType = 4;
# int inflowParaType = 1;
# double attackd = 0;
# double refReNumber = 6.5e6;
# double refMachNumber = 3.5;
# double angleSlide = 0;
# }
int nBoundaryConditions = 5;
string bcName = "sym";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
}
string bcName = "symf";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
}
string bcName = "wall";
{
string bodyName = "body";
int bcType = 2;
string flowType = "FLOW_SOLID_SURFACE";
}
string bcName = "in";
{
int bcType = 5;
string flowType = "FLOW_VELOCITY_INLET";
double flowU =0.1;
}
string bcName = "out";
{
int bcType = 6;
string flowType = "FLOW_PRESSURE_OUTLET";
double flowU =0.1;
double flowP =0;
}
# 'bcType' is defined as following:
# 99: PERIODIC
# -2: WAKE
# -1: INTERFACE
# 0 : NO_BOUNDARY_CONDITION
# 1 : EXTRAPOLATION
# 2 : SOLID_SURFACE
# 3 : SYMMETRY
# 4 : FARFIELD
# 5 : INFLOW
# 6 : OUTFLOW
# 52: PRESSURE_INLET
# 62: PRESSURE_OUTLET
# 61: OUTFLOW_CONFINED
# 7 : POLE

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,212 @@
#########################################################################
# General Control Parameter #
#########################################################################
// nIsComputeWallDist: Whether to compute the wall distance.
// 0 -- Compute wall distance.
// 1 -- Not compute.
// gridfile: The partitioned Grid file path, using relative path,
// which is relative to the working directory.
// 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.
// intervalStepRes: The step intervals for residual 'res.dat' saved.
// 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.
// compressible: An indicator that distinguishes density base from pressure base. 0-incompressible, 1-compressible
// isUnsteady: An indicator that distinguishes unsteady problem from steady problem. 0-steady, 1-unsteady
// startTime: The initial time of the unsteady simulation.
// endTime: The end time of the unsteady simulation.
// dt: The time interval of the unsteady simulation.
// innerIter: The number of step for current time.
// OutputTimeStep: The interval step of output for unsteady simulation.
int nIsComputeWallDist = 1;
string gridfile = "./grid/suboff.fts";
iint maxSimuStep = 10000;
int intervalStepFlow = 2000;
int intervalStepPlot = 2000;
int intervalStepRes = 2000;
double gridScaleFactor = 1.0;
int compressible = 0;
int iunsteady = 0;
double startTime = 0.0;
double endTime = 5;
double dt = 0.1;
int innerIter = 10;
int OutputTimeStep = 5;
#########################################################################
# Post-Processing #
#########################################################################
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
// visualVariables : Variable types dumped, listed as following:
// -- U(22), V(23), W(24), P(25), CP(26), T(27), DEN(28), VIS(29), TE(31), ED(32), enthalpy(57)
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big.
// plotFieldType: If dump out the field results to visulization.
int plotFieldType = 1;
int nVisualVariables = 4;
int visualVariables[] = [22, 23, 24, 25];
#########################################################################
# Flow Parameter #
#########################################################################
string FLOW[] = "FLOW";
// Initial value of variables or constant
double initRho = 998.3;
double initMu = 1.93345725;
double initU = 0.1;
double initV = 0;
double initW = 0;
double initP = 0;
// Relaxing factor
double urfU = 0.4;
double urfV = 0.4;
double urfW = 0.4;
double urfP = 0.3;
double urfFlux = 0.4;
// Tolerance for governing equations
double resU = 1e-6;
double resV = 1e-6;
double resW = 1e-5;
double resP = 1e-5;
// Solver for solving linear system
// : CGS/GMRES/BiCGSTAB/AMG
string iterSolvU = "BiCGSTAB";
string iterSolvV = "BiCGSTAB";
string iterSolvW = "BiCGSTAB";
string iterSolvP = "GMRES";
// Max Iter for solving linear system
int maxSweepU = 30;
int maxSweepV = 30;
int maxSweepW = 30;
int maxSweepP = 30;
// Tolerance for solving linear system
double iterSolvTolU = 1e-4;
double iterSolvTolV = 1e-4;
double iterSolvTolW = 1e-4;
double iterSolvTolP = 1e-3;
// Gradient Calculation
// : GAUSS/LSQ
string UGradCalc = "GAUSS";
string VGradCalc = "GAUSS";
string WGradCalc = "GAUSS";
string PGradCalc = "GAUSS";
// Convection scheme
// : UPWIND/CDS/QUICK/SUDS
string flowConvCalc = "QUICK";
// Diffusion scheme(central difference)
// : NON_ORTHOGONAL
string flowDiffCalc = "NON_ORTHOGONAL";
// Transient scheme
// : CRANK_NICOLSON/IMPLICIT_2ND_ORDER/IMPLICIT_EULER
string flowTranCalc = "IMPLICIT_EULER";
// Source for flow
// : FLOW_DEFAULT/FLOW_GRAVITY
string flowSourceCalc[] = "FLOW_DEFAULT";
//string flowSourceCalc[] = "FLOW_DEFAULT FLOW_GRAVITY";
int bodyForceFlag = 0;
//double gravityX = 0.0;
//double gravityY = -9.81;
//double gravityZ = 0.0;
#########################################################################
# Turbulence Parameter #
#########################################################################
//int viscousType = 13; //SPALART_ALLMARAS = 11, KEPSILON = 13
//turb SA
//string TURB_SA[] = ["TURB_SA"];
//string TURB_SA_SCALAR_NAME[] = ["kinetic"];
//double urfMu = 1.0;
//double kineticInitValue = 1.0;
//string kineticConvCalc = "UPWIND";
//string kineticDiffCalc = "NON_ORTHOGONAL";
//string kineticSourceCalc[] = "TURB_SA_DEFAULT";
//double kineticUrf = 1.0
//double kineticRes = 1e-6;
//string turbIterSolv = "BiCGSTAB";
//int turbMaxSweep = 30;
//double turbIterSolvTol = 1e-12;
//turb K-EPSILON
string TURB_K_EPSILON[] = ["TURB_K","TURB_EPSILON"];
string TURB_K_EPSILON_SCALAR_NAME[] = ["kinetic", "epsilon"];
string TURB_K[] = ["TURB_K"];
string TURB_K_SCALAR_NAME[] = ["kinetic"];
string TURB_EPSILON[] = ["TURB_EPSILON"];
string TURB_EPSILON_SCALAR_NAME[] = ["epsilon"];
double urfMu = 0.4;
// turb k
double kineticInitValue = 3.750003e-05;
string kineticConvCalc = "UPWIND";
string kineticDiffCalc = "NON_ORTHOGONAL";
string kineticSourceCalc[] = "TURB_K_DEFAULT";
double kineticUrf = 0.4;
double kineticRes = 1e-6;
// turb epsilon
double epsilonInitValue = 8.664311e-07;
string epsilonConvCalc = "UPWIND";
string epsilonDiffCalc = "NON_ORTHOGONAL";
string epsilonSourceCalc[] = "TURB_EPSILON_DEFAULT";
double epsilonUrf = 0.4;
double epsilonRes = 1e-6;
#########################################################################
# Energy Parameter #
#########################################################################
// energyType: The energy solver switch. 0-off, 1-on
// ENERGY[]: Solver binding for factory mode.
// ENERGY_SCALAR_NAME[]: The name of variable to be solved in energy equation.
// energyPrintName[]: The output on the screen during the solution.
int energyType = 0;
string ENERGY[] = ["ENERGY"];
string ENERGY_SCALAR_NAME[] = "enthalpy";
string energyPrintName[] = ["H"];
// Initial value of variables or constant
double initT = 273.0;
double initK = 0.026;
double initCPg = 1007.0;
double urfT = 0.8;
double urfH = 0.7;
double enthalpyInitValue = 0.21;
// Discrete schemes
string energyConvCalc = "UPWIND";
string energyDiffCalc = "NON_ORTHOGONAL";
string energySourceCalc[] = ["EMPTY"];
string energyGradCalc = "GAUSS";
string energyTranCalc = "IMPLICIT_EULER";
// Set for solving linear equations
string enthalpyIterSolv = "BiCGSTAB";
int enthalpyMaxSweep = 30;
double enthalpyIterSolvTol = 1e-12;
double enthalpyRes = 1e-6;

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 = 0;
int axisup = 1;
int from_gtype = 5;
#########################################################################
# 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/suboff.cas";
string out_gfile = "./grid/suboff.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_incompressible.hypara"
//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";
//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 = "";

File diff suppressed because one or more lines are too long

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;
@ -738,7 +790,8 @@ int transitionType = 0;
double turbIntensity = -1.0;
int freeturbIntensitySRModify = 0;
double freeDecayXLocation = 0.0;
int compressibleCorrection = 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;
@ -968,19 +1099,40 @@ double sigmaTemperature = 1.0;
double sigmaMassFraction = 1.0;
double velocitySlipCorrectConstant = 1.0;
double chemicalRelaxCorf = 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,8 +1169,13 @@ double gamaSpeciesB = 1.3;
double molecularWeightSpeciesA = 29.0;
double molecularWeightSpeciesB = 30.0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
//string gasfile = "Gas-Mixture";
//string speciesName = "O2, N2";
//string initMassFraction = "1.0, 0.0";
int nContinueModel = 0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
#########################################################################
// Multi-Grid parameters.
@ -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

@ -23,7 +23,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 +34,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

@ -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;
@ -738,7 +790,8 @@ int transitionType = 0;
double turbIntensity = -1.0;
int freeturbIntensitySRModify = 0;
double freeDecayXLocation = 0.0;
int compressibleCorrection = 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;
@ -968,19 +1099,40 @@ double sigmaTemperature = 1.0;
double sigmaMassFraction = 1.0;
double velocitySlipCorrectConstant = 1.0;
double chemicalRelaxCorf = 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,8 +1169,13 @@ double gamaSpeciesB = 1.3;
double molecularWeightSpeciesA = 29.0;
double molecularWeightSpeciesB = 30.0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
//string gasfile = "Gas-Mixture";
//string speciesName = "O2, N2";
//string initMassFraction = "1.0, 0.0";
int nContinueModel = 0;
int nChemicalFlowStep = 0;
int ifStartFromPerfectGasResults = 0;
#########################################################################
// Multi-Grid parameters.
@ -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

@ -23,7 +23,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 +34,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";