V2171 A01

This commit is contained in:
hexianyao 2021-06-26 20:12:55 +08:00
parent 4b19efaef1
commit 910fd98285
10 changed files with 377 additions and 333 deletions

View File

@ -26,15 +26,7 @@
// multiblock: Multi-block grid or not, only for structured grid conversion. // multiblock: Multi-block grid or not, only for structured grid conversion.
// 0 -- Not. // 0 -- Not.
// 1 -- Yes. // 1 -- Yes.
// grid_database_index: Case of typical case, only for gridobj=0.
// 1 -- Laminar flat plate of subsonic flow.
// 2 -- Laminar flat plate of supersonic flow.
// 3 -- Turbulent flat plate of subsonic flow.
// 4 -- Turbulent flat plate of supersonic flow.
// iadapt: Adaptation number for unstructure grid. // iadapt: Adaptation number for unstructure grid.
// iovrlap: Overlapping(overset) grid or not.
// 0 -- NON-overlapping grid.
// 1 -- Overlapping grid.
// SymmetryFaceVector: The vector of symmetry face. // SymmetryFaceVector: The vector of symmetry face.
// 0 -- X axis. // 0 -- X axis.
// 1 -- Y axis. // 1 -- Y axis.
@ -42,9 +34,7 @@
int gridtype = 0; int gridtype = 0;
int gridobj = 1; int gridobj = 1;
int multiblock = 0; int multiblock = 0;
int grid_database_index = 3;
int iadapt = 0; int iadapt = 0;
int iovrlap = 0;
int SymmetryFaceVector = 1; int SymmetryFaceVector = 1;
// axisup: Type of Cartisien coordinates system, used in grid conversion. // axisup: Type of Cartisien coordinates system, used in grid conversion.
@ -89,22 +79,18 @@ string out_gfile = "./grid/flat_laminr_133_85_2d.fts";
// iunsteady: The Grid is for unsteady simulation or not. // iunsteady: The Grid is for unsteady simulation or not.
int iunsteady = 0; int iunsteady = 0;
int iale = 0; int iale = 0;
int codeOfAleModel = 0;
// fileformat: Ustar Grid file format. // fileformat: Ustar Grid file format.
// 0 -- BINARY. // 0 -- BINARY.
// 1 -- ASCII. // 1 -- ASCII.
int fileformat = 0; int fileformat = 0;
// .skl meaning skeleton.
string original_grid_info_file = "./grid/FLUENT_test.skl";
// Parameters for hybrid solver. // Parameters for hybrid solver.
// mixgrid_uns: path of unstructure grid file for hybrid solver, *.fts type. // mixgrid_uns: path of unstructure grid file for hybrid solver, *.fts type.
// mixgrid_str: path of structure grid file for hybrid solver, *.fts type. // mixgrid_str: path of structure grid file for hybrid solver, *.fts type.
// mixgrid_str_bc: path of structure grid boundary condition file for hybrid solver.
string mixgrid_uns = "./grid/rae2822_uns2d_4.fts"; string mixgrid_uns = "./grid/rae2822_uns2d_4.fts";
string mixgrid_str = "./grid/flat_laminr_133_85_2d.fts"; string mixgrid_str = "./grid/flat_laminr_133_85_2d.fts";
string mixgrid_str_bc = "./grid/flat_laminr_133_85_2d.inp";
// Some parameters for structured overlapping grid. // Some parameters for structured overlapping grid.
int codeOfDigHoles = 1; int codeOfDigHoles = 1;
@ -176,6 +162,11 @@ int traceMark = 0;
int blockIndexOfMark = 0; int blockIndexOfMark = 0;
int cellIndexOfMark[] = [185,30,1]; int cellIndexOfMark[] = [185,30,1];
// parallel Strategy:
//! -# 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;
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
# File path # # File path #
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
@ -253,12 +244,6 @@ int compressible = 1;
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition. // refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
// height: Fly height, unit of km. // height: Fly height, unit of km.
// wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition. // wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition.
// dump_Q: Dump out thermal flux Q of solid wall.
// 0 -- no dump out.
// 1 -- dump out wall Q only.
// 2 -- dump out wall Q & the typical position Q of ball.
// 3 -- dump out wall Q & the typical position Q of cone.
// 4 -- dump out wall Q & the typical position Q of double sphere.
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like: // gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
// 1 dm = 0.1 m. // 1 dm = 0.1 m.
// 1 cm = 0.01 m. // 1 cm = 0.01 m.
@ -296,11 +281,11 @@ double freestream_vibration_temperature = 10000.00;
//double refDimensionalPressure = 1.01313E05; //double refDimensionalPressure = 1.01313E05;
double wallTemperature = -1.0; double wallTemperature = -1.0;
int dump_Q = 0;
double radiationCoef = 0.8; double radiationCoef = 0.8;
double gridScaleFactor = 1.0; double gridScaleFactor = 1.0;
int numberOfAerodynamicForceComponents = 1;
double forceRefenenceLengthSpanWise = 1.0; // unit of meter. double forceRefenenceLengthSpanWise = 1.0; // unit of meter.
double forceRefenenceLength = 1.0; // unit of meter. double forceRefenenceLength = 1.0; // unit of meter.
double forceRefenenceArea = 1.0; // unit of meter^2. double forceRefenenceArea = 1.0; // unit of meter^2.
@ -410,7 +395,6 @@ double venkatCoeff = 5.0;
int reconmeth = 1; int reconmeth = 1;
int limitVariables = 0; int limitVariables = 0;
int limitVector = 0; int limitVector = 0;
double limit_angle = 0;
double skewnessAngle = 60.0; double skewnessAngle = 60.0;
int roeEntropyFixMethod = 3; int roeEntropyFixMethod = 3;
@ -454,7 +438,7 @@ double roeEntropyScale = 1.0;
// 1 --Global. // 1 --Global.
// visl_min: Minimum value of laminar viscosity coefficient. // visl_min: Minimum value of laminar viscosity coefficient.
// turbCFLScale: Turbulence model cfl number factor. // turbCFLScale: Turbulence model cfl number factor.
// iale: Arbitrary Lagrangian-Eulerian method. // codeOfAleModel: Arbitrary Lagrangian-Eulerian method.
// 0 -- no ALE method. // 0 -- no ALE method.
// 1 -- ALE method for non-moving grids. // 1 -- ALE method for non-moving grids.
// 2 -- ALE method for moving grids. // 2 -- ALE method for moving grids.
@ -471,7 +455,9 @@ double physicalTimeStep = 0.01;
int ifStartFromSteadyResults = 0; int ifStartFromSteadyResults = 0;
int ifStaticsFlowField = 0; int ifStaticsFlowField = 0;
int startStatisticStep = 800000; int startStatisticStep = 800000;
int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2;
int methodOfDualTime = 3;
int min_sub_iter = 50; int min_sub_iter = 50;
int max_sub_iter = 50; int max_sub_iter = 50;
double tol_sub_iter = 0.01; double tol_sub_iter = 0.01;
@ -493,14 +479,13 @@ int order = 2;
double visl_min = 0.01; double visl_min = 0.01;
double turbCFLScale = 1.0; double turbCFLScale = 1.0;
double csrv = 2.0;
double timemax = 1.0e10; double timemax = 1.0e10;
double dtsave = -1.0; double dtsave = -1.0;
int iale = 0; int codeOfAleModel = 0;
int ialetype = 2; int aleStartStrategy = -1;
int maxale = 10; int maxale = 10;
double dtau = 0.001; double dtau = 0.001;
double dtau_max = 1E-01;
int wallFunctionType = 0; int wallFunctionType = 0;
@ -522,7 +507,7 @@ double lamda[] = 0.5, 1.0;
// IMPORTANT WARNING: The file index should be ignored, // IMPORTANT WARNING: The file index should be ignored,
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts, // e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
// please use 'rae2822_hybrid2d__4.fts' here! // please use 'rae2822_hybrid2d__4.fts' here!
// isPlotVolumeField: If dump out the field results to visulization. // plotFieldType: If dump out the field results to visulization.
// walldistMethod: The method to compute wall distance. // walldistMethod: The method to compute wall distance.
// 0 -- accurate but not fast enough. // 0 -- accurate but not fast enough.
// 1 -- fast but not accurate enough. // 1 -- fast but not accurate enough.
@ -550,22 +535,18 @@ string restartNSFile = "results/flow.dat";
string turbfile = "results/turb.dat"; string turbfile = "results/turb.dat";
string visualfile = "results/tecflow.plt"; string visualfile = "results/tecflow.plt";
string Qwall_file = "results/Qwall.dat";
string wall_aircoefile = "results/wall_aircoef.dat"; string wall_aircoefile = "results/wall_aircoef.dat";
string probesflowfile = "results/sample.dat"; string probesflowfile = "results/sample.dat";
string surfacefile = "";
int nDumpSurfaceInfo = 0; int nDumpSurfaceInfo = 0;
string wall_varfile = ""; string wall_varfile = "";
string componentDefineFile = "bin/component.hypara";
string jetDefineFile = "bin/jet.hypara"; string jetDefineFile = "bin/jet.hypara";
string componentforcefile = "results/component_aircoef.dat"; string overset_gridfile = "results/iblank.ovs";
string sixDofFileName = "results/sixDofInfo.dat";
string overset_gridfile = "iblank.ovs"; int plotFieldType = 0;
int isPlotVolumeField = 0;
// visualfileType: The file type of visualfile. // visualfileType: The file type of visualfile.
// 0 -- Tecplot binary. // 0 -- Tecplot binary.
@ -600,7 +581,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0];
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21), // -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21),
// -- vibration temperature(Tv, 33), electron temperature(Te, 34), vibrational energy(Ev, 35), electric energy(Ee, 36), // -- 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), // -- 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). // -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), iblank(81).
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
// Variables order must from small to big. // Variables order must from small to big.
int nVisualVariables = 8; int nVisualVariables = 8;
@ -610,19 +591,48 @@ int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
// 1 -- Turbulent flat plate. // 1 -- Turbulent flat plate.
int dumpStandardModel = 0; int dumpStandardModel = 0;
// ifSetProbesToMonitor: Set probes location to Monitor. // ifSetDataMonitor: Whether to set the data monitor.
// 0 -- Do not monitor. // 0 -- No.
// 1 -- To monitor and save data to files. // 1 -- Yes.
// probesDefineFile: probes location information file. // dataMonitorType: The type of data Monitor.
// 0 -- Probes data monitor.
// 1 -- Lines data monitor.
// 2 -- Surfaces data monitor.
// probesDefineFile: Probes location information file.
// nLines: The number of lines need to be monitored.
// linesDefineFile: Lines location information file.
// nSurfaces: The number of surfaces need to be monitored.
// surfacesDefineFile: Surfaces location information file.
// searchCellsMethod: method to search the cell of each probe.
// 0 -- Nearest cell to the probe.
// 1 -- Real cell where the probe is located.
// nProbeVariables: Number of variables want to be dumped for probes monitered. // nProbeVariables: Number of variables want to be dumped for probes monitered.
// probeVariables : Variable types dumped, listed as following: // probeVariables : Variable types dumped, listed as following:
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5). // -- density(0), u(1), v(2), w(3), pressure(4), temperature(5).
// Important Warning: Array size of probeVariables MUST be equal to nProbeVariables!!! // Important Warning: Array size of probeVariables MUST be equal to nProbeVariables!!!
// probeVariables order must from small to big. // probeVariables order must from small to big.
int ifSetProbesToMonitor = 0; // probeVariablesInterpolationMethod: Interpolation method used to compute the probe variables.
string probesDefineFile = "bin/probes_location.hypara"; // 0 -- Take the value of probe's cell as probe real value.
// 1 -- Interpolation from probe's and neighbouring cell to probe.
// 2 -- Interpolation from probe's cell nodes to probe.
int ifSetDataMonitor = 0;
int dataMonitorType = 0;
string probesDefineFile = "bin/probes_XYZ.dat";
//int dataMonitorType = 1;
//int nLines = 1;
//string linesDefineFile = "bin/lines_XYZ.dat";
//int dataMonitorType = 2;
//int nSurfaces = 4;
//string surfacesDefineFile = "bin/surfaces_XYZ.dat";
int searchCellsMethod = 0;
int nProbeVariables = 6; int nProbeVariables = 6;
int probeVariables[] = [0, 1, 2, 3, 4, 5]; int probeVariables[] = [0, 1, 2, 3, 4, 5];
int probeVariablesInterpolationMethod = 0;
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
# Turbulence Parameter # # Turbulence Parameter #
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
@ -634,19 +644,17 @@ int probeVariables[] = [0, 1, 2, 3, 4, 5];
// mod_turb_res: If modify the residuals for the cells next to the wall or not, default is 0. // mod_turb_res: If modify the residuals for the cells next to the wall or not, default is 0.
int turbInterval = 1; int turbInterval = 1;
int turb_vis_kind = 2;
int kindOfTurbSource = 0; int kindOfTurbSource = 0;
int mod_turb_res = 0; int mod_turb_res = 0;
double turb_relax = 1.0; double turb_relax = 1.0;
double turb_min_coef = 1.0e-1;
double freeStreamViscosity = 1.0e-3; double freeStreamViscosity = 1.0e-3;
double muoo = 1.0e-1; double muoo = 3.0;
double kwoo = 1.0; double kwoo = 5.0;
int transitionType = 0;
double turbIntensity = -1.0;
# maximum eddy viscosity (myt/my) max. # maximum eddy viscosity (myt/my) max.
double eddyViscosityLimit = 1.0e10; double eddyViscosityLimit = 1.0e10;
double sdilim = 1.0e20;
double coef_kvist = 1.0;
int monitor_vistmax = 0; int monitor_vistmax = 0;
//----------------------------------------------------------------------- //-----------------------------------------------------------------------
@ -751,11 +759,6 @@ int iapplication = 0;
int iCodeBranch = 0; int iCodeBranch = 0;
int nm = 5; int nm = 5;
// MHD
double bxoo = 0.0;
double byoo = 0.0;
double bzoo = 0.0;
double refGama = 1.4; double refGama = 1.4;
double prl = 0.72; double prl = 0.72;
double prt = 0.90; double prt = 0.90;
@ -878,6 +881,30 @@ double MUSCLCoefXk = -1;
double MUSCLCoefXb = 1.0; double MUSCLCoefXb = 1.0;
int allReduceStep = 1; int allReduceStep = 1;
// ----------------- overlap configuration ------------------------------
// codeOfOversetGrid: Overlapping(overset) grid or not.
// 0 -- NON-overlapping grid.
// 1 -- Overlapping grid.
int codeOfOversetGrid = 0;
int codeOfOversetSlipGrid = 0;
int readOversetFileOrNot = 0;
int symetryOrNot = 0;
int readInAuxiliaryInnerGrid = 1;
int readInAuxiliaryOuterGrid = 0;
int readInSklFileOrNot = 0;
string auxiliaryInnerGrid0 = "./grid/aux-upper.fts";
string auxiliaryInnerGrid1 = "./grid/aux-lower.fts";
string auxiliaryInnerGrid2 = "";
string oversetGridFileName = "./grid/overlap.ovs";
double walldistMainZone = 1.0
double toleranceForOversetSearch = 1.0e-3;
double toleranceForOversetBox = 1.0e-3;
int twoOrderInterpolationOrNot = 0;
int keyEnlargeOfActiveNodes = 0;
int outTecplotOverset = 0;
int numberOfMovingBodies = 2;
// ---------------- ATP read -------------------------------------------- // ---------------- ATP read --------------------------------------------
//@int inflowParaType = 0; //@int inflowParaType = 0;
//@double refReNumber = 2.329418E08; //@double refReNumber = 2.329418E08;
@ -888,3 +915,9 @@ int allReduceStep = 1;
//@int nsubsonicOutlet = 0; //@int nsubsonicOutlet = 0;
//@string inLetFileName = "./bin/subsonicInlet.hypara"; //@string inLetFileName = "./bin/subsonicInlet.hypara";
//@string outLetFileName = "./bin/subsonicOutlet.hypara"; //@string outLetFileName = "./bin/subsonicOutlet.hypara";
#########################################################################
# Old Parameter #
#########################################################################
int isPlotVolumeField = 0;

