forked from PHengLEI/PHengLEI-TestCases
添加3个旋转坐标系功能算例,修改部分参数Bug
This commit is contained in:
parent
3805128c29
commit
386c0834bb
Binary file not shown.
|
@ -0,0 +1,71 @@
|
|||
# nBoundaryConditions: Number of global boundary conditions.
|
||||
# bcName : Boundary condition name.
|
||||
# bcType(in PHengLEI): Boundary condition type.
|
||||
|
||||
# How to set boundary condition, for example:
|
||||
# string bcName = "Wall";
|
||||
# {
|
||||
# int bcType = 2;
|
||||
# int viscousType = 1;
|
||||
# double wallTemperature = -1.0;
|
||||
# double uWall = 0.0;
|
||||
# double vWall = 0.0;
|
||||
# double wWall = 0.0;
|
||||
# }
|
||||
# string bcName = "Inflow";
|
||||
# {
|
||||
# int bcType = 5;
|
||||
# int inflowParaType = 0;
|
||||
# double refMachNumber = 0.73;
|
||||
# double attackd = 2.79;
|
||||
# double angleSlide = 0.0;
|
||||
# double refReNumber = 6.5e6;
|
||||
# double refDimensionalTemperature = 288.15;
|
||||
# }
|
||||
|
||||
# For more information, see examples/bin/boundary_condition.hypara file!!!
|
||||
|
||||
int nBoundaryConditions = 5;
|
||||
string bcName = "blade";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "hub";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "shroud";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "inlet";
|
||||
{
|
||||
int bcType = 52;
|
||||
double totalPressure = 101325;
|
||||
double totalTemperature = 288;
|
||||
double direction_inlet[] = 1,0,0;
|
||||
int directionMethod =0;
|
||||
}
|
||||
string bcName = "outlet";
|
||||
{
|
||||
int bcType = 62;
|
||||
double staticPressure = 100000 ;
|
||||
}
|
||||
|
||||
# 'bcType' is defined as following:
|
||||
# -2: WAKE
|
||||
# -1: INTERFACE
|
||||
# 0 : NO_BOUNDARY_CONDITION
|
||||
# 1 : EXTRAPOLATION
|
||||
# 2 : SOLID_SURFACE
|
||||
# 3 : SYMMETRY
|
||||
# 4 : FARFIELD
|
||||
# 5 : INFLOW
|
||||
# 6 : OUTFLOW
|
||||
# 52: PRESSURE_INLET
|
||||
# 62: PRESSURE_OUTLET
|
||||
# 61: OUTFLOW_CONFINED
|
||||
# 7 : POLE
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,236 @@
|
|||
#########################################################################
|
||||
# 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 = 200;
|
||||
int intervalStepPlot = 200;
|
||||
int intervalStepForce = 20;
|
||||
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 = 0.2;
|
||||
double attackd = 0.00;
|
||||
double angleSlide = 0.00;
|
||||
|
||||
double wallTemperature = -1;
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6e6;
|
||||
double refDimensionalTemperature = 288;
|
||||
|
||||
//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;
|
||||
|
||||
double forceReferenceLengthSpanWise = 1; // unit of meter.
|
||||
double forceReferenceLength = 1; // unit of meter.
|
||||
double forceReferenceArea = 1; // 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 = "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 = "roe";
|
||||
string uns_limiter_name = "vencat" ;
|
||||
double venkatCoeff = 0.05;
|
||||
|
||||
#########################################################################
|
||||
# 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 = 5;
|
||||
int nLUSGSSweeps = 1;
|
||||
|
||||
#########################################################################
|
||||
# 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/R67.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 = 15;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6,15, 38,39,40,41,42,43,44];
|
||||
|
||||
// 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;
|
||||
|
||||
// ----------------- Periodic Parameters --------------------------------
|
||||
// Notice: Rotational periodicity only support rotation along the X axis!
|
||||
// periodicType: Which periodic boundary is used.
|
||||
// 0 -- without Periodic Boundary.
|
||||
// 1 -- Translational periodicity.
|
||||
// 2 -- Rotational periodicity.
|
||||
|
||||
int periodicType = 2;
|
||||
double translationLength[] = [0.0,0.0,0.0];
|
||||
double rotationAngle = 16.363636;
|
||||
|
||||
#************************************************************************
|
||||
# TurboMachinery Parameter *
|
||||
#************************************************************************
|
||||
// ----------------- Rotating Frame --------------------------------
|
||||
// referenceFrame: whether rotating reference frame used.
|
||||
// 0 -- Stationary Frame.
|
||||
// 1 -- Translational Frame.
|
||||
// 2 -- Rotational Frame.
|
||||
|
||||
int referenceFrame = 2;
|
||||
|
||||
// nTurboZone: number of rows of TurboMachinery.
|
||||
int nTurboZone = 1;
|
||||
|
||||
// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone
|
||||
// "Periodic_up, Periodic_down" means a pair of name of one zone
|
||||
string Periodic_Name[] = "Periodic_up, Periodic_down";
|
||||
|
||||
// PeriodicRotationAngle means rotating angle for each zone.
|
||||
// PeriodicRotationAngle[] = [theta1, theta2...]
|
||||
// theta1, theta2 means rotating angle for zone1,zone2.
|
||||
double PeriodicRotationAngle[] = [16.363636363636];
|
||||
|
||||
// Omega: angular velocity(rad/s) of each zone.
|
||||
double Omega[] = [-1680.0];
|
||||
|
||||
// shroud: define turbomachinery shroud of each zone, because shroud do not rotate.
|
||||
string shroud[] = "shroud";
|
||||
|
||||
// nSpanSection: number of spanwise section used for mixing plane.
|
||||
int nSpanSection = 10;
|
|
@ -0,0 +1,45 @@
|
|||
#########################################################################
|
||||
# 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 = 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/R67.cgns";
|
||||
string out_gfile = "./grid/R67.fts";
|
||||
|
||||
// ----------------- Periodic Parameters --------------------------------
|
||||
// Notice: Rotational periodicity only support rotation along the X axis!
|
||||
// periodicType: Which periodic boundary is used.
|
||||
// 0 -- without Periodic Boundary.
|
||||
// 1 -- Translational periodicity.
|
||||
// 2 -- Rotational periodicity.
|
||||
int periodicType = 2;
|
||||
double translationLength[] = [0.0,0.0,0.0];
|
||||
double rotationAngle = 16.363636;
|
|
@ -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,31 @@
|
|||
// 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 = 6;
|
||||
|
||||
string original_grid_file = "./grid/R67.fts";
|
||||
string partition_grid_file = "./grid/R67__6.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;
|
||||
|
||||
// ----------------- Periodic Parameters --------------------------------
|
||||
// Notice: Rotational periodicity only support rotation along the X axis!
|
||||
// periodicType: Which periodic boundary is used.
|
||||
// 0 -- without Periodic Boundary.
|
||||
// 1 -- Translational periodicity.
|
||||
// 2 -- Rotational periodicity.
|
||||
int periodicType = 2;
|
||||
double translationLength[] = [0.0,0.0,0.0];
|
||||
double rotationAngle = 16.363636;
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,94 @@
|
|||
# nBoundaryConditions: Number of global boundary conditions.
|
||||
# bcName : Boundary condition name.
|
||||
# bcType(in PHengLEI): Boundary condition type.
|
||||
|
||||
# How to set boundary condition, for example:
|
||||
# string bcName = "Wall";
|
||||
# {
|
||||
# int bcType = 2;
|
||||
# int viscousType = 1;
|
||||
# double wallTemperature = -1.0;
|
||||
# double uWall = 0.0;
|
||||
# double vWall = 0.0;
|
||||
# double wWall = 0.0;
|
||||
# }
|
||||
# string bcName = "Inflow";
|
||||
# {
|
||||
# int bcType = 5;
|
||||
# int inflowParaType = 0;
|
||||
# double refMachNumber = 0.73;
|
||||
# double attackd = 2.79;
|
||||
# double angleSlide = 0.0;
|
||||
# double refReNumber = 6.5e6;
|
||||
# double refDimensionalTemperature = 288.15;
|
||||
# }
|
||||
|
||||
# For more information, see examples/bin/boundary_condition.hypara file!!!
|
||||
|
||||
int nBoundaryConditions = 10;
|
||||
string bcName = "blade1";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "blade2";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "hub";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "hub2";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "shroud";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "shroud2";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "inlet1";
|
||||
{
|
||||
int bcType = 52;
|
||||
double totalPressure = 101325;
|
||||
double totalTemperature = 288;
|
||||
double direction_inlet[] = 1,0,0;
|
||||
int directionMethod = 0;
|
||||
}
|
||||
string bcName = "inlet2";
|
||||
{
|
||||
int bcType = 5;
|
||||
}
|
||||
string bcName = "outlet1";
|
||||
{
|
||||
int bcType = 6;
|
||||
}
|
||||
string bcName = "outlet2";
|
||||
{
|
||||
int bcType = 63;
|
||||
double massFlow = 0.45;
|
||||
}
|
||||
|
||||
# 'bcType' is defined as following:
|
||||
# -2: WAKE
|
||||
# -1: INTERFACE
|
||||
# 0 : NO_BOUNDARY_CONDITION
|
||||
# 1 : EXTRAPOLATION
|
||||
# 2 : SOLID_SURFACE
|
||||
# 3 : SYMMETRY
|
||||
# 4 : FARFIELD
|
||||
# 5 : INFLOW
|
||||
# 6 : OUTFLOW
|
||||
# 52: PRESSURE_INLET
|
||||
# 62: PRESSURE_OUTLET
|
||||
# 61: OUTFLOW_CONFINED
|
||||
# 7 : POLE
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,235 @@
|
|||
#########################################################################
|
||||
# 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 = 5000;
|
||||
|
||||
int intervalStepFlow = 200;
|
||||
int intervalStepPlot = 200;
|
||||
int intervalStepForce = 20;
|
||||
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 = 0.2;
|
||||
double attackd = 0.00;
|
||||
double angleSlide = 0.00;
|
||||
|
||||
double wallTemperature = -1;
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 6e6;
|
||||
double refDimensionalTemperature = 288;
|
||||
|
||||
//int inflowParaType = 1;
|
||||
//double height = 0.001;
|
||||
|
||||
//int inflowParaType = 2;
|
||||
//double refDimensionalTemperature =288; // The total temperature, T*(1+(refGama-1)*M*M/2).
|
||||
//double refDimensionalPressure = 100000; // The total pressure, p*(T0/T)^(refGama/(refGama-1)).
|
||||
|
||||
double gridScaleFactor = 1;
|
||||
|
||||
double forceReferenceLengthSpanWise = 1; // unit of meter.
|
||||
double forceReferenceLength = 1; // unit of meter.
|
||||
double forceReferenceArea = 1; // 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 = "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 = "roe";
|
||||
string uns_limiter_name = "vencat" ;
|
||||
double venkatCoeff = 0.5;
|
||||
|
||||
#########################################################################
|
||||
# Temporal Discretisation #
|
||||
#########################################################################
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
// CFLEnd: The CFL number, [0.1, 100].
|
||||
// The bigger the value, the convergence faster but lower robustness.
|
||||
// nLUSGSSweeps: Number of Sub-iteration of LU-SGS.
|
||||
// 1 -- is recommended for structured solver.
|
||||
// 1-3 -- is recommended for unstructured solver.
|
||||
|
||||
int iunsteady = 0;
|
||||
|
||||
double CFLEnd = 10;
|
||||
int nLUSGSSweeps = 1;
|
||||
|
||||
#########################################################################
|
||||
# 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/stage35.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 = 15;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6,15, 38,39,40,41,42,43,44];
|
||||
|
||||
// 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;
|
||||
|
||||
// ----------------- Periodic Parameters --------------------------------
|
||||
// Notice: Rotational periodicity only support rotation along the X axis!
|
||||
// periodicType: Which periodic boundary is used.
|
||||
// 0 -- without Periodic Boundary.
|
||||
// 1 -- Translational periodicity.
|
||||
// 2 -- Rotational periodicity.
|
||||
int periodicType = 2;
|
||||
double translationLength[] = [0.0,0.0,0.0];
|
||||
double rotationAngle = 16.363636;
|
||||
|
||||
// ----------------- Rotating Frame --------------------------------
|
||||
// referenceFrame: whether rotating reference frame used.
|
||||
// 0 -- Stationary Frame.
|
||||
// 1 -- Translational Frame.
|
||||
// 2 -- Rotational Frame.
|
||||
int referenceFrame = 2;
|
||||
|
||||
// nZone: the number of Global zone.
|
||||
int nTurboZone = 2;
|
||||
|
||||
// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone
|
||||
// "Periodic_up, Periodic_down" means a pair of name of one zone
|
||||
string Periodic_Name[] = "per11, per12, per21, per22";
|
||||
|
||||
// PeriodicRotationAngle means rotating angle for each zone.
|
||||
// PeriodicRotationAngle[] = [theta1, theta2...]
|
||||
// theta1, theta2 means rotating angle for zone1,zone2.
|
||||
double PeriodicRotationAngle[] = [10, 7.826086957];
|
||||
|
||||
// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone
|
||||
// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet.
|
||||
string MixingPlane[] = "outlet1, inlet2";
|
||||
|
||||
//Omega: angular velocity(rad/s) of each zone.
|
||||
double Omega[] = [-1800.0 , 0.0];
|
||||
|
||||
// shroud: define turbomachinery shroud of each zone, because shroud do not rotate.
|
||||
string shroud[] = "shroud,shroud2";
|
||||
|
||||
// nSpanSection: number of spanwise section used for mixing plane.
|
||||
int nSpanSection = 20;
|
|
@ -0,0 +1,74 @@
|
|||
#########################################################################
|
||||
# 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 = 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/stage35.cgns";
|
||||
string out_gfile = "./grid/stage35.fts";
|
||||
|
||||
// ----------------- Periodic Parameters --------------------------------
|
||||
// Notice: Rotational periodicity only support rotation along the X axis!
|
||||
// periodicType: Which periodic boundary is used.
|
||||
// 0 -- without Periodic Boundary.
|
||||
// 1 -- Translational periodicity.
|
||||
// 2 -- Rotational periodicity.
|
||||
int periodicType = 2;
|
||||
double translationLength[] = [0.0,0.0,0.0];
|
||||
double rotationAngle = 16.363636;
|
||||
|
||||
// ----------------- Rotating Frame --------------------------------
|
||||
// referenceFrame: whether rotating reference frame used.
|
||||
// 0 -- Stationary Frame.
|
||||
// 1 -- Translational Frame.
|
||||
// 2 -- Rotational Frame.
|
||||
int referenceFrame = 2;
|
||||
|
||||
// nZone: the number of Global zone.
|
||||
int nTurboZone = 2;
|
||||
|
||||
// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone
|
||||
// "Periodic_up, Periodic_down" means a pair of name of one zone
|
||||
string Periodic_Name[] = "per11, per12, per21, per22";
|
||||
|
||||
// PeriodicRotationAngle means rotating angle for each zone.
|
||||
// PeriodicRRotationAngle[] = [theta1, theta2...]
|
||||
// theta1, theta2 means rotating angle for zone1,zone2.
|
||||
double PeriodicRotationAngle[] = [10, 7.826086957];
|
||||
|
||||
// MixingPlane: a list of mixing plane name, the number of name equals to 2*nZone
|
||||
// "MixOut, MixIn" the first is upstream zone outlet, the second is downstream zone inlet.
|
||||
string MixingPlane[] = "outlet1, inlet2";
|
||||
|
||||
// Omega: angular velocity(rad/s) of each zone.
|
||||
double Omega[] = [-1800.0,0.0];
|
||||
|
||||
// shroud: define turbomachinery shroud of each zone, because shroud do not rotate.
|
||||
string shroud[] = "shroud1,shroud2";
|
|
@ -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 = "";
|
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,73 @@
|
|||
# nBoundaryConditions: Number of global boundary conditions.
|
||||
# bcName : Boundary condition name.
|
||||
# bcType(in PHengLEI): Boundary condition type.
|
||||
|
||||
# How to set boundary condition, for example:
|
||||
# string bcName = "Wall";
|
||||
# {
|
||||
# int bcType = 2;
|
||||
# int viscousType = 1;
|
||||
# double wallTemperature = -1.0;
|
||||
# double uWall = 0.0;
|
||||
# double vWall = 0.0;
|
||||
# double wWall = 0.0;
|
||||
# }
|
||||
# string bcName = "Inflow";
|
||||
# {
|
||||
# int bcType = 5;
|
||||
# int inflowParaType = 0;
|
||||
# double refMachNumber = 0.73;
|
||||
# double attackd = 2.79;
|
||||
# double angleSlide = 0.0;
|
||||
# double refReNumber = 6.5e6;
|
||||
# double refDimensionalTemperature = 288.15;
|
||||
# }
|
||||
|
||||
# For more information, see examples/bin/boundary_condition.hypara file!!!
|
||||
|
||||
int nBoundaryConditions = 5;
|
||||
string bcName = "blade";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "hub";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "shroud";
|
||||
{
|
||||
string bodyName = "body";
|
||||
int bcType = 2;
|
||||
}
|
||||
string bcName = "inlet";
|
||||
{
|
||||
int bcType = 52;
|
||||
double totalPressure = 169000;
|
||||
double totalTemperature = 305;
|
||||
//double massFlow = 1.5;
|
||||
double direction_inlet[] = 1,0,0;
|
||||
int directionMethod =0;
|
||||
}
|
||||
string bcName = "outlet";
|
||||
{
|
||||
int bcType = 62;
|
||||
//double massFlow = 1.5;
|
||||
double staticPressure = 100000.0;
|
||||
}
|
||||
|
||||
# 'bcType' is defined as following:
|
||||
# -2: WAKE
|
||||
# -1: INTERFACE
|
||||
# 0 : NO_BOUNDARY_CONDITION
|
||||
# 1 : EXTRAPOLATION
|
||||
# 2 : SOLID_SURFACE
|
||||
# 3 : SYMMETRY
|
||||
# 4 : FARFIELD
|
||||
# 5 : INFLOW
|
||||
# 6 : OUTFLOW
|
||||
# 52: PRESSURE_INLET
|
||||
# 62: PRESSURE_OUTLET
|
||||
# 61: OUTFLOW_CONFINED
|
||||
# 7 : POLE
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,231 @@
|
|||
#########################################################################
|
||||
# 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 = 2000;
|
||||
|
||||
int intervalStepFlow = 100;
|
||||
int intervalStepPlot = 100;
|
||||
int intervalStepForce = 20;
|
||||
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 = 0.2;
|
||||
double attackd = 0.00;
|
||||
double angleSlide = 0.00;
|
||||
|
||||
double wallTemperature = -1.0;
|
||||
int inflowParaType = 0;
|
||||
double refReNumber = 1.5e7;
|
||||
double refDimensionalTemperature = 288;
|
||||
|
||||
//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;
|
||||
|
||||
double forceReferenceLengthSpanWise = 1; // unit of meter.
|
||||
double forceReferenceLength = 1; // unit of meter.
|
||||
double forceReferenceArea = 1; // 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 = "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 = "roe";
|
||||
string uns_limiter_name = "vencat";
|
||||
double venkatCoeff = 0.5;
|
||||
|
||||
#########################################################################
|
||||
# Temporal Discretisation #
|
||||
#########################################################################
|
||||
// iunsteady: Steady or unsteady.
|
||||
// 0 -- steady.
|
||||
// 1 -- unsteay.
|
||||
// CFLEnd: The CFL number, [0.1, 100].
|
||||
// The bigger the value, the convergence faster but lower robustness.
|
||||
// nLUSGSSweeps: Number of Sub-iteration of LU-SGS.
|
||||
// 1 -- is recommended for structured solver.
|
||||
// 1-3 -- is recommended for unstructured solver.
|
||||
|
||||
int iunsteady = 0;
|
||||
|
||||
double CFLEnd = 10;
|
||||
|
||||
int nLUSGSSweeps = 1;
|
||||
|
||||
#########################################################################
|
||||
# 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/Aachen_1__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),
|
||||
// -- 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 = 17;
|
||||
int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 7,8,15, 38,39,40,41,42,43,44];
|
||||
|
||||
// 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 = 1;
|
||||
int limitVector = 0;
|
||||
|
||||
// ----------------- Periodic Parameters --------------------------------
|
||||
// Notice: Rotational periodicity only support rotation along the X axis!
|
||||
// periodicType: Which periodic boundary is used.
|
||||
// 0 -- without Periodic Boundary.
|
||||
// 1 -- Translational periodicity.
|
||||
// 2 -- Rotational periodicity.
|
||||
int periodicType = 2;
|
||||
double translationLength[] = [0.0,0.0,0.0];
|
||||
double rotationAngle = 10;
|
||||
|
||||
// ----------------- Rotating Frame --------------------------------
|
||||
// referenceFrame: whether rotating reference frame used.
|
||||
// 0 -- Stationary Frame.
|
||||
// 1 -- Translational Frame.
|
||||
// 2 -- Rotational Frame.
|
||||
int referenceFrame = 2;
|
||||
|
||||
// nZone: the number of Global zone.
|
||||
int nTurboZone = 1;
|
||||
|
||||
// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone
|
||||
// "Periodic_up, Periodic_down" means a pair of name of one zone
|
||||
string Periodic_Name[] = "Periodic_up, Periodic_down";
|
||||
|
||||
// PeriodicRotationAngle means rotating angle for each zone.
|
||||
// PeriodicRotationAngle[] = [theta1, theta2...]
|
||||
// theta1, theta2 means rotating angle for zone1,zone2.
|
||||
double PeriodicRotationAngle[] = [10];
|
||||
|
||||
// Omega: angular velocity(rad/s) of each zone.
|
||||
double Omega[] = [0.0];
|
||||
|
||||
// shroud: define turbomachinery shroud of each zone, because shroud do not rotate.
|
||||
string shroud[] = "shroud";
|
||||
|
||||
//nSpanSection: number of spanwise section used for mixing plane.
|
||||
int nSpanSection = 20;
|
|
@ -0,0 +1,73 @@
|
|||
#########################################################################
|
||||
# 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 = 2;
|
||||
|
||||
// ----------------- Periodic Parameters --------------------------------
|
||||
// Notice: Rotational periodicity only support rotation along the X axis!
|
||||
// periodicType: Which periodic boundary is used.
|
||||
// 0 -- without Periodic Boundary.
|
||||
// 1 -- Translational periodicity.
|
||||
// 2 -- Rotational periodicity.
|
||||
int periodicType = 2;
|
||||
double translationLength[] = [0.0,0.1,0.0];
|
||||
double rotationAngle = 10.0;
|
||||
|
||||
#########################################################################
|
||||
# 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/Aachen_1.cgns";
|
||||
string out_gfile = "./grid/Aachen_1.fts";
|
||||
|
||||
// ----------------- Rotating Frame --------------------------------
|
||||
// referenceFrame: whether rotating reference frame used.
|
||||
// 0 -- Stationary Frame.
|
||||
// 1 -- Translational Frame.
|
||||
// 2 -- Rotational Frame.
|
||||
int referenceFrame = 2;
|
||||
|
||||
// nZone: the number of Global zone.
|
||||
int nTurboZone = 1;
|
||||
|
||||
// Periodic_Name: a list of periodic boundary name, the number of name equals to 2*nZone
|
||||
// "Periodic_up, Periodic_down" means a pair of name of one zone
|
||||
string Periodic_Name[] = "Periodic_up, Periodic_down";
|
||||
|
||||
// PeriodicRotationAngle means rotating angle for each zone.
|
||||
// PeriodicRotationAngle[] = [theta1, theta2...]
|
||||
// theta1, theta2 means rotating angle for zone1,zone2.
|
||||
double PeriodicRotationAngle[] = [10];
|
||||
|
||||
// Omega: angular velocity(rad/s) of each zone.
|
||||
double Omega[] = [0.0];
|
||||
|
||||
// shroud: define turbomachinery shroud of each zone, because shroud do not rotate.
|
||||
string shroud[] = "shroud";
|
||||
|
||||
// nSpanSection: number of spanwise section used for mixing plane.
|
||||
int nSpanSection = 20;
|
|
@ -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,31 @@
|
|||
// 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/Aachen_1.fts";
|
||||
string partition_grid_file = "./grid/Aachen_1__4.fts";
|
||||
|
||||
// ----------------- Periodic Parameters --------------------------------
|
||||
// Notice: Rotational periodicity only support rotation along the X axis!
|
||||
// periodicType: Which periodic boundary is used.
|
||||
// 0 -- without Periodic Boundary.
|
||||
// 1 -- Translational periodicity.
|
||||
// 2 -- Rotational periodicity.
|
||||
int periodicType = 2;
|
||||
double translationLength[] = [0.0,0.0,0.0];
|
||||
double rotationAngle = 10;
|
||||
|
||||
// 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.
|
@ -0,0 +1 @@
|
|||
使用LBM_OMP模块时,只打开LBMSolverOMP编译选项,不打开USE_OMP
|
Loading…
Reference in New Issue