forked from PHengLEI/PHengLEI-TestCases
结构网格参数,网格,文档更新;新增A32低速预处理NACA0012翼型算例
This commit is contained in:
parent
20cb88cdb3
commit
4ee435c6b6
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 2;
|
||||
int nAxisRotateTimes = 1;
|
||||
int axisRotateOrder[] = [1];
|
||||
double axisRotateAngles[]= [90.0];
|
||||
int from_gtype = 2;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -533,7 +542,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +551,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -575,7 +583,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +599,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +625,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +637,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +652,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +670,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +709,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +751,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +775,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +789,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +803,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +831,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +862,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -886,14 +896,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +922,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +958,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +976,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1041,12 +1050,18 @@ int monitorNegativeConstant = 0;
|
|||
// 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
|
||||
// 0 -- PHengLEI.
|
||||
// 1 -- HyFLOW.
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1129,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,11 +1141,13 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
|
@ -1137,6 +1155,8 @@ int nAblation = 0;
|
|||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1193,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1224,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1253,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1300,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1341,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1351,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1400,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1431,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 2;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 2;
|
||||
int nAxisRotateTimes = 1;
|
||||
int axisRotateOrder[] = [1];
|
||||
double axisRotateAngles[]= [90.0];
|
||||
int from_gtype = 2;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 2;
|
||||
int nAxisRotateTimes = 1;
|
||||
int axisRotateOrder[] = [1];
|
||||
double axisRotateAngles[]= [90.0];
|
||||
int from_gtype = 2;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 2;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 1;
|
||||
int axisRotateOrder[] = [1];
|
||||
double axisRotateAngles[]= [90.0];
|
||||
int from_gtype = 2;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE
|
||||
// 1 -- HyperFLOW( PHengLEI ), *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 2;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -19,7 +22,9 @@
|
|||
// 8 -- GMSH, *.msh.
|
||||
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 1;
|
||||
int axisRotateOrder[] = [1];
|
||||
double axisRotateAngles[]= [90.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -19,7 +22,9 @@
|
|||
// 8 -- GMSH, *.msh.
|
||||
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 1;
|
||||
int axisRotateOrder[] = [1];
|
||||
double axisRotateAngles[]= [90.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -19,7 +22,9 @@
|
|||
// 8 -- GMSH, *.msh.
|
||||
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -19,7 +22,9 @@
|
|||
// 8 -- GMSH, *.msh.
|
||||
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -19,7 +22,9 @@
|
|||
// 8 -- GMSH, *.msh.
|
||||
// 9 -- Gridgen type of structured grid, *.dat/*.grd.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
||||
|
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE
|
||||
// 1 -- HyperFLOW( PHengLEI ), *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 2;
|
||||
int nAxisRotateTimes = 1;
|
||||
int axisRotateOrder[] = [1];
|
||||
double axisRotateAngles[]= [90.0];
|
||||
int from_gtype = 2;
|
||||
|
||||
#########################################################################
|
||||
|
|
Binary file not shown.
|
@ -8,6 +8,7 @@
|
|||
// Platform for Hybrid Engineering Simulation of Flows +
|
||||
// China Aerodynamics Research and Development Center +
|
||||
// (C) Copyright, Since 2010 +
|
||||
// PHengLEI 2212 +
|
||||
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
###########################################################################
|
||||
# Default parameters for Grid conversion #
|
||||
|
@ -46,19 +47,24 @@ 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.
|
||||
int axisup = 1;
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
int nAxisRotateTimes = 0;
|
||||
int axisRotateOrder[] = [1, 2, 3];
|
||||
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||
|
||||
// omit_no_bound_bc: What's boundary condition for the type of "no_boundary_condition".
|
||||
// 0 -- Interface. (default)
|
||||
// 1 -- Physical boundary condition, used in Hybrid solver.
|
||||
int omit_no_bound_bc = 0;
|
||||
int omitRepeatInterface = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Grid data type #
|
||||
|
@ -89,7 +95,6 @@ int dumpOldGrid = 0;
|
|||
int numberOfGridFile = 1;
|
||||
string from_gfile = "./grid/rae2822_hybrid2d.cas";
|
||||
string from_gfile1 = "";
|
||||
|
||||
string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
|
||||
|
||||
// ----------------- some advanced choices ------------------------------
|
||||
|
@ -178,7 +183,6 @@ double influencePara = 25.0;
|
|||
which only support one direction.
|
||||
// rotationAngle: The relative angle between two periodic face.
|
||||
which is recorded in degrees.
|
||||
|
||||
int periodicType = 0;
|
||||
double translationLength[] = [0.0, 0.0, 0.0];
|
||||
double rotationAngle = 0.0;
|
||||
|
@ -192,7 +196,6 @@ double rotationAngle = 0.0;
|
|||
// 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;
|
||||
|
@ -207,8 +210,8 @@ int blockIndexOfMark = 0;
|
|||
int cellIndexOfMark[] = [185, 30, 1];
|
||||
|
||||
// parallelStrategy:
|
||||
//! -# 0 : each zone is assigned to the one that defined in grid partition procedure.
|
||||
//! -# 1 : random assigned for each zone or by some else ways.
|
||||
// 0 -- each zone is assigned to the one that defined in grid partition procedure.
|
||||
// 1 -- random assigned for each zone or by some else ways.
|
||||
int parallelStrategy = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -232,7 +235,6 @@ string partition_grid_file = "./grid/sphere_mixed__4.fts";
|
|||
// 1 -- perfect balance.
|
||||
// maxproc -- perfect imbalance.
|
||||
// 1.05 -- recommended.
|
||||
|
||||
int omit_no_bound_bc = 0;
|
||||
int npartmethod = 1;
|
||||
int parallelPartitionMethod = 2;
|
||||
|
@ -253,24 +255,30 @@ int numberOfMultigrid = 1;
|
|||
// intervalStepSample: The step intervals for monitored probes variables file 'sample.dat' saved.
|
||||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual file 'res.dat' saved.
|
||||
// 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 maxSimuStep = 20000;
|
||||
|
||||
int intervalStepFlow = 1000;
|
||||
int intervalStepPlot = 1000;
|
||||
int intervalStepSample = 1000;
|
||||
int intervalStepForce = 100;
|
||||
int intervalStepRes = 10;
|
||||
int ifLowSpeedPrecon = 0;
|
||||
|
||||
// compressible:
|
||||
// 0 -- incompressible flow.
|
||||
// 1 -- compressible flow. (default)
|
||||
int compressible = 1;
|
||||
|
||||
// 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)
|
||||
// Kprec: The coefficient K for the cut-off velocity.
|
||||
// 1.0~3.0 is suggested. (default, 3.0)
|
||||
// preconFarfieldBCMethod: The precondition method for farfield boundary condition.
|
||||
// 0 -- precondition far-field boundary based on riemann invariants.
|
||||
// 1 -- Turkel's simplified far-field boundary condition.
|
||||
int ifLowSpeedPrecon = 0;
|
||||
double Kprec = 3.0;
|
||||
int preconFarfieldBCMethod = 1;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# CFD Control Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
@ -281,9 +289,12 @@ int compressible = 1;
|
|||
// 0 -- the nondimensional conditions.
|
||||
// 1 -- the flight conditions.
|
||||
// 2 -- the experiment conditions.
|
||||
// 3 -- the subsonic boundary conditions.
|
||||
// 3 -- the subsonic boundary conditions. (Useless!)
|
||||
// 4 -- the condition that the velocity, temperature and density are given.
|
||||
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||
//flowInitMethod: Flow field initialization method.
|
||||
// 0 -- The entire flow field is initialized according to Infinite velocity.
|
||||
// 1 -- The velocity near the wall is initialized according to the boundary layer of the plate.
|
||||
// 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.
|
||||
|
@ -303,11 +314,11 @@ int compressible = 1;
|
|||
// condition is radiation equilibrium temperature, and 0.8 is the default value.
|
||||
// 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;
|
||||
int flowInitMethod = 0;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6.5e6;
|
||||
|
@ -321,14 +332,6 @@ double freestream_vibration_temperature = 300.00;
|
|||
//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)).
|
||||
|
||||
//int inflowParaType = 3;
|
||||
//int nsubsonicInlet = 1;
|
||||
//int nsubsonicOutlet = 1;
|
||||
//string inLetFileName = "./bin/subsonicInlet.hypara";
|
||||
//string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//double refDimensionalTemperature = 288.144;
|
||||
//double refDimensionalPressure = 1.01313E05;
|
||||
|
||||
// The velocity, temperature and density are fixed.
|
||||
//int inflowParaType = 4;
|
||||
//double refDimensionalVelocity = 1000.0;
|
||||
|
@ -341,9 +344,15 @@ double freestream_vibration_temperature = 300.00;
|
|||
|
||||
// The MachNumber, temperature and pressure are fixed.
|
||||
//int inflowParaType = 6;
|
||||
//double refDimensionalTemperature = 293;
|
||||
//double refDimensionalTemperature = 293.0;
|
||||
//double refDimensionalPressure = 8886.06;
|
||||
|
||||
// The velocity, temperature and pressure are read from file.
|
||||
//int inflowParaType = 7;
|
||||
//string weatherDataFilePath = "./WRFData/";
|
||||
//double longitude = 110.95
|
||||
//double latitude = 19.61;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
|
||||
double radiationCoef = 0.8;
|
||||
|
@ -357,35 +366,35 @@ 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.
|
||||
double knudsenLength = 1.0; // unit of meter.
|
||||
double refMolecularWeight = 28.9644; // unit of g/mol.
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Spatial Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# Struct Solver *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||
// Using this when solve structered grid or hybrid.
|
||||
// -- "vanleer", "steger", "hlle", "lax_f".
|
||||
// -- "roe", "modified_roe".
|
||||
// -- "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"
|
||||
|
||||
// -- "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";
|
||||
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
# UnStruct Solver or Common *
|
||||
#*******************************************************************
|
||||
#************************************************************************
|
||||
// viscousType: Viscous model.
|
||||
// 0 -- Euler.
|
||||
// 1 -- Lamilar.
|
||||
|
@ -410,11 +419,11 @@ string str_limiter_name = "vanalbada";
|
|||
// 3 -- IDDES.
|
||||
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||
// Using this when solve Unstructered grid or hybrid.
|
||||
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||
// -- "vanleer", "roe", "GMRESRoe", "GMRESSteger", "steger", "kfvs", "lax_f", "hlle",
|
||||
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpw+".
|
||||
// uns_limiter_name: Limiter of Unstruct grid.
|
||||
// -- "barth", "vencat", "vanleer", "minmod".
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st".
|
||||
// -- "barth", "vencat", "vanleer", "minmod",
|
||||
// -- "vanalbada", "smooth", "nnd", "lpz", "1st",
|
||||
// -- "nolim", no limiter.
|
||||
// uns_vis_name: Discretisation method of viscous term.
|
||||
// -- "std", "test", "aver", "new1", "new2".
|
||||
|
@ -442,7 +451,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
|
||||
// AusmpwPlusLimiter: A Limiter to make "function w" not change acutely in AusmpwPlus scheme, default is 1.0.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
|
@ -475,9 +484,9 @@ double roeEntropyScale = 1.0;
|
|||
|
||||
double AusmpwPlusLimiter = 1.0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Temporal Discretisation #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Temporal Discretisation *
|
||||
#************************************************************************
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
|
@ -504,11 +513,18 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 6 -- Jacobian iteration.
|
||||
// 7 -- Line LU-SGS.
|
||||
// 8 -- Matrix LU-SGS.
|
||||
// 9 -- GMRES.
|
||||
// iSimplifyViscousTerm: Simplify the computation of viscous term in the Block LU-SGS method. The default value assigns 1 that could speed up the computation.
|
||||
// Otherwise, the viscous Jacobian matrix Mv should be computed that will increase the memory and time in iteration of the BLUSGS method.
|
||||
// CFLStart: Started cfl number.
|
||||
// CFLEnd: End cfl number.
|
||||
// CFLVaryStep: The number of step when cfl increase from CFLStart to CFLEnd.
|
||||
// GMRESCFLScale : CFL = CFLStart * GMRESCFLScal^iteration.
|
||||
// OriginalTscheme : Used for LUSGS and GMres hybrid computing.
|
||||
// useLUSGSprecond: Initialize flow field for GMRES.
|
||||
// 0 --Initialize by first order Jacobian matrix.
|
||||
// 1 --Initialize by LUSGS.
|
||||
// GMRESInitStep : the number of iteration step of irst order Jacobian matrix or LUSGS for initialize flow field.
|
||||
// ktmax: Dtratio. dt[i] = MIN(dt[i], ktmax * dtmin / vol[i])
|
||||
// swapDq: Communication dq between forward/backward sweep of LUSGS or not, default is 0.
|
||||
// nLUSGSSweeps: Sub iteration of LU-SGS or Block LU-SGS.
|
||||
|
@ -533,7 +549,6 @@ double AusmpwPlusLimiter = 1.0;
|
|||
// 2 -- Pab3D wall function.
|
||||
// RKStage: The number of Runge-Kutta step.
|
||||
// lamda: Cofficient of Runge-Kutta step.
|
||||
|
||||
int iunsteady = 0;
|
||||
double physicalTimeStep = 0.01;
|
||||
double physicalTimeStepDimensional = -0.001;
|
||||
|
@ -543,7 +558,7 @@ int ifStaticsReynoldsStress = 0;
|
|||
int startStatisticStep = 800000;
|
||||
double statisticalTimePeriod = -1.0;
|
||||
int statisticMethod = 0;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
|
||||
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2.
|
||||
|
||||
int methodOfDualTime = 3;
|
||||
int min_sub_iter = 50;
|
||||
|
@ -558,7 +573,10 @@ int isUsePreTwall = 0;
|
|||
double CFLStart = 0.01;
|
||||
double CFLEnd = 10.0;
|
||||
int CFLVaryStep = 500;
|
||||
|
||||
double GMRESCFLScale = 1.0;
|
||||
int OriginalTscheme = 9;
|
||||
int useLUSGSprecond = 1;
|
||||
int GMRESInitStep = 1000;
|
||||
double pMaxForCFL = 0.2;
|
||||
double pMinForCFL = 0.1;
|
||||
double deltaMaxForCFL = 0.2;
|
||||
|
@ -575,7 +593,7 @@ int order = 2;
|
|||
|
||||
double visl_min = 0.01;
|
||||
double turbCFLScale = 1.0;
|
||||
double csrv = 2.0;
|
||||
double csrv = 1.0;
|
||||
double timemax = 1.0e10;
|
||||
double dtsave = -1.0;
|
||||
int maxale = 10;
|
||||
|
@ -591,10 +609,9 @@ double lamda[] = [0.5, 1.0];
|
|||
|
||||
//int RKStage = 4;
|
||||
//double lamda[] = [0.25, 0.33333333333, 0.5, 1.0];
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# File In or Out #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# File In or Out *
|
||||
#************************************************************************
|
||||
// numberOfGridGroups: The number of grid groups.
|
||||
// gridfile: The partitioned Grid file path, using relative path,
|
||||
// which is relative to the working directory.
|
||||
|
@ -618,10 +635,8 @@ double lamda[] = [0.5, 1.0];
|
|||
// 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 = "";
|
||||
|
@ -632,10 +647,12 @@ int cellMethodOrNodeMethod = 0;
|
|||
|
||||
string resSaveFile = "results/res.dat";
|
||||
string turbresfile = "results/turbres.dat";
|
||||
string transitionResFile = "results/transitionRes.dat";
|
||||
string aircoeffile = "results/aircoef.dat";
|
||||
|
||||
string restartNSFile = "results/flow.dat";
|
||||
string turbfile = "results/turb.dat";
|
||||
string transitionFile = "results/transition.dat";
|
||||
|
||||
string visualfile = "results/tecflow.plt";
|
||||
string wall_aircoefile = "results/wall_aircoef.dat";
|
||||
|
@ -645,11 +662,15 @@ string protectionFile0 = "results/flow0.dat";
|
|||
string protectionFile1 = "results/flow1.dat";
|
||||
string wall_heatfluxfile = "results/wall_heatflux.dat";
|
||||
|
||||
string protectionTurbFile0 = "results/turb0.dat";
|
||||
string protectionTurbFile1 = "results/turb1.dat";
|
||||
|
||||
string protectionTransitionFile0 = "results/transition0.dat";
|
||||
string protectionTransitionFile1 = "results/transition1.dat";
|
||||
|
||||
int nDumpSurfaceInfo = 0;
|
||||
string wall_varfile = "";
|
||||
|
||||
string jetDefineFile = "bin/jet.hypara";
|
||||
|
||||
string sixDofFileName = "results/sixDofInfo.dat";
|
||||
string derivativeFileName = "results/identify.dat";
|
||||
string hysteresisFileName = "results/force_beta.plt";
|
||||
|
@ -659,7 +680,8 @@ int plotFieldType = 0;
|
|||
// visualfileType: The file type of visualfile.
|
||||
// 0 -- Tecplot binary.
|
||||
// 1 -- Tecplot ASCII.
|
||||
|
||||
// 2 -- Ensight binary.
|
||||
// 3 -- Ensight ASCII.
|
||||
int visualfileType = 1;
|
||||
|
||||
// samplefileMode: The dump mode of sample file.
|
||||
|
@ -697,21 +719,21 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
|
|||
// -- 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), 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)
|
||||
// -- transition intermittency(intermittency, 51), transition momentum thickness reynolds(MomentumThicknessReynolds, 52),
|
||||
// -- local CFL Number(localCFL, 57), minimal CFL Number(minCFL, 58),
|
||||
// -- overlap iblank(iblank, 81),
|
||||
// -- specific heat ratio(gama, 56), Knudsen number(kn, 60), Damkohler number(Da, 61), vibrational nonequilibrium number(Vi, 62).
|
||||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
//-----------the optional parameters list for the wall boundary condition----------------
|
||||
// nVisualWallVariables: The number of visual variables on wall.
|
||||
// visualWallVariables : dumped variable types, listed as following:
|
||||
// -coefficient of pressure(cp, 0), -coefficient of friction(cf, 1), yplus(2), -non-dimensional heat flux(Q_NonDim, 3), -dimensional heat flux(Q_Dim, 4),
|
||||
// -pressure on wall(pw, 5), -temperature on wall(Tw, 6), -density on wall(rhow, 7), -heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -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), -Grid Reynolds number on wall(Re_w, 23)
|
||||
// -- coefficient of pressure(cp, 0), coefficient of friction(cf, 1), yplus(2), non-dimensional heat flux(Q_NonDim, 3), dimensional heat flux(Q_Dim, 4),
|
||||
// -- pressure on wall(pw, 5), temperature on wall(Tw, 6), density on wall(rhow, 7), heat flux of translational-rotational temperature term(Qtr, 8),
|
||||
// -- 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), Grid Reynolds number on wall(Re_w, 23), Knudsen number(Kn_wall, 24).
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
|
@ -739,7 +761,9 @@ 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), mach(6).
|
||||
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||
// -- dimensioanl_density(7), dimensioanl_u(8), dimensioanl_v(9),
|
||||
// -- dimensioanl_w(10), dimensioanl_pressure(11), dimensioanl_temperature(12).
|
||||
// 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.
|
||||
|
@ -761,12 +785,13 @@ string probesDefineFile = "bin/probes_XYZ.dat";
|
|||
|
||||
int searchCellsMethod = 0;
|
||||
|
||||
int nProbeVariables = 7;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6];
|
||||
int nProbeVariables = 14;
|
||||
int probeVariables[] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];
|
||||
int probeVariablesInterpolationMethod = 0;
|
||||
//-----------------------------------------------------------------------
|
||||
# Turbulence Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
|
||||
#************************************************************************
|
||||
# Turbulence Parameter *
|
||||
#************************************************************************
|
||||
// turbInterval: Iteration number of turbulence.
|
||||
// kindOfTurbSource: Kinds of turbulent source.
|
||||
// 0 -- Original.
|
||||
|
@ -774,15 +799,12 @@ int probeVariablesInterpolationMethod = 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
|
||||
|
||||
|
||||
// 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;
|
||||
int kindOfTurbSource = 0;
|
||||
int mod_turb_res = 0;
|
||||
double turb_relax = 1.0;
|
||||
double freeStreamViscosity = 1.0e-3;
|
||||
double muoo = 3.0;
|
||||
double kwoo = 5.0;
|
||||
|
@ -791,28 +813,27 @@ double turbIntensity = -1.0;
|
|||
int freeturbIntensitySRModify = 0;
|
||||
double freeDecayXLocation = 0.0;
|
||||
int compressibleCorrection = 0;
|
||||
int prandtlNumberCorrection = 0;
|
||||
int transitionMaFix = 1;
|
||||
|
||||
# maximum eddy viscosity (myt/my) max.
|
||||
// maximum eddy viscosity (myt/my) max.
|
||||
double eddyViscosityLimit = 1.0e10;
|
||||
int monitor_vistmax = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# LES Parameter #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# LES Parameter *
|
||||
#************************************************************************
|
||||
// iLES: Create LESSolver or not.
|
||||
// = 1 - Create LESSolver;
|
||||
// != 1 - not.
|
||||
// = 1 -- Create LESSolver;
|
||||
// != 1 -- not.
|
||||
// amplitudeofDisturb: Amplitude of adding disturb.
|
||||
// disturbstep: Unsteady time step or steady iteration of adding random disturb.
|
||||
// iterdisturb: Add random disturb in every sub-iter or only first sub-iter.
|
||||
// = 0 - in only first sub-iter;
|
||||
// != 0 - in every sub-iter.
|
||||
// = 0 -- in only first sub-iter;
|
||||
// != 0 -- in every sub-iter.
|
||||
// ipraddisturb: Add density and pressure disturb or not.
|
||||
// ibodyforce: Add body force in source flux of NS equations or not.
|
||||
// = 0 - not;
|
||||
// != 0 - Add body force.
|
||||
// = 0 -- not;
|
||||
// != 0 -- Add body force.
|
||||
// bodyforce: Body force in source flux of NS equations or not.
|
||||
// utau: friction velocity, using in DNSDisturb.
|
||||
// sgsmodel: subgrid scale model.
|
||||
|
@ -820,23 +841,22 @@ int monitor_vistmax = 0;
|
|||
// = "dsmCom";
|
||||
// = "wale";
|
||||
// = "sigma".
|
||||
// deltaFunctionType: = 1 - MAX(deltai, deltaj, deltak);
|
||||
// = 2 - pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 - Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 - no wall function;
|
||||
// = 1 - van Driest;
|
||||
// = 2 - developed by Dr. Deng Xiaobing;
|
||||
// = 3 - developed by Piomelli.
|
||||
// deltaFunctionType: = 1 -- MAX(deltai, deltaj, deltak);
|
||||
// = 2 -- pow(deltai * deltaj *deltak, 1/3);
|
||||
// = 3 -- Devloped by Scotti.
|
||||
// wallDampingFunctionType: = 0 -- no wall function;
|
||||
// = 1 -- van Driest;
|
||||
// = 2 -- developed by Dr. Deng Xiaobing;
|
||||
// = 3 -- developed by Piomelli.
|
||||
// turbViscousCutType: turbulent viscosity cut type.
|
||||
// = 0 - mu_total = mut + mul;
|
||||
// = 1 - mu_total = max(mut-mul,0)+ mul;
|
||||
// = 2 - mu_total = max(mut ,0)+ mul.
|
||||
// = 0 -- mu_total = mut + mul;
|
||||
// = 1 -- mu_total = max(mut-mul, 0) + mul;
|
||||
// = 2 -- mu_total = max(mut , 0) + mul.
|
||||
// smagConstant: constant of smagorinsky model.
|
||||
// waleConstant: constant of wale model.
|
||||
// filterDirection [3]: filter variables in i, j, k direction or not.
|
||||
// averageDirection[3]: average variables in i, j, k direction or not.
|
||||
// isotropicConstant: constant of isotropic part of SGS stress.
|
||||
|
||||
int iLES = 0;
|
||||
string sgsmodel = "smagorinsky";
|
||||
int deltaFunctionType = 2;
|
||||
|
@ -852,9 +872,9 @@ double testFilterScale = 2.0;
|
|||
int averageWidth = 1;
|
||||
int monitorNegativeConstant = 0;
|
||||
|
||||
//-----------------------------------------------------------------------
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas #
|
||||
//-----------------------------------------------------------------------
|
||||
#************************************************************************
|
||||
# Other Parameters for Hypersonic Non-equilibrium Gas *
|
||||
#************************************************************************
|
||||
// dg_high_order:
|
||||
// 0 -- generic order accuracy.
|
||||
// 1 -- high order accuracy.
|
||||
|
@ -862,9 +882,6 @@ int monitorNegativeConstant = 0;
|
|||
// 0 -- gas model is fixed in the codes.
|
||||
// 1 -- gas model is imported from library files.
|
||||
// isAdaptiveSolver: isAdaptiveSolver = 0 indicates the generic Navier-Stokes solver,
|
||||
// isAdaptiveSolver>0 indicates the HyFlow self-adaptive solver.
|
||||
// 1 -- using HyFlow self-adaptive solver where the switch is controlled by the total iteration steps.
|
||||
// 2 -- using HyFlow self-adaptive solver where the switch is controlled by variation of the key residual.
|
||||
// nm: Equation number of the physics, but is out of commision now.
|
||||
// 4 -- for 2D.
|
||||
// 5 -- for 3D.
|
||||
|
@ -886,14 +903,13 @@ int monitorNegativeConstant = 0;
|
|||
// nEquilibriumGas: the variable is valid when the condition of nchem = 0 is satisfied.
|
||||
// 0 -- perfect gas.
|
||||
// 5, 7, 11 -- equilibrium gas, meanwhile, its value denotes the number of gas component.
|
||||
// nPCWCycleStep: the maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: the maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:the maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// the value equals to or is greater than 1, and 3 is for default value.
|
||||
// nPCWCycleStep: The maximum step number of iteration in the module of computing species mass fractions with the partial catalytic wall(PCW) condition.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nRETCycleStep: The maximum step number of iteration in the module of computing radiation equilibrium temperature on wall.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSLIPCycleStep:The maximum step number of iteration in the module of computing slip temperature, slip velocity and slip species mass fraction.
|
||||
// The value equals to or is greater than 1, and 3 is for default value.
|
||||
// nSlipBCModel: The computational model of slip boundary conditions.
|
||||
|
||||
// 0 -- no slip.
|
||||
// 1 -- the conventional Maxwell slip conditions.
|
||||
// 2 -- the Gokcen slip conditions.
|
||||
|
@ -913,10 +929,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1 -- One-temperature model.
|
||||
// 2 -- Two-temperature model.
|
||||
// 3 -- Three-temperature model.
|
||||
// isUseNoneqCond:
|
||||
// 0 -- compute the source terms without any conditions.
|
||||
// 1 -- compute the source terms using the non-equilibrium condition.
|
||||
// frozenCondition: the threshold value of frozen chemical flow condition, 0.1 is the default value.
|
||||
// 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.
|
||||
// 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 polynomial fitting method.
|
||||
// 2 -- the energy term is computed using the piecewise polynomial fitting method.
|
||||
|
@ -946,14 +965,13 @@ int monitorNegativeConstant = 0;
|
|||
// 1.0 -- proposed by Maxwell.
|
||||
// sqrt(2/PI)~0.8 -- used for "micro-slip", namely the actual velocity slip at the wall.
|
||||
// 1.146 -- proposed for an additional "fictitious" velocity slip.
|
||||
|
||||
// chemicalRelaxCorf: The value is in range of [0.001, 1.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
|
||||
|
||||
// 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.
|
||||
|
@ -965,36 +983,34 @@ int monitorNegativeConstant = 0;
|
|||
// nSpeciesLimit: limitter of gas species
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction
|
||||
// nTurblenceForChemical: the coupled mode of Turblence and Chemical reaction.
|
||||
// 0 -- method 0.
|
||||
// 1 -- method 1.
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid
|
||||
// nViscosityFluxSublevelModified: Modified for ViscosityFlux on Sublevel grid.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef
|
||||
// nViscosityPeModified: Pe Modified for ViscosityCoef.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceModified: Modified on ChemcalSource
|
||||
// nChemcalSourceModified: Modified on ChemcalSource.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nChemcalSourceEsMethod: Modified on ChemcalSource
|
||||
// 0 -- approximation algorithm 1 (Ori.)
|
||||
// 1 -- approximation algorithm 2 (New)
|
||||
|
||||
// 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
|
||||
|
||||
// veTemperatureMinModified: Modified on the minimum of Tve for Cvvs.
|
||||
// 0 -- not used.
|
||||
// 1 -- used.
|
||||
// nDiagonalModified: Modified on Diagonal.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nDiagonalModifiedTurb: Modified on Diagonal for turbulence.
|
||||
// 0 -- not used.
|
||||
// 1 -- new.
|
||||
// nGradPrimtiveMethod:
|
||||
// 0 -- Ori.
|
||||
// 1 -- new
|
||||
// 1 -- new.
|
||||
// nAblation:
|
||||
// 0 -- The wall ablation is not computed.
|
||||
// 1 -- The wall ablation is computed.
|
||||
|
@ -1017,8 +1033,8 @@ int monitorNegativeConstant = 0;
|
|||
// "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 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 struct solver mixing two species<65><73>SpeciesA, SpeciesB<73><42>.
|
||||
// for unstruct solver mixing multi-species<65><73>O2 NO CO CO2 H2 N2 Air CH4<48><34>.
|
||||
// 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.
|
||||
|
@ -1040,13 +1056,16 @@ int monitorNegativeConstant = 0;
|
|||
// firstStepError : the residual error of the first step iteration for the self-adaptive calculation.
|
||||
// secondStepError : the residual error of the second step iteration for the self-adaptive calculation.
|
||||
// thirdStepError : the residual error of the third step iteration for the self-adaptive calculation.
|
||||
// useHyflowSetting : Setting for HyFLOW GUI.
|
||||
// 0 -- PHengLEI
|
||||
// 1 -- HyFLOW
|
||||
// nProtectData: Use the continuation file data protection mechanism.
|
||||
// 0 -- no
|
||||
// 1 -- yes
|
||||
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// nTvChange: Judge whether the Tv equals Ttr.
|
||||
// 0 -- yes.
|
||||
// 1 -- no.
|
||||
// isMoleFractionType: 1 indicates the mass fractions, or else the mole fractions.
|
||||
// nFraction: the initial fractions type of species.
|
||||
// 0 -- mass fraction.
|
||||
// 1 -- mole fraction.
|
||||
int dg_high_order = 0;
|
||||
int iapplication = 0;
|
||||
int isAdaptiveSolver = 0;
|
||||
|
@ -1114,6 +1133,7 @@ double densityMin = 1.0e-8;
|
|||
double densityMinFactor = 0.1;
|
||||
double tAdjustmentFactor = 10.0;
|
||||
double iniSpeedCoef = 1.0;
|
||||
int iniSpeedMode = 0;
|
||||
|
||||
int nDebug = 0;
|
||||
int nSpeciesLimit = 1;
|
||||
|
@ -1125,18 +1145,21 @@ int nChemcalSourceEsMethod = 1;
|
|||
int nMaxStepTemperature = 5;
|
||||
int veTemperatureMinModified = 1;
|
||||
int nDiagonalModified = 0;
|
||||
int nDiagonalModifiedTurb = 0;
|
||||
int nGradPrimtiveMethod = 1;
|
||||
int nInviscidFluxModify = 1;
|
||||
int nQlLimitMethod = 2;
|
||||
int nSpeciesForWallMethod = 1;
|
||||
int nDensityForWallMethod = 0;
|
||||
int wallMultiTemperature = 0;
|
||||
|
||||
int nProtectData = 0;
|
||||
int useHyflowSetting = 0;
|
||||
int nAblation = 0;
|
||||
int isInjection = 0;
|
||||
int nViscosityModel = 0;
|
||||
int nMarsModel = 0;
|
||||
int nTvChange = 0;
|
||||
int isMoleFractionType = 0;
|
||||
string gasfile = "DK5";
|
||||
//string gasfile = "./chemical/Dunn-Kang_air5s11r.dat";
|
||||
string speciesName = "O, O2, NO, N, N2";
|
||||
|
@ -1173,9 +1196,17 @@ double molecularWeightSpeciesB = 30.0;
|
|||
//string speciesName = "O2, N2";
|
||||
//string initMassFraction = "1.0, 0.0";
|
||||
|
||||
int nFraction = 0;
|
||||
int nContinueModel = 0;
|
||||
int nChemicalFlowStep = 0;
|
||||
int ifStartFromPerfectGasResults = 0;
|
||||
int isUseNoneqCond = 0;
|
||||
double frozenCondition = 0.01;
|
||||
|
||||
int nLeakageMonitor = 0;
|
||||
double totalLeakageVolume = 1000.0;
|
||||
double monitorThresholdValue = 0.05;
|
||||
double sprayFactor = 0.0;
|
||||
|
||||
#########################################################################
|
||||
// Multi-Grid parameters.
|
||||
|
@ -1196,7 +1227,6 @@ int ifStartFromPerfectGasResults = 0;
|
|||
// 1 -- zero order.
|
||||
// 2 -- first-order. (default)
|
||||
// mgCorrectionLimit: Multi-grid correction limit.
|
||||
|
||||
int nMGLevel = 1;
|
||||
int MGCoarsestIteration = 1;
|
||||
int MGPreIteration = 1;
|
||||
|
@ -1226,9 +1256,9 @@ string holeFullFileName = "./grid/holeFullFile.dat";
|
|||
string linkFileName = "./grid/topology.dat";
|
||||
string zoneInverseFileName = "./grid/zoneInverseMapping.inp";
|
||||
|
||||
#########################################################################
|
||||
# High Order Struct Solver #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# High Order Struct Solver *
|
||||
#************************************************************************
|
||||
// isFVMOrFDM:
|
||||
// 0 -- NSSolverStruct using Finite Volume Method.
|
||||
// 1 -- NSSolverStruct using Finite Differ Method.
|
||||
|
@ -1273,10 +1303,29 @@ int allReduceStep = 1;
|
|||
// codeOfOversetGrid: Overlapping(overset) grid or not.
|
||||
// 0 -- NON-overlapping grid.
|
||||
// 1 -- Overlapping grid.
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation
|
||||
// oversetInterpolationMethod: the method of overset interpolation while field simulation.
|
||||
// 0 -- set the acceptor cell value by donor cell value.
|
||||
// 1 -- set the acceptor cell value by distance weight of donor cell value.
|
||||
|
||||
// readOversetFileOrNo: Whether to read overset-file(.ovs) that has been generated.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// symetryOrNot: If there exist symetryplanes(XY plane, the coordinate of Z direction is 0) in
|
||||
// the current overset grid(only for three dimension).
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// readInAuxiliaryInnerGrid: Whether to read auxiliary inner grid.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
// walldistMainZone: The initial value of background grid which does not exist wall boundary condition.
|
||||
// toleranceForOversetSearch: The tolerance of overset searching zone to judge whether the obtained node is in the current computing cell.
|
||||
// toleranceForOversetBox: The tolerance of building the minimum box of computing cells in the overlapping region.
|
||||
// twoOrderInterpolationOrNot: The number of interpolated cell layers in the overlapping boundary.
|
||||
// 0 -- one layer.
|
||||
// 1 -- two layers.
|
||||
// keyEnlargeOfActiveNodes: The number of enlarged overset-boundary layers in the buffer region.
|
||||
// outTecplotOverset: Whether to dump out the flowfield data after the progress of overset configure.
|
||||
// 0 -- no.
|
||||
// 1 -- yes.
|
||||
int codeOfOversetGrid = 0;
|
||||
int oversetInterpolationMethod = 0;
|
||||
int readOversetFileOrNot = 0;
|
||||
|
@ -1295,7 +1344,6 @@ int twoOrderInterpolationOrNot = 0;
|
|||
int keyEnlargeOfActiveNodes = 0;
|
||||
int outTecplotOverset = 0;
|
||||
int outPutOversetVisualization = 0;
|
||||
|
||||
int numberOfMovingBodies = 2;
|
||||
|
||||
// ----------------- ALE configuration ------------------------------
|
||||
|
@ -1306,34 +1354,40 @@ 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;
|
||||
int strategyForFaceNormalVelocity = 0; // 0-By Sweeping volume; 1-By face center 1st; 2-By face center 2nd.
|
||||
int strategyForGCLSource = 0; // 0-present; 1-Ahn.
|
||||
|
||||
//0:1st-Admas-Bashforth; 1:2nd-Admas-Bashforth; 2:1st-Implicit-Euler; 3:2nd-Implicit Euler; 4:2nd-Adams-Moulton; 5:3rd-Adams-Moulton
|
||||
// 0: 1st-Admas-Bashforth; 1: 2nd-Admas-Bashforth; 2: 1st-Implicit-Euler; 3: 2nd-Implicit Euler; 4: 2nd-Adams-Moulton; 5: 3rd-Adams-Moulton.
|
||||
int methodForKineticEquation = 0;
|
||||
double relaxParameterOfKinetic = 1.0;
|
||||
|
||||
#########################################################################
|
||||
# motive information #
|
||||
#########################################################################
|
||||
#************************************************************************
|
||||
# motive information *
|
||||
#************************************************************************
|
||||
int numberOfMovingBodies = 1;
|
||||
|
||||
############################## body0 ##############################
|
||||
//mass of parts
|
||||
// mass of parts.
|
||||
double mass_0 = 1.0;
|
||||
//mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz
|
||||
// gravity of parts (along negative direction in Y-axis, eg. 9.8).
|
||||
double gravity_0 = 0.0;
|
||||
// mass matrix of parts Ixx Iyy Izz Ixy Ixz Iyz.
|
||||
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. xc yc zc
|
||||
// initial six DOF position information of parts. xc yc zc.
|
||||
double massCenter_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF position information of parts. angleX angleY angleZ
|
||||
// if reset mass center while restart.
|
||||
int resetMassCenter_0 = 0;
|
||||
// position offset of parts. dx dy dz.
|
||||
double massCenterDxyz_0[] = 0.0, 0.0, 0.0;
|
||||
// initial six DOF position information of parts. angleX angleY angleZ.
|
||||
double attitudeAngle_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. vc vy vz
|
||||
// initial six DOF move information of parts. vc vy vz.
|
||||
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
//initial six DOF move information of parts. omigX omigY omigZ
|
||||
// initial six DOF move information of parts. omigX omigY omigZ.
|
||||
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||
// the object that the parts belong to.
|
||||
int fartherIndex_0 = -1;
|
||||
//the assembly position of the parts. xc yc zc angleX angleY angleZ
|
||||
// the assembly position of the parts. xc yc zc angleX angleY angleZ.
|
||||
double configPamameter_0[] = 0.0, 0.0, 0.0, 0.0, 0.0, 0.0;
|
||||
// the move pattern of the parts.
|
||||
// -1 given motion partten.
|
||||
|
@ -1349,23 +1403,24 @@ 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
|
||||
// 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
|
||||
// dimensional physical time for additional force(s).
|
||||
double addedForceTime_0[] = 0.0;
|
||||
// additional force(inertia system) fX fY fZ.
|
||||
double addedForce_0[] = 0.0, 0.0, 0.0;
|
||||
//additional moment of Force (system axis) mX mY mZ
|
||||
// additional moment(inertia system) mX mY mZ.
|
||||
double addedMoment_0[] = 0.0, 0.0, 0.0;
|
||||
// the deformation method of the parts.
|
||||
int morphing_0 = 0;
|
||||
|
||||
// post indentify
|
||||
// post indentify.
|
||||
int integralOrder = 4;
|
||||
|
||||
|
||||
// ---------------- ATP read --------------------------------------------
|
||||
//@int inflowParaType = 0;
|
||||
//@double refReNumber = 6.5e6;
|
||||
|
@ -1379,18 +1434,34 @@ int integralOrder = 4;
|
|||
//@string outLetFileName = "./bin/subsonicOutlet.hypara";
|
||||
//@double refDimensionalVelocity = 0;
|
||||
//@double refDimensionalDensity = 0;
|
||||
|
||||
#########################################################################
|
||||
# Old Parameter #
|
||||
#########################################################################
|
||||
//@string weatherDataFilePath = "./WRFData/";
|
||||
//@double longitude = 110.95
|
||||
//@double latitude = 19.61;
|
||||
#************************************************************************
|
||||
# Old Parameter *
|
||||
#************************************************************************
|
||||
int isPlotVolumeField = 0;
|
||||
|
||||
#************************************************************************
|
||||
# partial flow field setting Parameter *
|
||||
#************************************************************************
|
||||
//int nPartialParameter = 0; // 0/1/2
|
||||
//int nNumberOfPartialField = 0; //
|
||||
//int nStartGridIndex[] = [0];
|
||||
//int nEndGridIndex[] = [0];
|
||||
|
||||
#########################################################################
|
||||
# Incompressible Parameter #
|
||||
#########################################################################
|
||||
//double partialCFL[] = [0.0];
|
||||
//double partialSpeedCoef[] = [0.0];
|
||||
//double partialSpeed[] = [0.0];
|
||||
//double partialAttackd[] = [0.0];
|
||||
//double partialSlide[] = [0.0];
|
||||
//double partialPressure[] = [0.0];
|
||||
//double partialTemperature[] = [0.0];
|
||||
//double partialMassFractions[] = [0.0];
|
||||
|
||||
#************************************************************************
|
||||
# Incompressible Parameter *
|
||||
#************************************************************************
|
||||
int isSolveEnergyEquation = 0;
|
||||
int isSolveTurbEquation = 0;
|
||||
int isSolveSpeciesEquation = 0;
|
||||
|
|
@ -7,17 +7,17 @@
|
|||
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||
|
||||
int maxSimuStep = 1;
|
||||
int maxSimuStep = 8000;
|
||||
|
||||
int intervalStepFlow = 1;
|
||||
int intervalStepPlot = 1;
|
||||
int intervalStepForce = 1;
|
||||
int intervalStepRes = 1;
|
||||
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;
|
||||
int ifLowSpeedPrecon = 1;
|
||||
|
||||
#########################################################################
|
||||
# Inflow Parameter #
|
||||
|
@ -41,16 +41,16 @@ int ifLowSpeedPrecon = 0;
|
|||
// 1 inch = 0.0254m.
|
||||
// 1 foot = 12 inches = 0.3048m.
|
||||
// 1 yard = 3 feet = 0.9144m.
|
||||
// forceRefenenceLength, forceRefenenceLengthSpanWise, forceRefenenceArea: Reference length, SpanWise length and area, independent of grid unit.
|
||||
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
|
||||
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
|
||||
|
||||
double refMachNumber = 0.2;
|
||||
double attackd = 19.00;
|
||||
double attackd = 2;
|
||||
double angleSlide = 0.00;
|
||||
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 9e6;
|
||||
double refDimensionalTemperature = 288.0;
|
||||
double refReNumber = 6.5e6;
|
||||
double refDimensionalTemperature = 288.15;
|
||||
|
||||
//int inflowParaType = 1;
|
||||
//double height = 0.001;
|
||||
|
@ -81,14 +81,14 @@ double TorqueRefZ = 0.0; // unit of meter.
|
|||
// 2 -- DDES.
|
||||
// 3 -- IDDES.
|
||||
|
||||
//int viscousType = 0;
|
||||
//string viscousName = "Euler";
|
||||
int viscousType = 0;
|
||||
string viscousName = "Euler";
|
||||
|
||||
//int viscousType = 1;
|
||||
//string viscousName = "laminar";
|
||||
|
||||
int viscousType = 3;
|
||||
string viscousName = "1eq-sa";
|
||||
//int viscousType = 3;
|
||||
//string viscousName = "1eq-sa";
|
||||
|
||||
//int viscousType = 4;
|
||||
//string viscousName = "2eq-kw-menter-sst";
|
||||
|
@ -136,8 +136,8 @@ double venkatCoeff = 50.0;
|
|||
|
||||
int iunsteady = 0;
|
||||
|
||||
double CFLEnd = 10.0;
|
||||
|
||||
double CFLEnd = 5.0;
|
||||
double LUSGSTolerance = 0.1;
|
||||
int nLUSGSSweeps = 1;
|
||||
|
||||
#########################################################################
|
||||
|
@ -163,7 +163,7 @@ 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/updatedgrid.fts";
|
||||
string gridfile = "./grid/naca.fts";
|
||||
int plotFieldType = 0;
|
||||
|
||||
// ----------------- Advanced Parameters, DO NOT care it ----------------
|
||||
|
@ -177,8 +177,8 @@ int plotFieldType = 0;
|
|||
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||
// Variables order must from small to big.
|
||||
|
||||
int nVisualVariables = 1;
|
||||
int visualVariables[] = [81];
|
||||
int nVisualVariables = 8;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||
|
||||
// limitVariables: Limit model (It is useful only if limitVector is 0).
|
||||
// 0 -- limit only for pressure and denstiny, then get the min value.
|
||||
|
@ -193,3 +193,4 @@ int visualVariables[] = [81];
|
|||
int reconmeth = 1;
|
||||
int limitVariables = 0;
|
||||
int limitVector = 0;
|
||||
double MUSCLCoefXk = 0.333333;
|
|
@ -4,9 +4,12 @@
|
|||
// 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.
|
||||
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||
// axisRotateOrder : axis rotating order.
|
||||
// 1 -- X-axis.
|
||||
// 2 -- Y-axis.
|
||||
// 3 -- Z-axis.
|
||||
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||
// from_gtype: Type of grid data type in grid conversion process.
|
||||
// -1 -- MULTI_TYPE.
|
||||
// 1 -- PHengLEI, *.fts.
|
||||
|
@ -18,7 +21,9 @@
|
|||
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||
// 8 -- GMSH, *.msh.
|
||||
int gridtype = 1;
|
||||
int axisup = 1;
|
||||
int nAxisRotateTimes = 1;
|
||||
int axisRotateOrder[] = [1];
|
||||
double axisRotateAngles[]= [90.0];
|
||||
int from_gtype = 3;
|
||||
|
||||
#########################################################################
|
||||
|
@ -26,5 +31,5 @@ int from_gtype = 3;
|
|||
#########################################################################
|
||||
// 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/updatedgrid.grd";
|
||||
string out_gfile = "./grid/updatedgrid.fts";
|
||||
string from_gfile = "./grid/naca.grd";
|
||||
string out_gfile = "./grid/naca.fts";
|
|
@ -15,11 +15,11 @@ string defaultParaFile = "./bin/cfd_para.hypara";
|
|||
// 2 -- Wall distance computation for turb-solver.
|
||||
// 3 -- Grid partition.
|
||||
// 4 -- Knowledge repository / examples of PHengLEI-API.
|
||||
int ndim = 3;
|
||||
int ndim = 2;
|
||||
int nparafile = 1;
|
||||
|
||||
int nsimutask = 0;
|
||||
string parafilename = "./bin/cfd_para_subsonic.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";
|
||||
|
@ -34,17 +34,23 @@ string parafilename = "./bin/cfd_para_subsonic.hypara";
|
|||
//int nsimutask = 3;
|
||||
//string parafilename = "./bin/partition.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 = 14;
|
||||
//string parafilename = "./bin/integrative_solver.hypara";
|
||||
|
||||
//int nsimutask = 22;
|
||||
//string parafilename = "./bin/grid_para.hypara";
|
||||
//int nsimutask = 15;
|
||||
//string parafilename = "./bin/gridcheck_solver.hypara";
|
||||
|
||||
//int nsimutask = 99;
|
||||
//string parafilename = "./bin/post_processing.hypara";
|
||||
|
@ -54,3 +60,4 @@ int numberOfGridProcessor = 0;
|
|||
// ATP read
|
||||
//@string parafilename1 = ""
|
||||
//@string parafilename2 = "";
|
||||
afilename2 = "";
|
Loading…
Reference in New Issue