View File

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

View File

@ -8,8 +8,8 @@
// 1 -- Y upward. (default) // 1 -- Y upward. (default)
// 2 -- Z upward. // 2 -- Z upward.
// from_gtype: Type of grid data type in grid conversion process. // from_gtype: Type of grid data type in grid conversion process.
// -1 -- MULTI_TYPE // -1 -- MULTI_TYPE.
// 1 -- HyperFLOW( PHengLEI ), *.fts. // 1 -- PHengLEI, *.fts.
// 2 -- CGNS, *.cgns. // 2 -- CGNS, *.cgns.
// 3 -- Plot3D type of structured grid, *.dat/*.grd. // 3 -- Plot3D type of structured grid, *.dat/*.grd.
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp. // 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
@ -28,7 +28,3 @@ int from_gtype = 3;
// out_gfile: path of target file for grid convert to, *.fts type of file usually. // out_gfile: path of target file for grid convert to, *.fts type of file usually.
string from_gfile = "./grid/flat_laminar_73_81.grd"; string from_gfile = "./grid/flat_laminar_73_81.grd";
string out_gfile = "./grid/flat_laminar_73_81.fts"; string out_gfile = "./grid/flat_laminar_73_81.fts";

View File

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

View File

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

View File

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

View File

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

View File

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