添加3个旋转坐标系功能算例,修改部分参数Bug

This commit is contained in:
hechao 2023-12-29 14:44:56 +08:00
parent 3805128c29
commit 386c0834bb
25 changed files with 5848 additions and 0 deletions

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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 = "";

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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";

View File

@ -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 = "";

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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 = "";

View File

@ -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;

View File

@ -0,0 +1 @@
使用LBM_OMP模块时只打开LBMSolverOMP编译选项不打开USE_OMP