forked from PHengLEI/PHengLEI-TestCases
PHengLEI2112版本新算例添加
This commit is contained in:
parent
8def12d73b
commit
c954ffa7bb
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,195 @@
|
||||||
|
#########################################################################
|
||||||
|
# General Control Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
|
||||||
|
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
|
||||||
|
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
|
||||||
|
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||||
|
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||||
|
|
||||||
|
int maxSimuStep = 80000;
|
||||||
|
|
||||||
|
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.
|
||||||
|
// 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.185;
|
||||||
|
double attackd = 6.00;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 2.51e6;
|
||||||
|
double refDimensionalTemperature = 288.15;
|
||||||
|
|
||||||
|
//int inflowParaType = 1;
|
||||||
|
//double height = 0.001;
|
||||||
|
|
||||||
|
double gridScaleFactor = 1.0;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
|
||||||
|
double forceReferenceLength = 1.0; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.0; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// viscousType : Viscous model.
|
||||||
|
// 0 -- Euler.
|
||||||
|
// 1 -- Lamilar.
|
||||||
|
// 3 -- 1eq turbulent.
|
||||||
|
// 4 -- 2eq turbulent.
|
||||||
|
// viscousName: Laminar or tubulent model.
|
||||||
|
// -- "1eq-sa", when viscousType = 3.
|
||||||
|
// -- "2eq-kw-menter-sst", when viscousType = 4.
|
||||||
|
// DESType: Type of DES.
|
||||||
|
// 0 -- RANS.(default)
|
||||||
|
// 1 -- DES.
|
||||||
|
// 2 -- DDES.
|
||||||
|
// 3 -- IDDES.
|
||||||
|
|
||||||
|
//int viscousType = 0;
|
||||||
|
//string viscousName = "Euler";
|
||||||
|
|
||||||
|
//int viscousType = 1;
|
||||||
|
//string viscousName = "laminar";
|
||||||
|
|
||||||
|
//int viscousType = 3;
|
||||||
|
//string viscousName = "1eq-sa";
|
||||||
|
|
||||||
|
int viscousType = 4;
|
||||||
|
string viscousName = "2eq-kw-menter-sst";
|
||||||
|
|
||||||
|
int DESType = 0;
|
||||||
|
|
||||||
|
int roeEntropyFixMethod = 2;
|
||||||
|
double roeEntropyScale = 1.0;
|
||||||
|
#########################################################################
|
||||||
|
# Spatial Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
#*******************************************************************
|
||||||
|
# Struct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// str_limiter_name: Limiter of struct grid.
|
||||||
|
// -- "3rdsmooth", "smooth".
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
|
||||||
|
string str_limiter_name = "smooth";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# UnStruct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// uns_limiter_name: Limiter of Unstruct grid.
|
||||||
|
// -- "vencat".
|
||||||
|
// -- "1st", meaning accuracy of first-order.
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
|
||||||
|
// The smaller the value, the more robust it is.
|
||||||
|
|
||||||
|
string uns_limiter_name = "vencat";
|
||||||
|
double venkatCoeff = 50.0;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Temporal Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
// iunsteady: Steady or unsteady.
|
||||||
|
// 0 -- steady.
|
||||||
|
// 1 -- unsteay.
|
||||||
|
// CFLEnd: The CFL number, [0.1, 100].
|
||||||
|
// The bigger the value, the convergence faster but lower robustness.
|
||||||
|
// nLUSGSSweeps: Number of Sub-iteration of LU-SGS.
|
||||||
|
// 1 -- is recommended for structured solver.
|
||||||
|
// 1-3 -- is recommended for unstructured solver.
|
||||||
|
|
||||||
|
int iunsteady = 0;
|
||||||
|
|
||||||
|
double CFLEnd = 10.0;
|
||||||
|
|
||||||
|
int nLUSGSSweeps = 1;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Multi-Grid parameters #
|
||||||
|
#########################################################################
|
||||||
|
// nMGLevel: The number of Multi-Grid level.
|
||||||
|
// = 1 -- single-level.
|
||||||
|
// > 1 -- multi-level.
|
||||||
|
// flowInitStep: Flow initialization step, 0 - 500 is suggested.
|
||||||
|
// Multi-Grid : Number of steps computing on coarse grid, during flow initialization.
|
||||||
|
// Single-Grid: Number of steps computing using first-order with vanleer, during flow initialization.
|
||||||
|
|
||||||
|
int nMGLevel = 1;
|
||||||
|
int flowInitStep = 100;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File In or Out #
|
||||||
|
#########################################################################
|
||||||
|
// gridfile: The partitioned Grid file path, using relative path,
|
||||||
|
// which is relative to the working directory.
|
||||||
|
// IMPORTANT WARNING: The file index should be ignored,
|
||||||
|
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
|
||||||
|
// Please use 'rae2822_hybrid2d__4.fts' here!
|
||||||
|
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
|
||||||
|
|
||||||
|
string gridfile = "./grid/2D_NLR7301_Str.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;
|
|
@ -0,0 +1,30 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 1;
|
||||||
|
int axisup = 1;
|
||||||
|
int from_gtype = 3;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/2D_NLR7301_Str.grd";
|
||||||
|
string out_gfile = "./grid/2D_NLR7301_Str.fts";
|
|
@ -0,0 +1,59 @@
|
||||||
|
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 = 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 = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -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/2D_NLR7301_Str.fts";
|
||||||
|
string partition_grid_file = "./grid/2D_NLR7301_Str.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;
|
Binary file not shown.
|
@ -0,0 +1,58 @@
|
||||||
|
1
|
||||||
|
5
|
||||||
|
377 145
|
||||||
|
A
|
||||||
|
5
|
||||||
|
1 377 1 1 2
|
||||||
|
377 377 1 145 -1
|
||||||
|
89 89 145 1 2
|
||||||
|
1 377 145 145 4
|
||||||
|
1 1 81 145 -1
|
||||||
|
81 81 73 137 3
|
||||||
|
1 1 1 81 -1
|
||||||
|
49 49 1 81 5
|
||||||
|
89 329
|
||||||
|
B
|
||||||
|
6
|
||||||
|
89 1 329 329 2
|
||||||
|
1 1 329 1 -1
|
||||||
|
1 1 169 497 4
|
||||||
|
89 1 1 1 4
|
||||||
|
89 89 145 1 -1
|
||||||
|
377 377 1 145 1
|
||||||
|
89 89 177 145 2
|
||||||
|
89 89 177 329 -1
|
||||||
|
1 1 1 153 5
|
||||||
|
81 137
|
||||||
|
C
|
||||||
|
5
|
||||||
|
1 81 1 1 2
|
||||||
|
81 81 1 73 -1
|
||||||
|
49 49 153 81 5
|
||||||
|
81 81 73 137 -1
|
||||||
|
1 1 81 145 1
|
||||||
|
1 81 137 137 4
|
||||||
|
1 1 1 137 -1
|
||||||
|
1 1 137 1 4
|
||||||
|
89 497
|
||||||
|
D
|
||||||
|
6
|
||||||
|
1 89 1 1 4
|
||||||
|
89 89 1 497 4
|
||||||
|
1 89 497 497 4
|
||||||
|
1 1 169 497 -1
|
||||||
|
1 1 329 1 2
|
||||||
|
1 1 137 169 2
|
||||||
|
1 1 137 1 -1
|
||||||
|
1 1 1 137 3
|
||||||
|
49 153
|
||||||
|
E
|
||||||
|
5
|
||||||
|
1 49 1 1 2
|
||||||
|
49 49 1 81 -1
|
||||||
|
1 1 1 81 1
|
||||||
|
49 49 153 81 -1
|
||||||
|
81 81 1 73 3
|
||||||
|
1 49 153 153 2
|
||||||
|
1 1 1 153 -1
|
||||||
|
89 89 177 329 2
|
|
@ -0,0 +1,53 @@
|
||||||
|
# nBoundaryConditons : number of global boundary conditions.
|
||||||
|
# bcName : Boundary Condition Name.
|
||||||
|
# bcType(in PHengLEI): Boundary Condition Type.
|
||||||
|
|
||||||
|
# Account of how to set boundaryconditon.
|
||||||
|
# string bcName = "Farfield";
|
||||||
|
# {
|
||||||
|
# int bcType = 4;
|
||||||
|
# int inflowParaType = 1;
|
||||||
|
# double attackd = 0;
|
||||||
|
# double refReNumber = 6.5e6;
|
||||||
|
# double refMachNumber = 3.5;
|
||||||
|
# double angleSlide = 0;
|
||||||
|
# }
|
||||||
|
|
||||||
|
int nBoundaryConditons = 5;
|
||||||
|
string bcName = "wall";
|
||||||
|
{
|
||||||
|
string bodyName = "body";
|
||||||
|
int bcType = 2;
|
||||||
|
}
|
||||||
|
string bcName = "sym";
|
||||||
|
{
|
||||||
|
int bcType = 3;
|
||||||
|
}
|
||||||
|
string bcName = "in";
|
||||||
|
{
|
||||||
|
int bcType = 4;
|
||||||
|
}
|
||||||
|
string bcName = "up";
|
||||||
|
{
|
||||||
|
int bcType = 4;
|
||||||
|
}
|
||||||
|
string bcName = "out";
|
||||||
|
{
|
||||||
|
int bcType = 6;
|
||||||
|
}
|
||||||
|
|
||||||
|
# 'bcType' is defined as following:
|
||||||
|
# 99: PERIODIC
|
||||||
|
# -2: WAKE
|
||||||
|
# -1: INTERFACE
|
||||||
|
# 0 : NO_BOUNDARY_CONDITION
|
||||||
|
# 1 : EXTRAPOLATION
|
||||||
|
# 2 : SOLID_SURFACE
|
||||||
|
# 3 : SYMMETRY
|
||||||
|
# 4 : FARFIELD
|
||||||
|
# 5 : INFLOW
|
||||||
|
# 6 : OUTFLOW
|
||||||
|
# 52: PRESSURE_INLET
|
||||||
|
# 62: PRESSURE_OUTLET
|
||||||
|
# 61: OUTFLOW_CONFINED
|
||||||
|
# 7 : POLE
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,191 @@
|
||||||
|
#########################################################################
|
||||||
|
# General Control Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
|
||||||
|
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
|
||||||
|
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
|
||||||
|
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||||
|
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||||
|
|
||||||
|
int maxSimuStep = 20000;
|
||||||
|
|
||||||
|
int intervalStepFlow = 2000;
|
||||||
|
int intervalStepPlot = 2000;
|
||||||
|
int intervalStepForce = 100;
|
||||||
|
int intervalStepRes = 10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Inflow Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// refMachNumber: Mach number.
|
||||||
|
// attackd: Angle of attack.
|
||||||
|
// angleSlide: Angle of sideslip.
|
||||||
|
// wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition.
|
||||||
|
// inflowParaType: The type of inflow parameters.
|
||||||
|
// 0 -- the nondimensional conditions.
|
||||||
|
// 1 -- the flight conditions.
|
||||||
|
// 2 -- the experiment conditions.
|
||||||
|
// 3 -- the subsonic boundary conditions.
|
||||||
|
// 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 = 2.85;
|
||||||
|
double attackd = 0.00;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
double wallTemperature = -1.0;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 6.567e7;
|
||||||
|
double refDimensionalTemperature = 102.1;
|
||||||
|
|
||||||
|
//int inflowParaType = 1;
|
||||||
|
//double height = 0.001;
|
||||||
|
|
||||||
|
//int inflowParaType = 2;
|
||||||
|
//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2).
|
||||||
|
//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
|
||||||
|
|
||||||
|
double gridScaleFactor = 1.0;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 0.026; // unit of meter.
|
||||||
|
double forceReferenceLength = 1.0; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.0; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// viscousType : Viscous model.
|
||||||
|
// 0 -- Euler.
|
||||||
|
// 1 -- Lamilar.
|
||||||
|
// 3 -- 1eq turbulent.
|
||||||
|
// 4 -- 2eq turbulent.
|
||||||
|
// viscousName: Laminar or tubulent model.
|
||||||
|
// -- "1eq-sa", when viscousType = 3.
|
||||||
|
// -- "2eq-kw-menter-sst", when viscousType = 4.
|
||||||
|
// DESType: Type of DES.
|
||||||
|
// 0 -- RANS.(default)
|
||||||
|
// 1 -- DES.
|
||||||
|
// 2 -- DDES.
|
||||||
|
// 3 -- IDDES.
|
||||||
|
|
||||||
|
//int viscousType = 0;
|
||||||
|
//string viscousName = "Euler";
|
||||||
|
|
||||||
|
//int viscousType = 1;
|
||||||
|
//string viscousName = "laminar";
|
||||||
|
|
||||||
|
int viscousType = 3;
|
||||||
|
string viscousName = "1eq-sa";
|
||||||
|
|
||||||
|
//int viscousType = 4;
|
||||||
|
//string viscousName = "2eq-kw-menter-sst";
|
||||||
|
|
||||||
|
int DESType = 0;
|
||||||
|
|
||||||
|
int roeEntropyFixMethod = 2;
|
||||||
|
double roeEntropyScale = 1.0;
|
||||||
|
#########################################################################
|
||||||
|
# Spatial Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
#*******************************************************************
|
||||||
|
# Struct Solver *
|
||||||
|
#*************************************************
|
||||||
|
******************
|
||||||
|
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||||
|
// Using this when solve structered grid or hybrid.
|
||||||
|
// -- "vanleer", "steger", "ausmpw".
|
||||||
|
// str_limiter_name: Limiter of struct grid.
|
||||||
|
// -- "minmod", "3rd_minmod_smooth".
|
||||||
|
|
||||||
|
string inviscidSchemeName = "vanleer";
|
||||||
|
string str_limiter_name = "minmod";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# UnStruct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||||
|
// Using this when solve Unstructered grid or hybrid.
|
||||||
|
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||||
|
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpwplus".
|
||||||
|
// uns_limiter_name: Limiter of Unstruct grid.
|
||||||
|
// -- "vencat", "barth".
|
||||||
|
// -- "1st", meaning accuracy of first-order.
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
|
||||||
|
// The smaller the value, the more robust it is.
|
||||||
|
|
||||||
|
string uns_scheme_name = "vanleer";
|
||||||
|
string uns_limiter_name = "vencat";
|
||||||
|
double venkatCoeff = 0.5;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Temporal Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
// iunsteady: Steady or unsteady.
|
||||||
|
// 0 -- steady.
|
||||||
|
// 1 -- unsteay.
|
||||||
|
// CFLEnd: The CFL number, [0.1, 100].
|
||||||
|
// The bigger the value, the convergence faster but lower robustness.
|
||||||
|
// ktmax: The lower the value, the more robustness, 1.0e5 - 1.0e10.
|
||||||
|
|
||||||
|
int iunsteady = 0;
|
||||||
|
|
||||||
|
double CFLEnd = 1.0;
|
||||||
|
|
||||||
|
double ktmax = 1.0e10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File In or Out #
|
||||||
|
#########################################################################
|
||||||
|
// gridfile: The partitioned Grid file path, using relative path,
|
||||||
|
// which is relative to the working directory.
|
||||||
|
// IMPORTANT WARNING: The file index should be ignored,
|
||||||
|
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
|
||||||
|
// Please use 'rae2822_hybrid2d__4.fts' here!
|
||||||
|
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
|
||||||
|
|
||||||
|
string gridfile = "./grid/3d_16ramp_str.fts";
|
||||||
|
int plotFieldType = 0;
|
||||||
|
|
||||||
|
// ----------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
|
||||||
|
// visualVariables: Variable types dumped, listed as following:
|
||||||
|
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||||
|
// -- viscosityLaminar(7), viscosityTurbulent(8),
|
||||||
|
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
|
||||||
|
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
|
||||||
|
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21).
|
||||||
|
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||||
|
// Variables order must from small to big.
|
||||||
|
|
||||||
|
int nVisualVariables = 8;
|
||||||
|
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||||
|
|
||||||
|
// limitVariables: Limit model (It is useful only if limitVector is 0).
|
||||||
|
// 0 -- limit only for pressure and denstiny, then get the min value.
|
||||||
|
// 1 -- limit for every variables, then get the min value.
|
||||||
|
// limitVector:
|
||||||
|
// 0 -- Each variable use the same limiter coefficient.
|
||||||
|
// 1 -- Each variable use the respective limiter coefficients.
|
||||||
|
// reconmeth:
|
||||||
|
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
|
||||||
|
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
|
||||||
|
|
||||||
|
int reconmeth = 0;
|
||||||
|
int limitVariables = 0;
|
||||||
|
int limitVector = 1;
|
|
@ -0,0 +1,30 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 1;
|
||||||
|
int axisup = 2;
|
||||||
|
int from_gtype = 2;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/3d_16ramp_str.cgns";
|
||||||
|
string out_gfile = "./grid/3d_16ramp_str.fts";
|
|
@ -0,0 +1,56 @@
|
||||||
|
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 = 3;
|
||||||
|
int nparafile = 1;
|
||||||
|
|
||||||
|
int nsimutask = 0;
|
||||||
|
//string parafilename = "./bin/cfd_para_subsonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_transonic.hypara";
|
||||||
|
string parafilename = "./bin/cfd_para_supersonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
|
||||||
|
//string parafilename = "./bin/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 = 13;
|
||||||
|
//string parafilename = "./bin/lbm_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 14;
|
||||||
|
//string parafilename = "./bin/integrative_solver.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -0,0 +1,21 @@
|
||||||
|
// pgridtype: The grid type.
|
||||||
|
// 0 -- unstruct grid.
|
||||||
|
// 1 -- struct grid.
|
||||||
|
// maxproc: The number of partition zones that want to be divided into,
|
||||||
|
// which is equal to the number of CPU processors you want.
|
||||||
|
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
|
||||||
|
// 30~70 thousands unstructured cells per CPU-Core is suggested.
|
||||||
|
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
|
||||||
|
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
|
||||||
|
|
||||||
|
int pgridtype = 0;
|
||||||
|
int maxproc = 1;
|
||||||
|
|
||||||
|
string original_grid_file = "./grid/3d_16ramp_str.fts";
|
||||||
|
string partition_grid_file = "./grid/3d_16ramp_str.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;
|
Binary file not shown.
|
@ -0,0 +1,49 @@
|
||||||
|
# nBoundaryConditons : number of global boundary conditions.
|
||||||
|
# bcName : Boundary Condition Name.
|
||||||
|
# bcType(in PHengLEI): Boundary Condition Type.
|
||||||
|
|
||||||
|
# Account of how to set boundaryconditon.
|
||||||
|
# string bcName = "Farfield";
|
||||||
|
# {
|
||||||
|
# int bcType = 4;
|
||||||
|
# int inflowParaType = 1;
|
||||||
|
# double attackd = 0;
|
||||||
|
# double refReNumber = 6.5e6;
|
||||||
|
# double refMachNumber = 3.5;
|
||||||
|
# double angleSlide = 0;
|
||||||
|
# }
|
||||||
|
|
||||||
|
int nBoundaryConditons = 4;
|
||||||
|
string bcName = "wall";
|
||||||
|
{
|
||||||
|
string bodyName = "body";
|
||||||
|
int bcType = 2;
|
||||||
|
}
|
||||||
|
string bcName = "sym";
|
||||||
|
{
|
||||||
|
int bcType = 3;
|
||||||
|
}
|
||||||
|
string bcName = "in";
|
||||||
|
{
|
||||||
|
int bcType = 5;
|
||||||
|
}
|
||||||
|
string bcName = "out";
|
||||||
|
{
|
||||||
|
int bcType = 6;
|
||||||
|
}
|
||||||
|
|
||||||
|
# 'bcType' is defined as following:
|
||||||
|
# 99: PERIODIC
|
||||||
|
# -2: WAKE
|
||||||
|
# -1: INTERFACE
|
||||||
|
# 0 : NO_BOUNDARY_CONDITION
|
||||||
|
# 1 : EXTRAPOLATION
|
||||||
|
# 2 : SOLID_SURFACE
|
||||||
|
# 3 : SYMMETRY
|
||||||
|
# 4 : FARFIELD
|
||||||
|
# 5 : INFLOW
|
||||||
|
# 6 : OUTFLOW
|
||||||
|
# 52: PRESSURE_INLET
|
||||||
|
# 62: PRESSURE_OUTLET
|
||||||
|
# 61: OUTFLOW_CONFINED
|
||||||
|
# 7 : POLE
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,238 @@
|
||||||
|
#########################################################################
|
||||||
|
# General Control Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
|
||||||
|
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
|
||||||
|
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
|
||||||
|
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||||
|
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||||
|
|
||||||
|
int maxSimuStep = 50000;
|
||||||
|
|
||||||
|
int intervalStepFlow = 2000;
|
||||||
|
int intervalStepPlot = 2000;
|
||||||
|
int intervalStepForce = 100;
|
||||||
|
int intervalStepRes = 10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Inflow Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// refMachNumber: Mach number.
|
||||||
|
// attackd: Angle of attack.
|
||||||
|
// angleSlide: Angle of sideslip.
|
||||||
|
// wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition.
|
||||||
|
// inflowParaType: The type of inflow parameters.
|
||||||
|
// 0 -- the nondimensional conditions.
|
||||||
|
// 1 -- the flight conditions.
|
||||||
|
// 2 -- the experiment conditions.
|
||||||
|
// 3 -- the subsonic boundary conditions.
|
||||||
|
// refReNumber: Reynolds number, which is based unit length, unit of 1/m.
|
||||||
|
// refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition.
|
||||||
|
// freestream_vibration_temperature: Dimensional freestream vibration temperature.
|
||||||
|
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
|
||||||
|
// height: Fly height, unit of km.
|
||||||
|
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
|
||||||
|
// 1 dm = 0.1 m.
|
||||||
|
// 1 cm = 0.01 m.
|
||||||
|
// 1 mm = 0.001m.
|
||||||
|
// 1 inch = 0.0254m.
|
||||||
|
// 1 foot = 12 inches = 0.3048m.
|
||||||
|
// 1 yard = 3 feet = 0.9144m.
|
||||||
|
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
|
||||||
|
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
|
||||||
|
|
||||||
|
double refMachNumber = 9.91;
|
||||||
|
double attackd = 0.00;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
double wallTemperature = 293;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 1.86e5;
|
||||||
|
double refDimensionalTemperature = 51;
|
||||||
|
double freestream_vibration_temperature = 10000.0;
|
||||||
|
|
||||||
|
//int inflowParaType = 1;
|
||||||
|
//double height = 0.001;
|
||||||
|
|
||||||
|
//int inflowParaType = 2;
|
||||||
|
//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2).
|
||||||
|
//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
|
||||||
|
|
||||||
|
double gridScaleFactor = 0.001;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
|
||||||
|
double forceReferenceLength = 0.1017; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.0; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// viscousType: Viscous model.
|
||||||
|
// 0 -- Euler.
|
||||||
|
// 1 -- Lamilar.
|
||||||
|
// 3 -- 1eq turbulent.
|
||||||
|
// 4 -- 2eq turbulent.
|
||||||
|
// viscousName: Laminar or tubulent model.
|
||||||
|
// -- "1eq-sa", when viscousType = 3.
|
||||||
|
// -- "2eq-kw-menter-sst", when viscousType = 4.
|
||||||
|
// DESType: Type of DES.
|
||||||
|
// 0 -- RANS.(default)
|
||||||
|
// 1 -- DES.
|
||||||
|
// 2 -- DDES.
|
||||||
|
// 3 -- IDDES.
|
||||||
|
|
||||||
|
//int viscousType = 0;
|
||||||
|
//string viscousName = "Euler";
|
||||||
|
|
||||||
|
int viscousType = 1;
|
||||||
|
string viscousName = "laminar";
|
||||||
|
|
||||||
|
//int viscousType = 3;
|
||||||
|
//string viscousName = "1eq-sa";
|
||||||
|
|
||||||
|
//int viscousType = 4;
|
||||||
|
//string viscousName = "2eq-kw-menter-sst";
|
||||||
|
|
||||||
|
int DESType = 0;
|
||||||
|
|
||||||
|
int roeEntropyFixMethod = 2;
|
||||||
|
double roeEntropyScale = 1.0;
|
||||||
|
#########################################################################
|
||||||
|
# Spatial Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
#*******************************************************************
|
||||||
|
# Struct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||||
|
// Using this when solve structered grid or hybrid.
|
||||||
|
// -- "vanleer", "steger", "ausmpw".
|
||||||
|
// str_limiter_name: Limiter of struct grid.
|
||||||
|
// -- "minmod", "3rd_minmod_smooth".
|
||||||
|
|
||||||
|
string inviscidSchemeName = "steger";
|
||||||
|
string str_limiter_name = "minmod";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# UnStruct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||||
|
// Using this when solve Unstructered grid or hybrid.
|
||||||
|
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||||
|
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpwplus".
|
||||||
|
// uns_limiter_name: Limiter of Unstruct grid.
|
||||||
|
// -- "vencat", "barth".
|
||||||
|
// -- "1st", meaning accuracy of first-order.
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
|
||||||
|
// The smaller the value, the more robust it is.
|
||||||
|
|
||||||
|
string uns_scheme_name = "vanleer";
|
||||||
|
string uns_limiter_name = "vencat";
|
||||||
|
double venkatCoeff = 0.5;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Temporal Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
// iunsteady: Steady or unsteady.
|
||||||
|
// 0 -- steady.
|
||||||
|
// 1 -- unsteay.
|
||||||
|
// CFLEnd: The CFL number, [0.1, 100].
|
||||||
|
// The bigger the value, the convergence faster but lower robustness.
|
||||||
|
// ktmax: The lower the value, the more robustness, 1.0e5 - 1.0e10.
|
||||||
|
|
||||||
|
int iunsteady = 0;
|
||||||
|
|
||||||
|
double CFLEnd = 3.0;
|
||||||
|
|
||||||
|
double ktmax = 1.0e10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File In or Out #
|
||||||
|
#########################################################################
|
||||||
|
// gridfile: The partitioned Grid file path, using relative path,
|
||||||
|
// which is relative to the working directory.
|
||||||
|
// IMPORTANT WARNING: The file index should be ignored,
|
||||||
|
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
|
||||||
|
// Please use 'rae2822_hybrid2d__4.fts' here!
|
||||||
|
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
|
||||||
|
|
||||||
|
string gridfile = "./grid/3d_HCFlare_str__16.fts";
|
||||||
|
int plotFieldType = 0;
|
||||||
|
|
||||||
|
// ----------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
|
||||||
|
// visualVariables: Variable types dumped, listed as following:
|
||||||
|
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||||
|
// -- viscosityLaminar(7), viscosityTurbulent(8),
|
||||||
|
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
|
||||||
|
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
|
||||||
|
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21),
|
||||||
|
// -- vibration temperature(Tv, 33), electron temperature(Te, 34), vibrational energy(Ev, 35), electric energy(Ee, 36),
|
||||||
|
// -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40).
|
||||||
|
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||||
|
// Variables order must from small to big.
|
||||||
|
|
||||||
|
int nVisualVariables = 8;
|
||||||
|
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||||
|
|
||||||
|
// limitVariables: Limit model (It is useful only if limitVector is 0).
|
||||||
|
// 0 -- limit only for pressure and denstiny, then get the min value.
|
||||||
|
// 1 -- limit for every variables, then get the min value.
|
||||||
|
// limitVector:
|
||||||
|
// 0 -- Each variable use the same limiter coefficient.
|
||||||
|
// 1 -- Each variable use the respective limiter coefficients.
|
||||||
|
// reconmeth:
|
||||||
|
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
|
||||||
|
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
|
||||||
|
|
||||||
|
int reconmeth = 0;
|
||||||
|
int limitVariables = 0;
|
||||||
|
int limitVector = 1;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Non-equilibrium gas #
|
||||||
|
#########################################################################
|
||||||
|
// nGasModel: The type of gas.
|
||||||
|
// 0 -- Earth gas.
|
||||||
|
// 1 -- Mars gas.
|
||||||
|
// nchem:
|
||||||
|
// 0 -- without chemical reaction flow.
|
||||||
|
// 1 -- the chemical reaction flow is considered.
|
||||||
|
// nchemsrc:
|
||||||
|
// 0 -- the source terms are not computed.
|
||||||
|
// 1 -- the source terms are computed.
|
||||||
|
// nchemrad:
|
||||||
|
// 0 -- compute the spectrum radius without considering chemical reaction flow.
|
||||||
|
// 1 -- compute the spectrum radius that need to count the contribution from chemical reaction flow.
|
||||||
|
// ntmodel: The thermodynamic temperature model.
|
||||||
|
// 1 -- One-temperature model.
|
||||||
|
// 2 -- Two-temperature model.
|
||||||
|
// 3 -- Three-temperature model.
|
||||||
|
// catalyticCoef:
|
||||||
|
// 0.0 -- full non-catalytic wall boundary condition.
|
||||||
|
// 1.0 -- full catalytic wall boundary condition.
|
||||||
|
// in range of (0.0, 1.0) -- partial catalytic condition, the value indicates the catalytic coefficient.
|
||||||
|
// gasfile: Indicates the gas model, 9 models are provided, namely "Gu5", "Gu7", "Gu11", "Pa5", "Pa7", "Pa11", "DK5", "DK7", "DK11".
|
||||||
|
// "Gu" -- indicates the Gupta Model, three-Type Models are embeded in the library, namely, the 5-species-6-reactions, the 7-species-9-reactions, the 11-species-20-reactions.
|
||||||
|
// "Pa" -- indicates the Park Model, three-Type Models are embeded in the library, namely, the 5-species-17-reactions, the 7-species-22-reactions, the 11-species-48-reactions.
|
||||||
|
// "DK" -- indicates the Dunn-Kang Model, three-Type Models are embeded in the library, namely, the 5-species-11-reactions, the 7-species-15-reactions, the 11-species-26-reactions.
|
||||||
|
// "Mars-Pa8" is for Park model of Mars gas, "Mars-Mc8" for McKenzie model of Mars gas.
|
||||||
|
// For self-definition model, the gasfile is used to indicate the file path of the new gas model.
|
||||||
|
// speciesName: Used to list the names of each species, while each species name is separated by the symbol of comma.
|
||||||
|
// initMassFraction: Used to list the initial mass fractions of species in accordance with the sequence of names in the parameter speciesName.
|
||||||
|
// ifStartFromPerfectGasResults: The chemical reaction simulation is start from perfect gas flowfield or not, 0 is for no and else is for yes.
|
||||||
|
|
||||||
|
int nGasModel = 0;
|
||||||
|
int nchem = 0;
|
||||||
|
int ntmodel = 1;
|
||||||
|
int nchemsrc = 1;
|
||||||
|
int nchemrad = 1;
|
||||||
|
double catalyticCoef = 1.0;
|
||||||
|
string gasfile = "DK5";
|
||||||
|
string speciesName = "O, O2, NO, N, N2";
|
||||||
|
string initMassFraction = "0.07955, 0.134, 0.0509, 1.0e-9, 0.73555";
|
||||||
|
int ifStartFromPerfectGasResults = 0;
|
|
@ -0,0 +1,30 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 1;
|
||||||
|
int axisup = 2;
|
||||||
|
int from_gtype = 2;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/3d_HCFlare_str.cgns";
|
||||||
|
string out_gfile = "./grid/3d_HCFlare_str.fts";
|
|
@ -0,0 +1,56 @@
|
||||||
|
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 = 3;
|
||||||
|
int nparafile = 1;
|
||||||
|
|
||||||
|
int nsimutask = 0;
|
||||||
|
//string parafilename = "./bin/cfd_para_subsonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_transonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_supersonic.hypara";
|
||||||
|
string parafilename = "./bin/cfd_para_hypersonic.hypara";
|
||||||
|
//string parafilename = "./bin/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 = 13;
|
||||||
|
//string parafilename = "./bin/lbm_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 14;
|
||||||
|
//string parafilename = "./bin/integrative_solver.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -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 = 16;
|
||||||
|
|
||||||
|
string original_grid_file = "./grid/3d_HCFlare_str.fts";
|
||||||
|
string partition_grid_file = "./grid/3d_HCFlare_str__16.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;
|
Binary file not shown.
|
@ -0,0 +1,65 @@
|
||||||
|
# nBoundaryConditons : Number of global boundary conditions.
|
||||||
|
# bcName : Boundary condition name.
|
||||||
|
# bcType(in PHengLEI): Boundary condition type.
|
||||||
|
|
||||||
|
# How to set boundary condition, for example:
|
||||||
|
# string bcName = "Wall";
|
||||||
|
# {
|
||||||
|
# int bcType = 2;
|
||||||
|
# int viscousType = 1;
|
||||||
|
# double wallTemperature = -1.0;
|
||||||
|
# double uWall = 0.0;
|
||||||
|
# double vWall = 0.0;
|
||||||
|
# double wWall = 0.0;
|
||||||
|
# }
|
||||||
|
# string bcName = "Inflow";
|
||||||
|
# {
|
||||||
|
# int bcType = 5;
|
||||||
|
# int inflowParaType = 0;
|
||||||
|
# double refMachNumber = 0.73;
|
||||||
|
# double attackd = 2.79;
|
||||||
|
# double angleSlide = 0.0;
|
||||||
|
# double refReNumber = 6.5e6;
|
||||||
|
# double refDimensionalTemperature = 288.15;
|
||||||
|
# }
|
||||||
|
|
||||||
|
# For more information, see examples/bin/boundary_condition.hypara file!!!
|
||||||
|
|
||||||
|
int nBoundaryConditons = 5;
|
||||||
|
string bcName = "SOLID_SURFACE";
|
||||||
|
{
|
||||||
|
string bodyName = "body";
|
||||||
|
int bcType = 2;
|
||||||
|
}
|
||||||
|
string bcName = "SYMMETRY";
|
||||||
|
{
|
||||||
|
int bcType = 3;
|
||||||
|
}
|
||||||
|
string bcName = "INFLOW";
|
||||||
|
{
|
||||||
|
int bcType = 5;
|
||||||
|
}
|
||||||
|
string bcName = "OUTFLOW";
|
||||||
|
{
|
||||||
|
int bcType = 6;
|
||||||
|
}
|
||||||
|
string bcName = "POLE3";
|
||||||
|
{
|
||||||
|
int bcType = 73;
|
||||||
|
}
|
||||||
|
|
||||||
|
# 'bcType' is defined as following:
|
||||||
|
# 99: PERIODIC
|
||||||
|
# -2: WAKE
|
||||||
|
# -1: INTERFACE
|
||||||
|
# 0 : NO_BOUNDARY_CONDITION
|
||||||
|
# 1 : EXTRAPOLATION
|
||||||
|
# 2 : SOLID_SURFACE
|
||||||
|
# 3 : SYMMETRY
|
||||||
|
# 4 : FARFIELD
|
||||||
|
# 5 : INFLOW
|
||||||
|
# 6 : OUTFLOW
|
||||||
|
# 52: PRESSURE_INLET
|
||||||
|
# 62: PRESSURE_OUTLET
|
||||||
|
# 61: OUTFLOW_CONFINED
|
||||||
|
# 7 : POLE
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,206 @@
|
||||||
|
#########################################################################
|
||||||
|
# General Control Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
|
||||||
|
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
|
||||||
|
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
|
||||||
|
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||||
|
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||||
|
|
||||||
|
int maxSimuStep = 50000;
|
||||||
|
|
||||||
|
int intervalStepFlow = 2000;
|
||||||
|
int intervalStepPlot = 2000;
|
||||||
|
int intervalStepForce = 100;
|
||||||
|
int intervalStepRes = 10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Inflow Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// refMachNumber: Mach number.
|
||||||
|
// attackd: Angle of attack.
|
||||||
|
// angleSlide: Angle of sideslip.
|
||||||
|
// wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition.
|
||||||
|
// inflowParaType: The type of inflow parameters.
|
||||||
|
// 0 -- the nondimensional conditions.
|
||||||
|
// 1 -- the flight conditions.
|
||||||
|
// 2 -- the experiment conditions.
|
||||||
|
// 3 -- the subsonic boundary conditions.
|
||||||
|
// 4 -- the condition that the velocity, temperature and density are given.
|
||||||
|
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||||
|
// refReNumber: Reynolds number, which is based unit length, unit of 1/m.
|
||||||
|
// refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition.
|
||||||
|
// freestream_vibration_temperature: Dimensional freestream vibration temperature.
|
||||||
|
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
|
||||||
|
// height: Fly height, unit of km.
|
||||||
|
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
|
||||||
|
// 1 dm = 0.1 m.
|
||||||
|
// 1 cm = 0.01 m.
|
||||||
|
// 1 mm = 0.001m.
|
||||||
|
// 1 inch = 0.0254m.
|
||||||
|
// 1 foot = 12 inches = 0.3048m.
|
||||||
|
// 1 yard = 3 feet = 0.9144m.
|
||||||
|
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
|
||||||
|
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
|
||||||
|
|
||||||
|
double refMachNumber = 10.6;
|
||||||
|
double attackd = 20.00;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
double wallTemperature = 294.44;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 3.937e6;
|
||||||
|
double refDimensionalTemperature = 47.3;
|
||||||
|
double freestream_vibration_temperature = 10000.0;
|
||||||
|
|
||||||
|
//int inflowParaType = 1;
|
||||||
|
//double height = 0.001;
|
||||||
|
|
||||||
|
//int inflowParaType = 2;
|
||||||
|
//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2).
|
||||||
|
//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
|
||||||
|
|
||||||
|
//The velocity, temperature and density are fixed.
|
||||||
|
//int inflowParaType = 4;
|
||||||
|
//double refDimensionalVelocity = 1000.0;
|
||||||
|
//double refDimensionalDensity = 1.0e3;
|
||||||
|
|
||||||
|
//The velocity, temperature and pressure are fixed.
|
||||||
|
//int inflowParaType = 5;
|
||||||
|
//double refDimensionalVelocity = 1000.0;
|
||||||
|
//double refDimensionalPressure = 1.0e5;
|
||||||
|
|
||||||
|
double gridScaleFactor = 1.0;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
|
||||||
|
double forceReferenceLength = 0.02794; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.0; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// viscousType: Viscous model.
|
||||||
|
// 0 -- Euler.
|
||||||
|
// 1 -- Lamilar.
|
||||||
|
// 3 -- 1eq turbulent.
|
||||||
|
// 4 -- 2eq turbulent.
|
||||||
|
// viscousName: Laminar or tubulent model.
|
||||||
|
// -- "1eq-sa", when viscousType = 3.
|
||||||
|
// -- "2eq-kw-menter-sst", when viscousType = 4.
|
||||||
|
// DESType: Type of DES.
|
||||||
|
// 0 -- RANS.(default)
|
||||||
|
// 1 -- DES.
|
||||||
|
// 2 -- DDES.
|
||||||
|
// 3 -- IDDES.
|
||||||
|
|
||||||
|
//int viscousType = 0;
|
||||||
|
//string viscousName = "Euler";
|
||||||
|
|
||||||
|
int viscousType = 1;
|
||||||
|
string viscousName = "laminar";
|
||||||
|
|
||||||
|
//int viscousType = 3;
|
||||||
|
//string viscousName = "1eq-sa";
|
||||||
|
|
||||||
|
//int viscousType = 4;
|
||||||
|
//string viscousName = "2eq-kw-menter-sst";
|
||||||
|
|
||||||
|
int DESType = 0;
|
||||||
|
|
||||||
|
int roeEntropyFixMethod = 3;
|
||||||
|
double roeEntropyScale = 1.0;
|
||||||
|
#########################################################################
|
||||||
|
# Spatial Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
#*******************************************************************
|
||||||
|
# Struct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||||
|
// Using this when solve structered grid or hybrid.
|
||||||
|
// -- "vanleer", "steger", "ausmpw", "ausmpw+".
|
||||||
|
// str_limiter_name: Limiter of struct grid.
|
||||||
|
// -- "minmod", "3rd_minmod_smooth".
|
||||||
|
|
||||||
|
string inviscidSchemeName = "steger";
|
||||||
|
string str_limiter_name = "minmod";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# UnStruct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||||
|
// Using this when solve Unstructered grid or hybrid.
|
||||||
|
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||||
|
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpwplus".
|
||||||
|
// uns_limiter_name: Limiter of Unstruct grid.
|
||||||
|
// -- "vencat", "barth".
|
||||||
|
// -- "1st", meaning accuracy of first-order.
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
|
||||||
|
// The smaller the value, the more robust it is.
|
||||||
|
|
||||||
|
string uns_scheme_name = "vanleer";
|
||||||
|
string uns_limiter_name = "vencat";
|
||||||
|
double venkatCoeff = 0.5;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Temporal Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
// iunsteady: Steady or unsteady.
|
||||||
|
// 0 -- steady.
|
||||||
|
// 1 -- unsteay.
|
||||||
|
// CFLEnd: The CFL number, [0.1, 100].
|
||||||
|
// The bigger the value, the convergence faster but lower robustness.
|
||||||
|
// ktmax: The lower the value, the more robustness, 1.0e5 - 1.0e10.
|
||||||
|
|
||||||
|
int iunsteady = 0;
|
||||||
|
|
||||||
|
double CFLEnd = 1.0;
|
||||||
|
int CFLVaryStep = 1000;
|
||||||
|
double ktmax = 1.0e10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File In or Out #
|
||||||
|
#########################################################################
|
||||||
|
// gridfile: The partitioned Grid file path, using relative path,
|
||||||
|
// which is relative to the working directory.
|
||||||
|
// IMPORTANT WARNING: The file index should be ignored,
|
||||||
|
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
|
||||||
|
// Please use 'rae2822_hybrid2d__4.fts' here!
|
||||||
|
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
|
||||||
|
|
||||||
|
string gridfile = "./grid/3D_bluntcone_str__64.fts";
|
||||||
|
int plotFieldType = 0;
|
||||||
|
|
||||||
|
// ----------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
|
||||||
|
// visualVariables: Variable types dumped, listed as following:
|
||||||
|
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||||
|
// -- viscosityLaminar(7), viscosityTurbulent(8),
|
||||||
|
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
|
||||||
|
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
|
||||||
|
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21),
|
||||||
|
// -- vibration temperature(Tv, 33), electron temperature(Te, 34), vibrational energy(Ev, 35), electric energy(Ee, 36),
|
||||||
|
// -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40).
|
||||||
|
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||||
|
// Variables order must from small to big.
|
||||||
|
|
||||||
|
int nVisualVariables = 8;
|
||||||
|
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||||
|
|
||||||
|
// limitVariables: Limit model (It is useful only if limitVector is 0).
|
||||||
|
// 0 -- limit only for pressure and denstiny, then get the min value.
|
||||||
|
// 1 -- limit for every variables, then get the min value.
|
||||||
|
// limitVector:
|
||||||
|
// 0 -- Each variable use the same limiter coefficient.
|
||||||
|
// 1 -- Each variable use the respective limiter coefficients.
|
||||||
|
// reconmeth:
|
||||||
|
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
|
||||||
|
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
|
||||||
|
|
||||||
|
int reconmeth = 0;
|
||||||
|
int limitVariables = 0;
|
||||||
|
int limitVector = 1;
|
|
@ -0,0 +1,30 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 1;
|
||||||
|
int axisup = 1;
|
||||||
|
int from_gtype = 3;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/3D_bluntcone_str.grd";
|
||||||
|
string out_gfile = "./grid/3D_bluntcone_str.fts";
|
|
@ -0,0 +1,59 @@
|
||||||
|
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 = 3;
|
||||||
|
int nparafile = 1;
|
||||||
|
|
||||||
|
//int nsimutask = 0;
|
||||||
|
//string parafilename = "./bin/cfd_para_subsonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_transonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_supersonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
|
||||||
|
//string parafilename = "./bin/incompressible.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 1;
|
||||||
|
//string parafilename = "./bin/grid_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 2;
|
||||||
|
//string parafilename = "./bin/cfd_para.hypara";
|
||||||
|
|
||||||
|
int nsimutask = 3;
|
||||||
|
string parafilename = "./bin/partition.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 1;
|
||||||
|
//string parafilename = "./bin/grid_deform_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 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 = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -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 = 64;
|
||||||
|
|
||||||
|
string original_grid_file = "./grid/3D_bluntcone_str.fts";
|
||||||
|
string partition_grid_file = "./grid/3D_bluntcone_str__64.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;
|
Binary file not shown.
|
@ -0,0 +1,11 @@
|
||||||
|
1
|
||||||
|
1
|
||||||
|
181 201 121
|
||||||
|
A
|
||||||
|
6
|
||||||
|
1 181 1 201 1 1 3
|
||||||
|
1 181 1 201 121 121 3
|
||||||
|
1 1 1 201 1 121 6
|
||||||
|
181 181 1 201 1 121 73
|
||||||
|
1 181 1 1 1 121 5
|
||||||
|
1 181 201 201 1 121 2
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,206 @@
|
||||||
|
#########################################################################
|
||||||
|
# General Control Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
|
||||||
|
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
|
||||||
|
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
|
||||||
|
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||||
|
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||||
|
|
||||||
|
int maxSimuStep = 50000;
|
||||||
|
|
||||||
|
int intervalStepFlow = 2000;
|
||||||
|
int intervalStepPlot = 2000;
|
||||||
|
int intervalStepForce = 100;
|
||||||
|
int intervalStepRes = 20;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Inflow Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// refMachNumber: Mach number.
|
||||||
|
// attackd: Angle of attack.
|
||||||
|
// angleSlide: Angle of sideslip.
|
||||||
|
// wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition.
|
||||||
|
// inflowParaType: The type of inflow parameters.
|
||||||
|
// 0 -- the nondimensional conditions.
|
||||||
|
// 1 -- the flight conditions.
|
||||||
|
// 2 -- the experiment conditions.
|
||||||
|
// 3 -- the subsonic boundary conditions.
|
||||||
|
// 4 -- the condition that the velocity, temperature and density are given.
|
||||||
|
// 5 -- the condition that the velocity, temperature and pressure are given.
|
||||||
|
// refReNumber: Reynolds number, which is based unit length, unit of 1/m.
|
||||||
|
// refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition.
|
||||||
|
// freestream_vibration_temperature: Dimensional freestream vibration temperature.
|
||||||
|
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
|
||||||
|
// height: Fly height, unit of km.
|
||||||
|
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
|
||||||
|
// 1 dm = 0.1 m.
|
||||||
|
// 1 cm = 0.01 m.
|
||||||
|
// 1 mm = 0.001m.
|
||||||
|
// 1 inch = 0.0254m.
|
||||||
|
// 1 foot = 12 inches = 0.3048m.
|
||||||
|
// 1 yard = 3 feet = 0.9144m.
|
||||||
|
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
|
||||||
|
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
|
||||||
|
|
||||||
|
double refMachNumber = 20.00;
|
||||||
|
double attackd = 20.00;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
double wallTemperature = 1500.0;
|
||||||
|
|
||||||
|
//int inflowParaType = 0;
|
||||||
|
//double refReNumber = 1.0e5;
|
||||||
|
//double refDimensionalTemperature = 288.15;
|
||||||
|
//double freestream_vibration_temperature = 300.0;
|
||||||
|
|
||||||
|
int inflowParaType = 1;
|
||||||
|
double height = 50.0;
|
||||||
|
|
||||||
|
//int inflowParaType = 2;
|
||||||
|
//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2).
|
||||||
|
//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
|
||||||
|
|
||||||
|
//The velocity, temperature and density are fixed.
|
||||||
|
//int inflowParaType = 4;
|
||||||
|
//double refDimensionalVelocity = 1000.0;
|
||||||
|
//double refDimensionalDensity = 1.0e3;
|
||||||
|
|
||||||
|
//The velocity, temperature and pressure are fixed.
|
||||||
|
//int inflowParaType = 5;
|
||||||
|
//double refDimensionalVelocity = 1000.0;
|
||||||
|
//double refDimensionalPressure = 1.0e5;
|
||||||
|
|
||||||
|
double gridScaleFactor = 0.001;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
|
||||||
|
double forceReferenceLength = 1.0; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.0; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// viscousType: Viscous model.
|
||||||
|
// 0 -- Euler.
|
||||||
|
// 1 -- Lamilar.
|
||||||
|
// 3 -- 1eq turbulent.
|
||||||
|
// 4 -- 2eq turbulent.
|
||||||
|
// viscousName: Laminar or tubulent model.
|
||||||
|
// -- "1eq-sa", when viscousType = 3.
|
||||||
|
// -- "2eq-kw-menter-sst", when viscousType = 4.
|
||||||
|
// DESType: Type of DES.
|
||||||
|
// 0 -- RANS.(default)
|
||||||
|
// 1 -- DES.
|
||||||
|
// 2 -- DDES.
|
||||||
|
// 3 -- IDDES.
|
||||||
|
|
||||||
|
//int viscousType = 0;
|
||||||
|
//string viscousName = "Euler";
|
||||||
|
|
||||||
|
int viscousType = 1;
|
||||||
|
string viscousName = "laminar";
|
||||||
|
|
||||||
|
//int viscousType = 3;
|
||||||
|
//string viscousName = "1eq-sa";
|
||||||
|
|
||||||
|
//int viscousType = 4;
|
||||||
|
//string viscousName = "2eq-kw-menter-sst";
|
||||||
|
|
||||||
|
int DESType = 0;
|
||||||
|
|
||||||
|
int roeEntropyFixMethod = 2;
|
||||||
|
double roeEntropyScale = 1.0;
|
||||||
|
#########################################################################
|
||||||
|
# Spatial Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
#*******************************************************************
|
||||||
|
# Struct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||||
|
// Using this when solve structered grid or hybrid.
|
||||||
|
// -- "vanleer", "steger", "ausmpw", "ausmpw+".
|
||||||
|
// str_limiter_name: Limiter of struct grid.
|
||||||
|
// -- "minmod", "3rd_minmod_smooth".
|
||||||
|
|
||||||
|
string inviscidSchemeName = "steger";
|
||||||
|
string str_limiter_name = "minmod";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# UnStruct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||||
|
// Using this when solve Unstructered grid or hybrid.
|
||||||
|
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||||
|
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpwplus".
|
||||||
|
// uns_limiter_name: Limiter of Unstruct grid.
|
||||||
|
// -- "vencat", "barth".
|
||||||
|
// -- "1st", meaning accuracy of first-order.
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
|
||||||
|
// The smaller the value, the more robust it is.
|
||||||
|
|
||||||
|
string uns_scheme_name = "vanleer";
|
||||||
|
string uns_limiter_name = "vencat";
|
||||||
|
double venkatCoeff = 0.5;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Temporal Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
// iunsteady: Steady or unsteady.
|
||||||
|
// 0 -- steady.
|
||||||
|
// 1 -- unsteay.
|
||||||
|
// CFLEnd: The CFL number, [0.1, 100].
|
||||||
|
// The bigger the value, the convergence faster but lower robustness.
|
||||||
|
// ktmax: The lower the value, the more robustness, 1.0e5 - 1.0e10.
|
||||||
|
|
||||||
|
int iunsteady = 0;
|
||||||
|
|
||||||
|
double CFLEnd = 2.0;
|
||||||
|
int CFLVaryStep = 1000;
|
||||||
|
double ktmax = 1.0e10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File In or Out #
|
||||||
|
#########################################################################
|
||||||
|
// gridfile: The partitioned Grid file path, using relative path,
|
||||||
|
// which is relative to the working directory.
|
||||||
|
// IMPORTANT WARNING: The file index should be ignored,
|
||||||
|
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
|
||||||
|
// Please use 'rae2822_hybrid2d__4.fts' here!
|
||||||
|
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
|
||||||
|
|
||||||
|
string gridfile = "./grid/OV102__24.fts";
|
||||||
|
int plotFieldType = 0;
|
||||||
|
|
||||||
|
// ----------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
|
||||||
|
// visualVariables: Variable types dumped, listed as following:
|
||||||
|
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||||
|
// -- viscosityLaminar(7), viscosityTurbulent(8),
|
||||||
|
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
|
||||||
|
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
|
||||||
|
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21),
|
||||||
|
// -- vibration temperature(Tv, 33), electron temperature(Te, 34), vibrational energy(Ev, 35), electric energy(Ee, 36),
|
||||||
|
// -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40).
|
||||||
|
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||||
|
// Variables order must from small to big.
|
||||||
|
|
||||||
|
int nVisualVariables = 8;
|
||||||
|
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||||
|
|
||||||
|
// limitVariables: Limit model (It is useful only if limitVector is 0).
|
||||||
|
// 0 -- limit only for pressure and denstiny, then get the min value.
|
||||||
|
// 1 -- limit for every variables, then get the min value.
|
||||||
|
// limitVector:
|
||||||
|
// 0 -- Each variable use the same limiter coefficient.
|
||||||
|
// 1 -- Each variable use the respective limiter coefficients.
|
||||||
|
// reconmeth:
|
||||||
|
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
|
||||||
|
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
|
||||||
|
|
||||||
|
int reconmeth = 0;
|
||||||
|
int limitVariables = 0;
|
||||||
|
int limitVector = 1;
|
|
@ -0,0 +1,30 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 1;
|
||||||
|
int axisup = 1;
|
||||||
|
int from_gtype = 3;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/OV102.grd";
|
||||||
|
string out_gfile = "./grid/OV102.fts";
|
|
@ -0,0 +1,59 @@
|
||||||
|
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 = 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 = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -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 = 24;
|
||||||
|
|
||||||
|
string original_grid_file = "./grid/OV102.fts";
|
||||||
|
string partition_grid_file = "./grid/OV102__24.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;
|
Binary file not shown.
|
@ -0,0 +1,213 @@
|
||||||
|
1
|
||||||
|
9
|
||||||
|
60 63 54
|
||||||
|
D
|
||||||
|
17
|
||||||
|
1 60 63 1 1 1 3
|
||||||
|
1 60 -1 -63 54 54 -1
|
||||||
|
1 60 38 38 -1 -63 2
|
||||||
|
1 1 -63 -1 1 54 -1
|
||||||
|
10 10 -63 -1 1 54 7
|
||||||
|
60 60 -63 -43 1 7 -1
|
||||||
|
-1 -21 1 7 25 25 9
|
||||||
|
60 60 -43 -1 1 7 -1
|
||||||
|
-21 -63 1 7 25 25 9
|
||||||
|
60 60 -63 -1 7 54 -1
|
||||||
|
1 1 1 48 -1 -63 3
|
||||||
|
60 54 1 1 1 28 2
|
||||||
|
60 54 1 1 28 54 2
|
||||||
|
54 48 1 1 1 54 2
|
||||||
|
48 42 1 1 1 54 2
|
||||||
|
42 35 1 1 1 54 2
|
||||||
|
35 29 1 1 1 54 2
|
||||||
|
29 22 1 1 1 54 2
|
||||||
|
22 20 1 1 1 54 2
|
||||||
|
20 15 1 1 1 54 2
|
||||||
|
15 1 1 1 1 54 2
|
||||||
|
60 1 63 63 1 54 4
|
||||||
|
77 38 63
|
||||||
|
A
|
||||||
|
16
|
||||||
|
68 60 38 1 1 1 2
|
||||||
|
68 76 26 12 1 1 2
|
||||||
|
76 68 38 26 1 1 2
|
||||||
|
77 68 1 12 1 1 2
|
||||||
|
77 76 -12 -38 1 1 -1
|
||||||
|
18 17 -22 -48 63 63 3
|
||||||
|
60 48 38 1 1 1 2
|
||||||
|
48 35 38 1 1 1 2
|
||||||
|
35 22 38 1 1 1 2
|
||||||
|
22 13 38 1 1 1 2
|
||||||
|
13 1 38 1 1 1 2
|
||||||
|
1 77 1 38 63 63 4
|
||||||
|
1 1 38 1 -63 -1 -1
|
||||||
|
10 10 -63 -1 54 91 7
|
||||||
|
77 77 -38 -1 1 63 -1
|
||||||
|
-1 -38 15 15 63 1 5
|
||||||
|
1 77 1 1 1 63 3
|
||||||
|
60 77 38 38 -63 -1 -1
|
||||||
|
1 18 48 48 -1 -63 3
|
||||||
|
1 60 38 38 -1 -63 -1
|
||||||
|
1 60 -1 -63 54 54 1
|
||||||
|
18 48 63
|
||||||
|
C
|
||||||
|
22
|
||||||
|
1 18 1 48 1 1 4
|
||||||
|
1 5 22 1 63 63 2
|
||||||
|
5 9 22 1 63 63 2
|
||||||
|
1 9 48 22 63 63 2
|
||||||
|
9 13 22 1 63 63 2
|
||||||
|
9 13 48 22 63 63 2
|
||||||
|
13 15 22 1 63 63 2
|
||||||
|
15 17 22 1 63 63 2
|
||||||
|
13 15 48 22 63 63 2
|
||||||
|
15 17 48 22 63 63 2
|
||||||
|
17 18 22 1 63 63 2
|
||||||
|
18 17 -22 -48 63 63 -1
|
||||||
|
77 76 -12 -38 1 1 2
|
||||||
|
1 1 1 48 -1 -63 -1
|
||||||
|
60 60 -63 -1 7 54 1
|
||||||
|
18 18 -48 -1 63 1 -1
|
||||||
|
1 1 63 1 -1 -48 6
|
||||||
|
1 9 1 1 -1 -21 -1
|
||||||
|
-1 -21 7 15 25 25 9
|
||||||
|
1 9 1 1 -21 -63 -1
|
||||||
|
-21 -63 7 15 25 25 9
|
||||||
|
9 13 1 1 -1 -21 -1
|
||||||
|
-1 -21 15 19 25 25 9
|
||||||
|
9 13 1 1 -21 -63 -1
|
||||||
|
-21 -63 15 19 25 25 9
|
||||||
|
13 17 1 1 -21 -63 -1
|
||||||
|
-21 -63 19 23 25 25 9
|
||||||
|
13 18 1 1 -1 -21 -1
|
||||||
|
-1 -21 19 24 25 25 9
|
||||||
|
17 18 1 1 -21 -63 -1
|
||||||
|
-21 -63 23 24 25 25 9
|
||||||
|
1 18 48 48 -1 -63 -1
|
||||||
|
60 77 38 38 -63 -1 2
|
||||||
|
15 11 20
|
||||||
|
G
|
||||||
|
8
|
||||||
|
15 1 -1 -11 1 1 -1
|
||||||
|
-28 -38 1 15 63 63 5
|
||||||
|
-1 -15 1 4 20 20 -1
|
||||||
|
-1 -15 63 63 45 48 6
|
||||||
|
15 1 -4 -11 20 20 -1
|
||||||
|
15 1 63 63 -48 -55 6
|
||||||
|
1 1 11 1 20 1 2
|
||||||
|
15 15 11 1 20 1 6
|
||||||
|
15 1 1 1 -20 -2 -1
|
||||||
|
15 1 63 63 -45 -27 6
|
||||||
|
15 1 1 1 -1 -2 -1
|
||||||
|
-28 -27 1 15 63 63 5
|
||||||
|
15 1 11 11 1 20 3
|
||||||
|
38 15 63
|
||||||
|
E
|
||||||
|
8
|
||||||
|
38 1 15 1 1 1 4
|
||||||
|
-1 -27 1 15 63 63 -1
|
||||||
|
15 1 63 63 -1 -27 6
|
||||||
|
-28 -27 1 15 63 63 -1
|
||||||
|
15 1 1 1 -1 -2 4
|
||||||
|
-28 -38 1 15 63 63 -1
|
||||||
|
15 1 -1 -11 1 1 4
|
||||||
|
1 1 -1 -15 63 1 -1
|
||||||
|
-15 -1 63 1 1 1 6
|
||||||
|
38 38 15 1 63 1 3
|
||||||
|
1 38 1 1 63 1 6
|
||||||
|
-1 -38 15 15 63 1 -1
|
||||||
|
77 77 -38 -1 1 63 2
|
||||||
|
15 63 55
|
||||||
|
F
|
||||||
|
13
|
||||||
|
-15 -1 63 1 1 1 -1
|
||||||
|
1 1 -1 -15 63 1 5
|
||||||
|
1 15 63 1 55 55 3
|
||||||
|
1 1 -1 -21 48 55 -1
|
||||||
|
-1 -21 24 31 25 25 9
|
||||||
|
1 1 -21 -63 48 55 -1
|
||||||
|
-21 -63 24 31 25 25 9
|
||||||
|
1 1 63 1 -1 -48 -1
|
||||||
|
18 18 -48 -1 63 1 3
|
||||||
|
15 15 1 21 48 55 6
|
||||||
|
15 15 21 63 48 55 6
|
||||||
|
15 15 63 1 1 48 6
|
||||||
|
1 15 1 1 1 55 4
|
||||||
|
-1 -15 63 63 45 48 -1
|
||||||
|
-1 -15 1 4 20 20 4
|
||||||
|
15 1 63 63 -45 -27 -1
|
||||||
|
15 1 1 1 -20 -2 4
|
||||||
|
15 1 63 63 -48 -55 -1
|
||||||
|
15 1 -4 -11 20 20 4
|
||||||
|
15 1 63 63 -1 -27 -1
|
||||||
|
-1 -27 1 15 63 63 5
|
||||||
|
10 63 91
|
||||||
|
H
|
||||||
|
9
|
||||||
|
1 10 63 1 1 1 3
|
||||||
|
10 1 63 1 91 91 3
|
||||||
|
1 1 -1 -63 1 25 -1
|
||||||
|
-1 -63 1 1 1 25 8
|
||||||
|
1 1 -1 -63 25 67 -1
|
||||||
|
-1 -63 1 43 25 25 8
|
||||||
|
1 1 -1 -63 67 91 -1
|
||||||
|
-1 -63 43 43 25 1 8
|
||||||
|
10 10 -63 -1 1 54 -1
|
||||||
|
1 1 -63 -1 1 54 1
|
||||||
|
10 10 -63 -1 54 91 -1
|
||||||
|
1 1 38 1 -63 -1 2
|
||||||
|
1 10 1 1 1 91 2
|
||||||
|
1 10 63 63 1 91 4
|
||||||
|
63 43 25
|
||||||
|
I
|
||||||
|
6
|
||||||
|
63 1 1 43 1 1 3
|
||||||
|
-1 -63 1 43 25 25 -1
|
||||||
|
1 1 -1 -63 25 67 7
|
||||||
|
1 1 1 43 1 25 2
|
||||||
|
63 63 1 43 1 25 4
|
||||||
|
-1 -63 1 1 1 25 -1
|
||||||
|
1 1 -1 -63 1 25 7
|
||||||
|
-1 -63 43 43 25 1 -1
|
||||||
|
1 1 -1 -63 67 91 7
|
||||||
|
63 31 25
|
||||||
|
J
|
||||||
|
27
|
||||||
|
1 21 1 31 1 1 3
|
||||||
|
21 24 31 1 1 1 2
|
||||||
|
24 36 19 1 1 1 2
|
||||||
|
24 36 30 19 1 1 2
|
||||||
|
24 36 31 30 1 1 2
|
||||||
|
36 38 31 1 1 1 2
|
||||||
|
38 41 28 1 1 1 2
|
||||||
|
38 41 31 28 1 1 2
|
||||||
|
41 63 31 28 1 1 2
|
||||||
|
63 41 1 28 1 1 2
|
||||||
|
-21 -63 1 7 25 25 -1
|
||||||
|
60 60 -43 -1 1 7 1
|
||||||
|
-1 -21 1 7 25 25 -1
|
||||||
|
60 60 -63 -43 1 7 1
|
||||||
|
-21 -63 7 15 25 25 -1
|
||||||
|
1 9 1 1 -21 -63 3
|
||||||
|
-21 -63 15 19 25 25 -1
|
||||||
|
9 13 1 1 -21 -63 3
|
||||||
|
-1 -21 7 15 25 25 -1
|
||||||
|
1 9 1 1 -1 -21 3
|
||||||
|
-1 -21 15 19 25 25 -1
|
||||||
|
9 13 1 1 -1 -21 3
|
||||||
|
-21 -63 19 23 25 25 -1
|
||||||
|
13 17 1 1 -21 -63 3
|
||||||
|
-21 -63 23 24 25 25 -1
|
||||||
|
17 18 1 1 -21 -63 3
|
||||||
|
-1 -21 19 24 25 25 -1
|
||||||
|
13 18 1 1 -1 -21 3
|
||||||
|
-21 -63 24 31 25 25 -1
|
||||||
|
1 1 -21 -63 48 55 6
|
||||||
|
-1 -21 24 31 25 25 -1
|
||||||
|
1 1 -1 -21 48 55 6
|
||||||
|
1 1 1 31 1 25 4
|
||||||
|
63 63 1 31 1 25 2
|
||||||
|
21 63 1 1 25 1 3
|
||||||
|
1 21 1 1 25 1 3
|
||||||
|
63 21 31 31 25 1 3
|
||||||
|
21 1 31 31 25 1 3
|
|
@ -0,0 +1,59 @@
|
||||||
|
# nBoundaryConditons : number of global boundary conditions.
|
||||||
|
# bcName : Boundary Condition Name.
|
||||||
|
# bcType(in PHengLEI): Boundary Condition Type.
|
||||||
|
|
||||||
|
# Account of how to set boundaryconditon.
|
||||||
|
# string bcName = "Farfield";
|
||||||
|
# {
|
||||||
|
# int bcType = 4;
|
||||||
|
# int inflowParaType = 1;
|
||||||
|
# double attackd = 0;
|
||||||
|
# double refReNumber = 6.5e6;
|
||||||
|
# double refMachNumber = 3.5;
|
||||||
|
# double angleSlide = 0;
|
||||||
|
# }
|
||||||
|
|
||||||
|
int nBoundaryConditons = 5;
|
||||||
|
string bcName = "Wall";
|
||||||
|
{
|
||||||
|
string bodyName = "body";
|
||||||
|
int bcType = 2;
|
||||||
|
}
|
||||||
|
string bcName = "Symmetry";
|
||||||
|
{
|
||||||
|
int bcType = 3;
|
||||||
|
}
|
||||||
|
string bcName = "Inlet1";
|
||||||
|
{
|
||||||
|
int bcType = 5;
|
||||||
|
int inflowParaType = 9;
|
||||||
|
double primDensity = 1.129985;
|
||||||
|
double primU = 0.9666364;
|
||||||
|
double primV = -0.052199312;
|
||||||
|
double primW = 0;
|
||||||
|
double primPressure = 0.2119350;
|
||||||
|
}
|
||||||
|
string bcName = "Inlet2";
|
||||||
|
{
|
||||||
|
int bcType = 5;
|
||||||
|
}
|
||||||
|
string bcName = "Outlet";
|
||||||
|
{
|
||||||
|
int bcType = 6;
|
||||||
|
}
|
||||||
|
|
||||||
|
# 'bcType' is defined as following:
|
||||||
|
# 99: PERIODIC
|
||||||
|
# -2: WAKE
|
||||||
|
# -1: INTERFACE
|
||||||
|
# 0 : NO_BOUNDARY_CONDITION
|
||||||
|
# 1 : EXTRAPOLATION
|
||||||
|
# 2 : SOLID_SURFACE
|
||||||
|
# 3 : SYMMETRY
|
||||||
|
# 4 : FARFIELD
|
||||||
|
# 5 : INFLOW
|
||||||
|
# 6 : OUTFLOW
|
||||||
|
# 52: PRESSURE_INLET
|
||||||
|
# 62: PRESSURE_OUTLET
|
||||||
|
# 61: OUTFLOW_CONFINED
|
||||||
|
# 7 : POLE
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,190 @@
|
||||||
|
#########################################################################
|
||||||
|
# General Control Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
|
||||||
|
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
|
||||||
|
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
|
||||||
|
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||||
|
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||||
|
|
||||||
|
int maxSimuStep = 10000;
|
||||||
|
|
||||||
|
int intervalStepFlow = 1000;
|
||||||
|
int intervalStepPlot = 1000;
|
||||||
|
int intervalStepForce = 100;
|
||||||
|
int intervalStepRes = 10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Inflow Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// refMachNumber: Mach number.
|
||||||
|
// attackd: Angle of attack.
|
||||||
|
// angleSlide: Angle of sideslip.
|
||||||
|
// wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition.
|
||||||
|
// inflowParaType: The type of inflow parameters.
|
||||||
|
// 0 -- the nondimensional conditions.
|
||||||
|
// 1 -- the flight conditions.
|
||||||
|
// 2 -- the experiment conditions.
|
||||||
|
// 3 -- the subsonic boundary conditions.
|
||||||
|
// 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 = 2.00;
|
||||||
|
double attackd = 0.00;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
double wallTemperature = -1.0;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 2.96e5;
|
||||||
|
double refDimensionalTemperature = 117;
|
||||||
|
|
||||||
|
//int inflowParaType = 1;
|
||||||
|
//double height = 0.001;
|
||||||
|
|
||||||
|
//int inflowParaType = 2;
|
||||||
|
//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2).
|
||||||
|
//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
|
||||||
|
|
||||||
|
double gridScaleFactor = 1.0;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
|
||||||
|
double forceReferenceLength = 1.0; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.0; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// viscousType : Viscous model.
|
||||||
|
// 0 -- Euler.
|
||||||
|
// 1 -- Lamilar.
|
||||||
|
// 3 -- 1eq turbulent.
|
||||||
|
// 4 -- 2eq turbulent.
|
||||||
|
// viscousName: Laminar or tubulent model.
|
||||||
|
// -- "1eq-sa", when viscousType = 3.
|
||||||
|
// -- "2eq-kw-menter-sst", when viscousType = 4.
|
||||||
|
// DESType: Type of DES.
|
||||||
|
// 0 -- RANS.(default)
|
||||||
|
// 1 -- DES.
|
||||||
|
// 2 -- DDES.
|
||||||
|
// 3 -- IDDES.
|
||||||
|
|
||||||
|
//int viscousType = 0;
|
||||||
|
//string viscousName = "Euler";
|
||||||
|
|
||||||
|
int viscousType = 1;
|
||||||
|
string viscousName = "laminar";
|
||||||
|
|
||||||
|
//int viscousType = 3;
|
||||||
|
//string viscousName = "1eq-sa";
|
||||||
|
|
||||||
|
//int viscousType = 4;
|
||||||
|
//string viscousName = "2eq-kw-menter-sst";
|
||||||
|
|
||||||
|
int DESType = 0;
|
||||||
|
|
||||||
|
int roeEntropyFixMethod = 2;
|
||||||
|
double roeEntropyScale = 1.0;
|
||||||
|
#########################################################################
|
||||||
|
# Spatial Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
#*******************************************************************
|
||||||
|
# Struct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||||
|
// Using this when solve structered grid or hybrid.
|
||||||
|
// -- "vanleer", "steger", "ausmpw".
|
||||||
|
// str_limiter_name: Limiter of struct grid.
|
||||||
|
// -- "minmod", "3rd_minmod_smooth".
|
||||||
|
|
||||||
|
string inviscidSchemeName = "roe";
|
||||||
|
string str_limiter_name = "minvan";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# UnStruct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||||
|
// Using this when solve Unstructered grid or hybrid.
|
||||||
|
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||||
|
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpwplus".
|
||||||
|
// uns_limiter_name: Limiter of Unstruct grid.
|
||||||
|
// -- "vencat", "barth".
|
||||||
|
// -- "1st", meaning accuracy of first-order.
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
|
||||||
|
// The smaller the value, the more robust it is.
|
||||||
|
|
||||||
|
string uns_scheme_name = "vanleer";
|
||||||
|
string uns_limiter_name = "vencat";
|
||||||
|
double venkatCoeff = 0.5;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Temporal Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
// iunsteady: Steady or unsteady.
|
||||||
|
// 0 -- steady.
|
||||||
|
// 1 -- unsteay.
|
||||||
|
// CFLEnd: The CFL number, [0.1, 100].
|
||||||
|
// The bigger the value, the convergence faster but lower robustness.
|
||||||
|
// ktmax: The lower the value, the more robustness, 1.0e5 - 1.0e10.
|
||||||
|
|
||||||
|
int iunsteady = 0;
|
||||||
|
|
||||||
|
double CFLEnd = 30.0;
|
||||||
|
|
||||||
|
double ktmax = 1.0e10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File In or Out #
|
||||||
|
#########################################################################
|
||||||
|
// gridfile: The partitioned Grid file path, using relative path,
|
||||||
|
// which is relative to the working directory.
|
||||||
|
// IMPORTANT WARNING: The file index should be ignored,
|
||||||
|
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
|
||||||
|
// Please use 'rae2822_hybrid2d__4.fts' here!
|
||||||
|
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
|
||||||
|
|
||||||
|
string gridfile = "./grid/3D_plate_UDB_str.fts";
|
||||||
|
int plotFieldType = 0;
|
||||||
|
|
||||||
|
// ----------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
|
||||||
|
// visualVariables: Variable types dumped, listed as following:
|
||||||
|
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||||
|
// -- viscosityLaminar(7), viscosityTurbulent(8),
|
||||||
|
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
|
||||||
|
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
|
||||||
|
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21).
|
||||||
|
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||||
|
// Variables order must from small to big.
|
||||||
|
|
||||||
|
int nVisualVariables = 8;
|
||||||
|
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||||
|
|
||||||
|
// limitVariables: Limit model (It is useful only if limitVector is 0).
|
||||||
|
// 0 -- limit only for pressure and denstiny, then get the min value.
|
||||||
|
// 1 -- limit for every variables, then get the min value.
|
||||||
|
// limitVector:
|
||||||
|
// 0 -- Each variable use the same limiter coefficient.
|
||||||
|
// 1 -- Each variable use the respective limiter coefficients.
|
||||||
|
// reconmeth:
|
||||||
|
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
|
||||||
|
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
|
||||||
|
|
||||||
|
int reconmeth = 0;
|
||||||
|
int limitVariables = 0;
|
||||||
|
int limitVector = 1;
|
|
@ -0,0 +1,30 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 1;
|
||||||
|
int axisup = 1;
|
||||||
|
int from_gtype = 2;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/3D_plate_UDB_str.cgns";
|
||||||
|
string out_gfile = "./grid/3D_plate_UDB_str.fts";
|
|
@ -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 = 3;
|
||||||
|
int nparafile = 1;
|
||||||
|
|
||||||
|
int nsimutask = 0;
|
||||||
|
//string parafilename = "./bin/cfd_para_subsonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_transonic.hypara";
|
||||||
|
string parafilename = "./bin/cfd_para_supersonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
|
||||||
|
//string parafilename = "./bin/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 iovrlap = 0;
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -0,0 +1,21 @@
|
||||||
|
// pgridtype: The grid type.
|
||||||
|
// 0 -- unstruct grid.
|
||||||
|
// 1 -- struct grid.
|
||||||
|
// maxproc: The number of partition zones that want to be divided into,
|
||||||
|
// which is equal to the number of CPU processors you want.
|
||||||
|
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
|
||||||
|
// 30~70 thousands unstructured cells per CPU-Core is suggested.
|
||||||
|
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
|
||||||
|
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
|
||||||
|
|
||||||
|
int pgridtype = 0;
|
||||||
|
int maxproc = 1;
|
||||||
|
|
||||||
|
string original_grid_file = "./grid/3D_plate_UDB_str.fts";
|
||||||
|
string partition_grid_file = "./grid/3D_plate_UDB_str.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;
|
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,195 @@
|
||||||
|
#########################################################################
|
||||||
|
# General Control Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
|
||||||
|
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
|
||||||
|
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
|
||||||
|
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||||
|
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||||
|
|
||||||
|
int maxSimuStep = 10000;
|
||||||
|
|
||||||
|
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.
|
||||||
|
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
|
||||||
|
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
|
||||||
|
|
||||||
|
double refMachNumber = 0.2;
|
||||||
|
double attackd = 19.0;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 9.0e6;
|
||||||
|
double refDimensionalTemperature = 288.0;
|
||||||
|
|
||||||
|
//int inflowParaType = 1;
|
||||||
|
//double height = 0.001;
|
||||||
|
|
||||||
|
double gridScaleFactor = 1.0;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
|
||||||
|
double forceReferenceLength = 1.0; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.0; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// viscousType : Viscous model.
|
||||||
|
// 0 -- Euler.
|
||||||
|
// 1 -- Lamilar.
|
||||||
|
// 3 -- 1eq turbulent.
|
||||||
|
// 4 -- 2eq turbulent.
|
||||||
|
// viscousName: Laminar or tubulent model.
|
||||||
|
// -- "1eq-sa", when viscousType = 3.
|
||||||
|
// -- "2eq-kw-menter-sst", when viscousType = 4.
|
||||||
|
// DESType: Type of DES.
|
||||||
|
// 0 -- RANS.(default)
|
||||||
|
// 1 -- DES.
|
||||||
|
// 2 -- DDES.
|
||||||
|
// 3 -- IDDES.
|
||||||
|
|
||||||
|
//int viscousType = 0;
|
||||||
|
//string viscousName = "Euler";
|
||||||
|
|
||||||
|
//int viscousType = 1;
|
||||||
|
//string viscousName = "laminar";
|
||||||
|
|
||||||
|
int viscousType = 3;
|
||||||
|
string viscousName = "1eq-sa";
|
||||||
|
|
||||||
|
//int viscousType = 4;
|
||||||
|
//string viscousName = "2eq-kw-menter-sst";
|
||||||
|
|
||||||
|
int DESType = 0;
|
||||||
|
|
||||||
|
int roeEntropyFixMethod = 3;
|
||||||
|
double roeEntropyScale = 1.0;
|
||||||
|
#########################################################################
|
||||||
|
# Spatial Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
#*******************************************************************
|
||||||
|
# Struct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// str_limiter_name: Limiter of struct grid.
|
||||||
|
// -- "3rdsmooth", "smooth".
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
|
||||||
|
string str_limiter_name = "smooth";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# 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 = 10.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 = 5;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# 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 = 2;
|
||||||
|
int flowInitStep = 100;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File In or Out #
|
||||||
|
#########################################################################
|
||||||
|
// gridfile: The partitioned Grid file path, using relative path,
|
||||||
|
// which is relative to the working directory.
|
||||||
|
// IMPORTANT WARNING: The file index should be ignored,
|
||||||
|
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
|
||||||
|
// Please use 'rae2822_hybrid2d__4.fts' here!
|
||||||
|
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
|
||||||
|
|
||||||
|
string gridfile = "./grid/30p30n_hygrid_2d__4.fts";
|
||||||
|
int plotFieldType = 0;
|
||||||
|
|
||||||
|
// ----------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
|
||||||
|
// visualVariables: Variable types dumped, listed as following:
|
||||||
|
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||||
|
// -- viscosityLaminar(7), viscosityTurbulent(8),
|
||||||
|
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
|
||||||
|
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
|
||||||
|
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21).
|
||||||
|
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||||
|
// Variables order must from small to big.
|
||||||
|
|
||||||
|
int nVisualVariables = 8;
|
||||||
|
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||||
|
|
||||||
|
// limitVariables: Limit model (It is useful only if limitVector is 0).
|
||||||
|
// 0 -- limit only for pressure and denstiny, then get the min value.
|
||||||
|
// 1 -- limit for every variables, then get the min value.
|
||||||
|
// limitVector:
|
||||||
|
// 0 -- Each variable use the same limiter coefficient.
|
||||||
|
// 1 -- Each variable use the respective limiter coefficients.
|
||||||
|
// reconmeth:
|
||||||
|
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
|
||||||
|
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
|
||||||
|
|
||||||
|
int reconmeth = 1;
|
||||||
|
int limitVariables = 0;
|
||||||
|
int limitVector = 0;
|
|
@ -0,0 +1,30 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 0;
|
||||||
|
int axisup = 1;
|
||||||
|
int from_gtype = 5;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/30p30n_hygrid_2d.cas";
|
||||||
|
string out_gfile = "./grid/30p30n_hygrid_2d.fts";
|
|
@ -0,0 +1,59 @@
|
||||||
|
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 = 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 = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -0,0 +1,21 @@
|
||||||
|
// pgridtype: The grid type.
|
||||||
|
// 0 -- unstruct grid.
|
||||||
|
// 1 -- struct grid.
|
||||||
|
// maxproc: The number of partition zones that want to be divided into,
|
||||||
|
// which is equal to the number of CPU processors you want.
|
||||||
|
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
|
||||||
|
// 30~70 thousands unstructured cells per CPU-Core is suggested.
|
||||||
|
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
|
||||||
|
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
|
||||||
|
|
||||||
|
int pgridtype = 0;
|
||||||
|
int maxproc = 4;
|
||||||
|
|
||||||
|
string original_grid_file = "./grid/30p30n_hygrid_2d.fts";
|
||||||
|
string partition_grid_file = "./grid/30p30n_hygrid_2d__4.fts";
|
||||||
|
|
||||||
|
// numberOfMultigrid: Number of multi-grid levels, ONLY used for structured grid.
|
||||||
|
// 1 -- single level.
|
||||||
|
// 2 -- 2 level.
|
||||||
|
// N -- N level,..., et al.
|
||||||
|
int numberOfMultigrid = 1;
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,195 @@
|
||||||
|
#########################################################################
|
||||||
|
# General Control Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
|
||||||
|
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
|
||||||
|
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
|
||||||
|
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||||
|
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||||
|
|
||||||
|
int maxSimuStep = 10000;
|
||||||
|
|
||||||
|
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.
|
||||||
|
// 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.185;
|
||||||
|
double attackd = 6.00;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 2.51e6;
|
||||||
|
double refDimensionalTemperature = 288.15;
|
||||||
|
|
||||||
|
//int inflowParaType = 1;
|
||||||
|
//double height = 0.001;
|
||||||
|
|
||||||
|
double gridScaleFactor = 1.0;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
|
||||||
|
double forceReferenceLength = 1.0; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.0; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// viscousType : Viscous model.
|
||||||
|
// 0 -- Euler.
|
||||||
|
// 1 -- Lamilar.
|
||||||
|
// 3 -- 1eq turbulent.
|
||||||
|
// 4 -- 2eq turbulent.
|
||||||
|
// viscousName: Laminar or tubulent model.
|
||||||
|
// -- "1eq-sa", when viscousType = 3.
|
||||||
|
// -- "2eq-kw-menter-sst", when viscousType = 4.
|
||||||
|
// DESType: Type of DES.
|
||||||
|
// 0 -- RANS.(default)
|
||||||
|
// 1 -- DES.
|
||||||
|
// 2 -- DDES.
|
||||||
|
// 3 -- IDDES.
|
||||||
|
|
||||||
|
//int viscousType = 0;
|
||||||
|
//string viscousName = "Euler";
|
||||||
|
|
||||||
|
//int viscousType = 1;
|
||||||
|
//string viscousName = "laminar";
|
||||||
|
|
||||||
|
int viscousType = 3;
|
||||||
|
string viscousName = "1eq-sa";
|
||||||
|
|
||||||
|
//int viscousType = 4;
|
||||||
|
//string viscousName = "2eq-kw-menter-sst";
|
||||||
|
|
||||||
|
int DESType = 0;
|
||||||
|
|
||||||
|
int roeEntropyFixMethod = 3;
|
||||||
|
double roeEntropyScale = 1.0;
|
||||||
|
#########################################################################
|
||||||
|
# Spatial Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
#*******************************************************************
|
||||||
|
# Struct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// str_limiter_name: Limiter of struct grid.
|
||||||
|
// -- "3rdsmooth", "smooth".
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
|
||||||
|
string str_limiter_name = "smooth";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# 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 = 2;
|
||||||
|
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/2D_NLR7301_Unstr.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;
|
|
@ -0,0 +1,30 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 0;
|
||||||
|
int axisup = 1;
|
||||||
|
int from_gtype = 2;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/2D_NLR7301_Unstr.cgns";
|
||||||
|
string out_gfile = "./grid/2D_NLR7301_Unstr.fts";
|
|
@ -0,0 +1,59 @@
|
||||||
|
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 = 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 = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -0,0 +1,21 @@
|
||||||
|
// pgridtype: The grid type.
|
||||||
|
// 0 -- unstruct grid.
|
||||||
|
// 1 -- struct grid.
|
||||||
|
// maxproc: The number of partition zones that want to be divided into,
|
||||||
|
// which is equal to the number of CPU processors you want.
|
||||||
|
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
|
||||||
|
// 30~70 thousands unstructured cells per CPU-Core is suggested.
|
||||||
|
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
|
||||||
|
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
|
||||||
|
|
||||||
|
int pgridtype = 0;
|
||||||
|
int maxproc = 1;
|
||||||
|
|
||||||
|
string original_grid_file = "./grid/2D_NLR7301_Unstr.fts";
|
||||||
|
string partition_grid_file = "./grid/2D_NLR7301_Unstr.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;
|
Binary file not shown.
|
@ -0,0 +1,49 @@
|
||||||
|
# nBoundaryConditons : number of global boundary conditions.
|
||||||
|
# bcName : Boundary Condition Name.
|
||||||
|
# bcType(in PHengLEI): Boundary Condition Type.
|
||||||
|
|
||||||
|
# Account of how to set boundaryconditon.
|
||||||
|
# string bcName = "Farfield";
|
||||||
|
# {
|
||||||
|
# int bcType = 4;
|
||||||
|
# int inflowParaType = 1;
|
||||||
|
# double attackd = 0;
|
||||||
|
# double refReNumber = 6.5e6;
|
||||||
|
# double refMachNumber = 3.5;
|
||||||
|
# double angleSlide = 0;
|
||||||
|
# }
|
||||||
|
|
||||||
|
int nBoundaryConditons = 4;
|
||||||
|
string bcName = "wall";
|
||||||
|
{
|
||||||
|
string bodyName = "body";
|
||||||
|
int bcType = 2;
|
||||||
|
}
|
||||||
|
string bcName = "sym";
|
||||||
|
{
|
||||||
|
int bcType = 3;
|
||||||
|
}
|
||||||
|
string bcName = "in";
|
||||||
|
{
|
||||||
|
int bcType = 5;
|
||||||
|
}
|
||||||
|
string bcName = "out";
|
||||||
|
{
|
||||||
|
int bcType = 6;
|
||||||
|
}
|
||||||
|
|
||||||
|
# 'bcType' is defined as following:
|
||||||
|
# 99: PERIODIC
|
||||||
|
# -2: WAKE
|
||||||
|
# -1: INTERFACE
|
||||||
|
# 0 : NO_BOUNDARY_CONDITION
|
||||||
|
# 1 : EXTRAPOLATION
|
||||||
|
# 2 : SOLID_SURFACE
|
||||||
|
# 3 : SYMMETRY
|
||||||
|
# 4 : FARFIELD
|
||||||
|
# 5 : INFLOW
|
||||||
|
# 6 : OUTFLOW
|
||||||
|
# 52: PRESSURE_INLET
|
||||||
|
# 62: PRESSURE_OUTLET
|
||||||
|
# 61: OUTFLOW_CONFINED
|
||||||
|
# 7 : POLE
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,238 @@
|
||||||
|
x#########################################################################
|
||||||
|
# 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 = 30000;
|
||||||
|
|
||||||
|
int intervalStepFlow = 2000;
|
||||||
|
int intervalStepPlot = 2000;
|
||||||
|
int intervalStepForce = 100;
|
||||||
|
int intervalStepRes = 10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Inflow Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// refMachNumber: Mach number.
|
||||||
|
// attackd: Angle of attack.
|
||||||
|
// angleSlide: Angle of sideslip.
|
||||||
|
// wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition.
|
||||||
|
// inflowParaType: The type of inflow parameters.
|
||||||
|
// 0 -- the nondimensional conditions.
|
||||||
|
// 1 -- the flight conditions.
|
||||||
|
// 2 -- the experiment conditions.
|
||||||
|
// 3 -- the subsonic boundary conditions.
|
||||||
|
// refReNumber: Reynolds number, which is based unit length, unit of 1/m.
|
||||||
|
// refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition.
|
||||||
|
// freestream_vibration_temperature: Dimensional freestream vibration temperature.
|
||||||
|
// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition.
|
||||||
|
// height: Fly height, unit of km.
|
||||||
|
// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like:
|
||||||
|
// 1 dm = 0.1 m.
|
||||||
|
// 1 cm = 0.01 m.
|
||||||
|
// 1 mm = 0.001m.
|
||||||
|
// 1 inch = 0.0254m.
|
||||||
|
// 1 foot = 12 inches = 0.3048m.
|
||||||
|
// 1 yard = 3 feet = 0.9144m.
|
||||||
|
// forceReferenceLength, forceReferenceLengthSpanWise, forceReferenceArea: Reference length, SpanWise length and area, independent of grid unit.
|
||||||
|
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
|
||||||
|
|
||||||
|
double refMachNumber = 9.91;
|
||||||
|
double attackd = 0.00;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
double wallTemperature = 293;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 1.86e5;
|
||||||
|
double refDimensionalTemperature = 51;
|
||||||
|
double freestream_vibration_temperature = 10000.0;
|
||||||
|
|
||||||
|
//int inflowParaType = 1;
|
||||||
|
//double height = 0.001;
|
||||||
|
|
||||||
|
//int inflowParaType = 2;
|
||||||
|
//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2).
|
||||||
|
//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
|
||||||
|
|
||||||
|
double gridScaleFactor = 0.001;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
|
||||||
|
double forceReferenceLength = 0.1017; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.0; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// viscousType: Viscous model.
|
||||||
|
// 0 -- Euler.
|
||||||
|
// 1 -- Lamilar.
|
||||||
|
// 3 -- 1eq turbulent.
|
||||||
|
// 4 -- 2eq turbulent.
|
||||||
|
// viscousName: Laminar or tubulent model.
|
||||||
|
// -- "1eq-sa", when viscousType = 3.
|
||||||
|
// -- "2eq-kw-menter-sst", when viscousType = 4.
|
||||||
|
// DESType: Type of DES.
|
||||||
|
// 0 -- RANS.(default)
|
||||||
|
// 1 -- DES.
|
||||||
|
// 2 -- DDES.
|
||||||
|
// 3 -- IDDES.
|
||||||
|
|
||||||
|
//int viscousType = 0;
|
||||||
|
//string viscousName = "Euler";
|
||||||
|
|
||||||
|
int viscousType = 1;
|
||||||
|
string viscousName = "laminar";
|
||||||
|
|
||||||
|
//int viscousType = 3;
|
||||||
|
//string viscousName = "1eq-sa";
|
||||||
|
|
||||||
|
//int viscousType = 4;
|
||||||
|
//string viscousName = "2eq-kw-menter-sst";
|
||||||
|
|
||||||
|
int DESType = 0;
|
||||||
|
|
||||||
|
int roeEntropyFixMethod = 3;
|
||||||
|
double roeEntropyScale = 1.0;
|
||||||
|
#########################################################################
|
||||||
|
# Spatial Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
#*******************************************************************
|
||||||
|
# Struct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// inviscidSchemeName: Spatial discretisation scheme of struct grid.
|
||||||
|
// Using this when solve structered grid or hybrid.
|
||||||
|
// -- "vanleer", "steger", "ausmpw".
|
||||||
|
// str_limiter_name: Limiter of struct grid.
|
||||||
|
// -- "minmod", "3rd_minmod_smooth".
|
||||||
|
|
||||||
|
string inviscidSchemeName = "steger";
|
||||||
|
string str_limiter_name = "minmod";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# UnStruct Solver *
|
||||||
|
#*******************************************************************
|
||||||
|
// uns_scheme_name: Spatial discretisation scheme of Unstruct grid.
|
||||||
|
// Using this when solve Unstructered grid or hybrid.
|
||||||
|
// -- "vanleer", "roe", "steger", "kfvs", "lax_f", "hlle".
|
||||||
|
// -- "ausm+", "ausmdv", "ausm+w", "ausmpw", "ausmpwplus".
|
||||||
|
// uns_limiter_name: Limiter of Unstruct grid.
|
||||||
|
// -- "vencat", "barth".
|
||||||
|
// -- "1st", meaning accuracy of first-order.
|
||||||
|
// -- "nolim", no limiter.
|
||||||
|
// venkatCoeff: Coefficient of vencat limiter, when uns_limiter_name = 'vencat'.
|
||||||
|
// The smaller the value, the more robust it is.
|
||||||
|
|
||||||
|
string uns_scheme_name = "steger";
|
||||||
|
string uns_limiter_name = "vencat";
|
||||||
|
double venkatCoeff = 0.5;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Temporal Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
// iunsteady: Steady or unsteady.
|
||||||
|
// 0 -- steady.
|
||||||
|
// 1 -- unsteay.
|
||||||
|
// CFLEnd: The CFL number, [0.1, 100].
|
||||||
|
// The bigger the value, the convergence faster but lower robustness.
|
||||||
|
// ktmax: The lower the value, the more robustness, 1.0e5 - 1.0e10.
|
||||||
|
|
||||||
|
int iunsteady = 0;
|
||||||
|
|
||||||
|
double CFLEnd = 3.0;
|
||||||
|
|
||||||
|
double ktmax = 1.0e10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File In or Out #
|
||||||
|
#########################################################################
|
||||||
|
// gridfile: The partitioned Grid file path, using relative path,
|
||||||
|
// which is relative to the working directory.
|
||||||
|
// IMPORTANT WARNING: The file index should be ignored,
|
||||||
|
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
|
||||||
|
// Please use 'rae2822_hybrid2d__4.fts' here!
|
||||||
|
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
|
||||||
|
|
||||||
|
string gridfile = "./grid/3d_HCFlare_unstr__16.fts";
|
||||||
|
int plotFieldType = 0;
|
||||||
|
|
||||||
|
// ----------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
// nVisualVariables: Number of variables want to be dumped for tecplot visualization.
|
||||||
|
// visualVariables: Variable types dumped, listed as following:
|
||||||
|
// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6),
|
||||||
|
// -- viscosityLaminar(7), viscosityTurbulent(8),
|
||||||
|
// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12),
|
||||||
|
// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17),
|
||||||
|
// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21),
|
||||||
|
// -- vibration temperature(Tv, 33), electron temperature(Te, 34), vibrational energy(Ev, 35), electric energy(Ee, 36),
|
||||||
|
// -- number density of electron(Ne, 37), dimensioanl density(rho, 38), dimensioanl pressure(p, 39), dimensioanl temperature(T, 40).
|
||||||
|
// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!
|
||||||
|
// Variables order must from small to big.
|
||||||
|
|
||||||
|
int nVisualVariables = 8;
|
||||||
|
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15];
|
||||||
|
|
||||||
|
// limitVariables: Limit model (It is useful only if limitVector is 0).
|
||||||
|
// 0 -- limit only for pressure and denstiny, then get the min value.
|
||||||
|
// 1 -- limit for every variables, then get the min value.
|
||||||
|
// limitVector:
|
||||||
|
// 0 -- Each variable use the same limiter coefficient.
|
||||||
|
// 1 -- Each variable use the respective limiter coefficients.
|
||||||
|
// reconmeth:
|
||||||
|
// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients.
|
||||||
|
// 1 -- Q+, Q- use the min limiter coefficients of left and right cell.
|
||||||
|
|
||||||
|
int reconmeth = 0;
|
||||||
|
int limitVariables = 0;
|
||||||
|
int limitVector = 1;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Non-equilibrium gas #
|
||||||
|
#########################################################################
|
||||||
|
// nGasModel: The type of gas.
|
||||||
|
// 0 -- Earth gas.
|
||||||
|
// 1 -- Mars gas.
|
||||||
|
// nchem:
|
||||||
|
// 0 -- without chemical reaction flow.
|
||||||
|
// 1 -- the chemical reaction flow is considered.
|
||||||
|
// nchemsrc:
|
||||||
|
// 0 -- the source terms are not computed.
|
||||||
|
// 1 -- the source terms are computed.
|
||||||
|
// nchemrad:
|
||||||
|
// 0 -- compute the spectrum radius without considering chemical reaction flow.
|
||||||
|
// 1 -- compute the spectrum radius that need to count the contribution from chemical reaction flow.
|
||||||
|
// ntmodel: The thermodynamic temperature model.
|
||||||
|
// 1 -- One-temperature model.
|
||||||
|
// 2 -- Two-temperature model.
|
||||||
|
// 3 -- Three-temperature model.
|
||||||
|
// catalyticCoef:
|
||||||
|
// 0.0 -- full non-catalytic wall boundary condition.
|
||||||
|
// 1.0 -- full catalytic wall boundary condition.
|
||||||
|
// in range of (0.0, 1.0) -- partial catalytic condition, the value indicates the catalytic coefficient.
|
||||||
|
// gasfile: Indicates the gas model, 9 models are provided, namely "Gu5", "Gu7", "Gu11", "Pa5", "Pa7", "Pa11", "DK5", "DK7", "DK11".
|
||||||
|
// "Gu" -- indicates the Gupta Model, three-Type Models are embeded in the library, namely, the 5-species-6-reactions, the 7-species-9-reactions, the 11-species-20-reactions.
|
||||||
|
// "Pa" -- indicates the Park Model, three-Type Models are embeded in the library, namely, the 5-species-17-reactions, the 7-species-22-reactions, the 11-species-48-reactions.
|
||||||
|
// "DK" -- indicates the Dunn-Kang Model, three-Type Models are embeded in the library, namely, the 5-species-11-reactions, the 7-species-15-reactions, the 11-species-26-reactions.
|
||||||
|
// "Mars-Pa8" is for Park model of Mars gas, "Mars-Mc8" for McKenzie model of Mars gas.
|
||||||
|
// For self-definition model, the gasfile is used to indicate the file path of the new gas model.
|
||||||
|
// speciesName: Used to list the names of each species, while each species name is separated by the symbol of comma.
|
||||||
|
// initMassFraction: Used to list the initial mass fractions of species in accordance with the sequence of names in the parameter speciesName.
|
||||||
|
// ifStartFromPerfectGasResults: The chemical reaction simulation is start from perfect gas flowfield or not, 0 is for no and else is for yes.
|
||||||
|
|
||||||
|
int nGasModel = 0;
|
||||||
|
int nchem = 0;
|
||||||
|
int ntmodel = 1;
|
||||||
|
int nchemsrc = 1;
|
||||||
|
int nchemrad = 1;
|
||||||
|
double catalyticCoef = 1.0;
|
||||||
|
string gasfile = "DK5";
|
||||||
|
string speciesName = "O, O2, NO, N, N2";
|
||||||
|
string initMassFraction = "0.07955, 0.134, 0.0509, 1.0e-9, 0.73555";
|
||||||
|
int ifStartFromPerfectGasResults = 0;
|
|
@ -0,0 +1,30 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 0;
|
||||||
|
int axisup = 2;
|
||||||
|
int from_gtype = 2;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/3d_HCFlare_unstr.cgns";
|
||||||
|
string out_gfile = "./grid/3d_HCFlare_unstr.fts";
|
|
@ -0,0 +1,56 @@
|
||||||
|
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 = 3;
|
||||||
|
int nparafile = 1;
|
||||||
|
|
||||||
|
int nsimutask = 0;
|
||||||
|
//string parafilename = "./bin/cfd_para_subsonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_transonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_supersonic.hypara";
|
||||||
|
string parafilename = "./bin/cfd_para_hypersonic.hypara";
|
||||||
|
//string parafilename = "./bin/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 = 13;
|
||||||
|
//string parafilename = "./bin/lbm_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 14;
|
||||||
|
//string parafilename = "./bin/integrative_solver.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -0,0 +1,21 @@
|
||||||
|
// pgridtype: The grid type.
|
||||||
|
// 0 -- unstruct grid.
|
||||||
|
// 1 -- struct grid.
|
||||||
|
// maxproc: The number of partition zones that want to be divided into,
|
||||||
|
// which is equal to the number of CPU processors you want.
|
||||||
|
// Usually, 50~100 thousands structured cells per CPU-Core is suggested.
|
||||||
|
// 30~70 thousands unstructured cells per CPU-Core is suggested.
|
||||||
|
// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts).
|
||||||
|
// partition_grid_file: Target partition grid file(PHengLEI type, *.fts).
|
||||||
|
|
||||||
|
int pgridtype = 0;
|
||||||
|
int maxproc = 16;
|
||||||
|
|
||||||
|
string original_grid_file = "./grid/3d_HCFlare_unstr.fts";
|
||||||
|
string partition_grid_file = "./grid/3d_HCFlare_unstr__16.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;
|
Binary file not shown.
|
@ -0,0 +1,44 @@
|
||||||
|
# nBoundaryConditons : number of global boundary conditions.
|
||||||
|
# bcName : Boundary Condition Name.
|
||||||
|
# bcType(in PHengLEI): Boundary Condition Type.
|
||||||
|
|
||||||
|
# Account of how to set boundaryconditon.
|
||||||
|
# string bcName = "Farfield";
|
||||||
|
# {
|
||||||
|
# int bcType = 4;
|
||||||
|
# int inflowParaType = 1;
|
||||||
|
# double attackd = 0;
|
||||||
|
# double refReNumber = 6.5e6;
|
||||||
|
# double refMachNumber = 3.5;
|
||||||
|
# double angleSlide = 0;
|
||||||
|
# }
|
||||||
|
|
||||||
|
int nBoundaryConditons = 3;
|
||||||
|
string bcName = "BCWall";
|
||||||
|
{
|
||||||
|
int bcType = 2;
|
||||||
|
}
|
||||||
|
string bcName = "BCFarfield";
|
||||||
|
{
|
||||||
|
int bcType = 4;
|
||||||
|
}
|
||||||
|
string bcName = "BCOutflow";
|
||||||
|
{
|
||||||
|
int bcType = 6;
|
||||||
|
}
|
||||||
|
|
||||||
|
# 'bcType' is defined as following:
|
||||||
|
# 99: PERIODIC
|
||||||
|
# -2: WAKE
|
||||||
|
# -1: INTERFACE
|
||||||
|
# 0 : NO_BOUNDARY_CONDITION
|
||||||
|
# 1 : EXTRAPOLATION
|
||||||
|
# 2 : SOLID_SURFACE
|
||||||
|
# 3 : SYMMETRY
|
||||||
|
# 4 : FARFIELD
|
||||||
|
# 5 : INFLOW
|
||||||
|
# 6 : OUTFLOW
|
||||||
|
# 52: PRESSURE_INLET
|
||||||
|
# 62: PRESSURE_OUTLET
|
||||||
|
# 61: OUTFLOW_CONFINED
|
||||||
|
# 7 : POLE
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,201 @@
|
||||||
|
#########################################################################
|
||||||
|
# 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 = 4000;
|
||||||
|
|
||||||
|
int intervalStepFlow = 100;
|
||||||
|
int intervalStepPlot = 100;
|
||||||
|
int intervalStepForce = 1;
|
||||||
|
int intervalStepRes = 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)
|
||||||
|
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.6;
|
||||||
|
double attackd = 2.89;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 4.8e6;
|
||||||
|
double refDimensionalTemperature = 288.15;
|
||||||
|
|
||||||
|
//int inflowParaType = 1;
|
||||||
|
//double height = 0.001;
|
||||||
|
|
||||||
|
double gridScaleFactor = 1.0;
|
||||||
|
|
||||||
|
double forceReferenceLengthSpanWise = 1.0; // unit of meter.
|
||||||
|
double forceReferenceLength = 1.0; // unit of meter.
|
||||||
|
double forceReferenceArea = 1.0; // unit of meter^2.
|
||||||
|
double TorqueRefX = 0.265; // unit of meter.
|
||||||
|
double TorqueRefY = 0.0; // unit of meter.
|
||||||
|
double TorqueRefZ = 0.0; // unit of meter.
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Physical models #
|
||||||
|
#########################################################################
|
||||||
|
// iviscous: 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 = "smooth";
|
||||||
|
|
||||||
|
#*******************************************************************
|
||||||
|
# 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 = 5.0;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Temporal Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
// iunsteady: Steady or unsteady.
|
||||||
|
// 0 -- steady.
|
||||||
|
// 1 -- unsteay.
|
||||||
|
// CFLEnd: The CFL number, [0.1, 100].
|
||||||
|
// The bigger the value, the convergence faster but lower robustness.
|
||||||
|
// nLUSGSSweeps: Number of Sub-iteration of LU-SGS.
|
||||||
|
// 0 -- is recommended for structured solver.
|
||||||
|
// 1-3 -- is recommended for unstructured solver.
|
||||||
|
|
||||||
|
int iunsteady = 1;
|
||||||
|
double physicalTimeStep = 0.05;
|
||||||
|
int min_sub_iter = 20;
|
||||||
|
int max_sub_iter = 200;
|
||||||
|
double tol_sub_iter = 0.001;
|
||||||
|
int aleStartStrategy = 1;
|
||||||
|
|
||||||
|
int ifLocalTimeStep = 1;
|
||||||
|
double dtau = 0.05;
|
||||||
|
|
||||||
|
double ktmax = 1.0e10;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# 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 = 0;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File In or Out #
|
||||||
|
#########################################################################
|
||||||
|
// gridfile: The partitioned Grid file path, using relative path,
|
||||||
|
// which is relative to the working directory.
|
||||||
|
// IMPORTANT WARNING: The file index should be ignored,
|
||||||
|
// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts,
|
||||||
|
// Please use 'rae2822_hybrid2d__4.fts' here!
|
||||||
|
// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1.
|
||||||
|
|
||||||
|
string gridfile = "./grid/2D_NACA0012_PM_Str__4.fts";
|
||||||
|
int plotFieldType = 1;
|
||||||
|
|
||||||
|
// ----------------- 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;
|
||||||
|
int SSTProductType = 1;
|
|
@ -0,0 +1,34 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// axisup: Type of Cartisien coordinates system, used in grid conversion.
|
||||||
|
// 1 -- Y upward. (default)
|
||||||
|
// 2 -- Z upward.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE
|
||||||
|
// 1 -- HyperFLOW( PHengLEI ), *.fts.
|
||||||
|
// 2 -- CGNS, *.cgns.
|
||||||
|
// 3 -- Plot3D type of structured grid, *.dat/*.grd.
|
||||||
|
// 4 -- Fieldview type of unstructured grid, *.dat/*.inp.
|
||||||
|
// 5 -- Fluent, *.cas/*.msh.
|
||||||
|
// 6 -- Ustar, mgrid.in.
|
||||||
|
// 7 -- Hybrid, include both of unstructured and structured grid, *.fts.
|
||||||
|
// 8 -- GMSH, *.msh.
|
||||||
|
int gridtype = 1;
|
||||||
|
int axisup = 1;
|
||||||
|
int from_gtype = 2;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# File path #
|
||||||
|
#########################################################################
|
||||||
|
// from_gfile: path of original data file for unstructure grid convert from.
|
||||||
|
// out_gfile: path of target file for grid convert to, *.fts type of file usually.
|
||||||
|
string from_gfile = "./grid/2D_NACA0012_PM_Str.cgns";
|
||||||
|
string out_gfile = "./grid/2D_NACA0012_PM_Str.fts";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
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 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 = 2;
|
||||||
|
|
||||||
|
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/kinetic_para.hypara"
|
||||||
|
//string parafilename2 = "./bin/overset_config.hypara";
|
||||||
|
|
|
@ -0,0 +1,56 @@
|
||||||
|
#########################################################################
|
||||||
|
# Parameter for RBD #
|
||||||
|
# *动力学基于有量纲的形式 #
|
||||||
|
#########################################################################
|
||||||
|
int codeOfAleModel = 1;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# 必要的无量纲信息(NS方程无量纲化相关) #
|
||||||
|
#########################################################################
|
||||||
|
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;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# 动力学方程计算相关参数 #
|
||||||
|
#########################################################################
|
||||||
|
//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 = 0.1;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# 物体刚体运动信息 #
|
||||||
|
#########################################################################
|
||||||
|
int numberOfMovingBodies = 1;
|
||||||
|
|
||||||
|
############################## body0 ##############################
|
||||||
|
//部件的质量
|
||||||
|
double mass_0 = 1.0;
|
||||||
|
//部件的质量矩阵 Ixx Iyy Izz Ixy Ixz Iyz
|
||||||
|
double massMatrix_0[] = 1e-7, 1e-6, 1e-6, 0.0, 0.0, 0.0;
|
||||||
|
//部件的初始六自由度位置信息 xc yc zc
|
||||||
|
double massCenter_0[] = 0.265 , 0.0, 0.0;
|
||||||
|
//部件的初始六自由度位置信息 angleX angleY angleZ
|
||||||
|
double attitudeAngle_0[] = 0.0 , 0.0, 0.0;
|
||||||
|
//部件的初始六自由度运动信息 vc vy vz
|
||||||
|
double massCenterVelocity_0[] = 0.0, 0.0, 0.0;
|
||||||
|
//部件的初始六自由度运动信息 omigX omigY omigZ
|
||||||
|
double angularVelocity_0[] = 0.0, 0.0, 0.0;
|
||||||
|
//部件所属的物体
|
||||||
|
int fartherIndex_0 = -1;
|
||||||
|
//部件的装配位置 xc yc zc angleX angleY angleZ
|
||||||
|
double configPamameter_0[] = 0.0 ,0.0 ,0.0 ,0.0 ,0.0 ,0.0;
|
||||||
|
//部件运动方式
|
||||||
|
int RBDMethod_0 = 14;
|
||||||
|
double amplitude_0 = 2.41;
|
||||||
|
double reduceFrequency_0 = 0.0808;
|
||||||
|
//string uDFSixDofFileName_0 = "./Bin/UDFSixDof.Parameter";
|
||||||
|
//附加力 (体轴系) fX fY fZ
|
||||||
|
double addedForce_0[] = 0.0 ,0.0 ,0.0 ;
|
||||||
|
//附加力矩(体轴系) mX mY mZ
|
||||||
|
double addedMoment_0[] = 0.0 ,0.0 ,0.0 ;
|
||||||
|
//部件变形方式
|
||||||
|
int morphing_0 = 0;
|
|
@ -0,0 +1,23 @@
|
||||||
|
// 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 = 4;
|
||||||
|
|
||||||
|
string original_grid_file = "./grid/2D_NACA0012_PM_Str.fts";
|
||||||
|
string partition_grid_file = "./grid/2D_NACA0012_PM_Str__4.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;
|
||||||
|
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue