forked from PHengLEI/PHengLEI-TestCases
新增Gmresh两个算例
This commit is contained in:
parent
6eff6a7e02
commit
8bc9386ade
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,204 @@
|
||||||
|
#########################################################################
|
||||||
|
# General Control Parameter #
|
||||||
|
#########################################################################
|
||||||
|
// maxSimuStep: The max simulation step, don't care simulation is restart or not.
|
||||||
|
// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved.
|
||||||
|
// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved.
|
||||||
|
// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved.
|
||||||
|
// intervalStepRes: The step intervals for residual 'res.dat' saved.
|
||||||
|
|
||||||
|
int maxSimuStep = 3000;
|
||||||
|
|
||||||
|
int intervalStepFlow = 100;
|
||||||
|
int intervalStepPlot = 100;
|
||||||
|
int intervalStepForce = 100;
|
||||||
|
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.15;
|
||||||
|
double attackd = 15.0;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 6.0e6;
|
||||||
|
double refDimensionalTemperature = 300.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 = "nolim";
|
||||||
|
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 CFLStart = 500;
|
||||||
|
double CFLEnd = 500;
|
||||||
|
int CFLVaryStep = 1;
|
||||||
|
|
||||||
|
int nLUSGSSweeps = 4;
|
||||||
|
|
||||||
|
// GMRES control parameters
|
||||||
|
double GMRESCFLScale = 1.006
|
||||||
|
int flowInitMethod = 3;
|
||||||
|
int OriginalTscheme = 9;
|
||||||
|
int tscheme = 9;
|
||||||
|
string gradientName = "ggcell";
|
||||||
|
string uns_scheme_name = "GMRESRoe";
|
||||||
|
#########################################################################
|
||||||
|
# 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 = 2200;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# 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/NACA0012_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,35 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||||
|
// axisRotateOrder : axis rotating order.
|
||||||
|
// 1 -- X-axis.
|
||||||
|
// 2 -- Y-axis.
|
||||||
|
// 3 -- Z-axis.
|
||||||
|
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 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 nAxisRotateTimes = 0;
|
||||||
|
int axisRotateOrder[] = [1, 2, 3];
|
||||||
|
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||||
|
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/NACA0012_unstr.cas";
|
||||||
|
string out_gfile = "./grid/NACA0012_unstr.fts";
|
|
@ -0,0 +1,52 @@
|
||||||
|
string title = "PHengLEI Main Parameter Control File";
|
||||||
|
|
||||||
|
// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE.
|
||||||
|
string defaultParaFile = "./bin/cfd_para.hypara";
|
||||||
|
|
||||||
|
// ndim: Dimensional of the grid, 2 or 3.
|
||||||
|
// nparafile: the number of parameter files.
|
||||||
|
// nsimutask: simulation task type.
|
||||||
|
// 0 -- CFD Solver of NS or Turbulation.
|
||||||
|
// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc.
|
||||||
|
// Grid conversion: from other format to PHengLEI format (.fts).
|
||||||
|
// Grid reconstruction: such as grid adaptation.
|
||||||
|
// Grid merging: merge two blocks into one block.
|
||||||
|
// Grid repairing: repair the original grid in order to remove the negative volume cells.
|
||||||
|
// 2 -- Wall distance computation for turb-solver.
|
||||||
|
// 3 -- Grid partition.
|
||||||
|
int ndim = 2;
|
||||||
|
int nparafile = 1;
|
||||||
|
|
||||||
|
int nsimutask = 0;
|
||||||
|
string parafilename = "./bin/cfd_para_subsonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_transonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_supersonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_hypersonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_incompressible.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 1;
|
||||||
|
//string parafilename = "./bin/grid_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 2;
|
||||||
|
//string parafilename = "./bin/cfd_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 3;
|
||||||
|
//string parafilename = "./bin/partition.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 1;
|
||||||
|
//string parafilename = "./bin/grid_deform_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 1;
|
||||||
|
//string parafilename = "./bin/grid_refine_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 14;
|
||||||
|
//string parafilename = "./bin/integrative_solver.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -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/NACA0012_unstr.fts";
|
||||||
|
string partition_grid_file = "./grid/NACA0012_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;
|
|
@ -0,0 +1,5 @@
|
||||||
|
红山开源风雷算例库原始网格获取百度网盘链接:
|
||||||
|
链接:http://pan.baidu.com/s/1aZ9cdkp6CkT9il4fEpnTcA
|
||||||
|
提取码:w47m
|
||||||
|
|
||||||
|
注:plot3D格式网格需同时下载.grd和.inp文件
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,216 @@
|
||||||
|
#########################################################################
|
||||||
|
# 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 = 2200;
|
||||||
|
|
||||||
|
int intervalStepFlow = 100;
|
||||||
|
int intervalStepPlot = 100;
|
||||||
|
int intervalStepForce = 100;
|
||||||
|
int intervalStepRes = 1;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# 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.
|
||||||
|
// forceRefenenceLength, forceRefenenceLengthSpanWise, forceRefenenceArea: Reference length, SpanWise length and area, independent of grid unit.
|
||||||
|
// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit.
|
||||||
|
|
||||||
|
double refMachNumber = 10.00;
|
||||||
|
double attackd = 0.00;
|
||||||
|
double angleSlide = 0.00;
|
||||||
|
|
||||||
|
double wallTemperature = 294;
|
||||||
|
|
||||||
|
int inflowParaType = 0;
|
||||||
|
double refReNumber = 1.0e5;
|
||||||
|
double refDimensionalTemperature = 79;
|
||||||
|
|
||||||
|
//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 = 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_limiter_name = "1st";
|
||||||
|
double venkatCoeff = 0.5;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# Temporal Discretisation #
|
||||||
|
#########################################################################
|
||||||
|
// iunsteady: Steady or unsteady.
|
||||||
|
// 0 -- steady.
|
||||||
|
// 1 -- unsteay.
|
||||||
|
// CFLEnd: The CFL number, [0.1, 100].
|
||||||
|
// The bigger the value, the convergence faster but lower robustness.
|
||||||
|
// ktmax: The lower the value, the more robustness, 1.0e5 - 1.0e10.
|
||||||
|
|
||||||
|
int iunsteady = 0;
|
||||||
|
|
||||||
|
double CFLStart = 0.01;
|
||||||
|
double CFLEnd = 3.0;
|
||||||
|
int CFLVaryStep = 1000;
|
||||||
|
|
||||||
|
double ktmax = 1.0e10;
|
||||||
|
|
||||||
|
int flowInitStep = 0;
|
||||||
|
|
||||||
|
// the controlling parameters for GMRES
|
||||||
|
double GMRESCFLScale = 1.009;
|
||||||
|
int OriginalTscheme = 9;
|
||||||
|
int tscheme = 9;
|
||||||
|
int flowInitMethod = 3;
|
||||||
|
string uns_scheme_name = "GMRESSteger";
|
||||||
|
string gradientName = "ggcell";
|
||||||
|
#########################################################################
|
||||||
|
# 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 = 2000;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# 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/sphere_m10.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),
|
||||||
|
// -- 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,35 @@
|
||||||
|
#########################################################################
|
||||||
|
# Grid data type #
|
||||||
|
#########################################################################
|
||||||
|
// gridtype: Grid type for generation, conversion, reconstruction, merging.
|
||||||
|
// 0 -- Unstructured grid.
|
||||||
|
// 1 -- Structured grid.
|
||||||
|
// nAxisRotateTimes: number of axis rotating times, zero (default) meaning without rotating.
|
||||||
|
// axisRotateOrder : axis rotating order.
|
||||||
|
// 1 -- X-axis.
|
||||||
|
// 2 -- Y-axis.
|
||||||
|
// 3 -- Z-axis.
|
||||||
|
// axisRotateAngles: axis rotating angles (degree), which are corresponding to the axis rotating order.
|
||||||
|
// from_gtype: Type of grid data type in grid conversion process.
|
||||||
|
// -1 -- MULTI_TYPE.
|
||||||
|
// 1 -- PHengLEI, *.fts.
|
||||||
|
// 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 nAxisRotateTimes = 0;
|
||||||
|
int axisRotateOrder[] = [1, 2, 3];
|
||||||
|
double axisRotateAngles[] = [0.0, 0.0, 0.0];
|
||||||
|
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/sphere_m10.cas";
|
||||||
|
string out_gfile = "./grid/sphere_m10.fts";
|
|
@ -0,0 +1,52 @@
|
||||||
|
string title = "PHengLEI Main Parameter Control File";
|
||||||
|
|
||||||
|
// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE.
|
||||||
|
string defaultParaFile = "./bin/cfd_para.hypara";
|
||||||
|
|
||||||
|
// ndim: Dimensional of the grid, 2 or 3.
|
||||||
|
// nparafile: the number of parameter files.
|
||||||
|
// nsimutask: simulation task type.
|
||||||
|
// 0 -- CFD Solver of NS or Turbulation.
|
||||||
|
// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc.
|
||||||
|
// Grid conversion: from other format to PHengLEI format (.fts).
|
||||||
|
// Grid reconstruction: such as grid adaptation.
|
||||||
|
// Grid merging: merge two blocks into one block.
|
||||||
|
// Grid repairing: repair the original grid in order to remove the negative volume cells.
|
||||||
|
// 2 -- Wall distance computation for turb-solver.
|
||||||
|
// 3 -- Grid partition.
|
||||||
|
int ndim = 3;
|
||||||
|
int nparafile = 1;
|
||||||
|
|
||||||
|
int nsimutask = 0;
|
||||||
|
//string parafilename = "./bin/cfd_para_subsonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_transonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_supersonic.hypara";
|
||||||
|
string parafilename = "./bin/cfd_para_hypersonic.hypara";
|
||||||
|
//string parafilename = "./bin/cfd_para_incompressible.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 1;
|
||||||
|
//string parafilename = "./bin/grid_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 2;
|
||||||
|
//string parafilename = "./bin/cfd_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 3;
|
||||||
|
//string parafilename = "./bin/partition.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 1;
|
||||||
|
//string parafilename = "./bin/grid_deform_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 1;
|
||||||
|
//string parafilename = "./bin/grid_refine_para.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 14;
|
||||||
|
//string parafilename = "./bin/integrative_solver.hypara";
|
||||||
|
|
||||||
|
//int nsimutask = 99;
|
||||||
|
//string parafilename = "./bin/post_processing.hypara";
|
||||||
|
|
||||||
|
// ---------------- Advanced Parameters, DO NOT care it ----------------
|
||||||
|
int numberOfGridProcessor = 0;
|
||||||
|
// ATP read
|
||||||
|
//@string parafilename1 = ""
|
||||||
|
//@string parafilename2 = "";
|
|
@ -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/sphere_m10.fts";
|
||||||
|
string partition_grid_file = "./grid/sphere_m10__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;
|
|
@ -0,0 +1,5 @@
|
||||||
|
红山开源风雷算例库原始网格获取百度网盘链接:
|
||||||
|
链接:http://pan.baidu.com/s/1aZ9cdkp6CkT9il4fEpnTcA
|
||||||
|
提取码:w47m
|
||||||
|
|
||||||
|
注:plot3D格式网格需同时下载.grd和.inp文件
|
Loading…
Reference in New Issue