diff --git a/ThreeD_NACA0012_SA_Struct/bin/cfd_para.hypara b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para.hypara similarity index 91% rename from ThreeD_NACA0012_SA_Struct/bin/cfd_para.hypara rename to A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para.hypara index f52cf86..df090b7 100644 --- a/ThreeD_NACA0012_SA_Struct/bin/cfd_para.hypara +++ b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para.hypara @@ -26,15 +26,7 @@ // multiblock: Multi-block grid or not, only for structured grid conversion. // 0 -- Not. // 1 -- Yes. -// grid_database_index: Case of typical case, only for gridobj=0. -// 1 -- Laminar flat plate of subsonic flow. -// 2 -- Laminar flat plate of supersonic flow. -// 3 -- Turbulent flat plate of subsonic flow. -// 4 -- Turbulent flat plate of supersonic flow. // iadapt: Adaptation number for unstructure grid. -// iovrlap: Overlapping(overset) grid or not. -// 0 -- NON-overlapping grid. -// 1 -- Overlapping grid. // SymmetryFaceVector: The vector of symmetry face. // 0 -- X axis. // 1 -- Y axis. @@ -42,9 +34,7 @@ int gridtype = 0; int gridobj = 1; int multiblock = 0; -int grid_database_index = 3; int iadapt = 0; -int iovrlap = 0; int SymmetryFaceVector = 1; // axisup: Type of Cartisien coordinates system, used in grid conversion. @@ -89,22 +79,18 @@ string out_gfile = "./grid/flat_laminr_133_85_2d.fts"; // iunsteady: The Grid is for unsteady simulation or not. int iunsteady = 0; int iale = 0; +int codeOfAleModel = 0; // fileformat: Ustar Grid file format. // 0 -- BINARY. // 1 -- ASCII. int fileformat = 0; -// .skl meaning skeleton. -string original_grid_info_file = "./grid/FLUENT_test.skl"; - // Parameters for hybrid solver. // mixgrid_uns: path of unstructure grid file for hybrid solver, *.fts type. // mixgrid_str: path of structure grid file for hybrid solver, *.fts type. -// mixgrid_str_bc: path of structure grid boundary condition file for hybrid solver. string mixgrid_uns = "./grid/rae2822_uns2d_4.fts"; string mixgrid_str = "./grid/flat_laminr_133_85_2d.fts"; -string mixgrid_str_bc = "./grid/flat_laminr_133_85_2d.inp"; // Some parameters for structured overlapping grid. int codeOfDigHoles = 1; @@ -176,6 +162,11 @@ int traceMark = 0; int blockIndexOfMark = 0; int cellIndexOfMark[] = [185,30,1]; +// parallel Strategy: +//! -# 0 : each zone is assigned to the one that defined in grid partition procedure. +//! -# 1 : random assigned for each zone or by some else ways. +int parallelStrategy = 1; + //----------------------------------------------------------------------- # File path # //----------------------------------------------------------------------- @@ -253,12 +244,6 @@ int compressible = 1; // refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition. // height: Fly height, unit of km. // wallTemperature: Temprature of the solid wall, minus value is for adiabatic boundary condition. -// dump_Q: Dump out thermal flux Q of solid wall. -// 0 -- no dump out. -// 1 -- dump out wall Q only. -// 2 -- dump out wall Q & the typical position Q of ball. -// 3 -- dump out wall Q & the typical position Q of cone. -// 4 -- dump out wall Q & the typical position Q of double sphere. // gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like: // 1 dm = 0.1 m. // 1 cm = 0.01 m. @@ -296,11 +281,11 @@ double freestream_vibration_temperature = 10000.00; //double refDimensionalPressure = 1.01313E05; double wallTemperature = -1.0; -int dump_Q = 0; double radiationCoef = 0.8; double gridScaleFactor = 1.0; +int numberOfAerodynamicForceComponents = 1; double forceRefenenceLengthSpanWise = 1.0; // unit of meter. double forceRefenenceLength = 1.0; // unit of meter. double forceRefenenceArea = 1.0; // unit of meter^2. @@ -410,7 +395,6 @@ double venkatCoeff = 5.0; int reconmeth = 1; int limitVariables = 0; int limitVector = 0; -double limit_angle = 0; double skewnessAngle = 60.0; int roeEntropyFixMethod = 3; @@ -454,7 +438,7 @@ double roeEntropyScale = 1.0; // 1 --Global. // visl_min: Minimum value of laminar viscosity coefficient. // turbCFLScale: Turbulence model cfl number factor. -// iale: Arbitrary Lagrangian-Eulerian method. +// codeOfAleModel: Arbitrary Lagrangian-Eulerian method. // 0 -- no ALE method. // 1 -- ALE method for non-moving grids. // 2 -- ALE method for moving grids. @@ -471,7 +455,9 @@ double physicalTimeStep = 0.01; int ifStartFromSteadyResults = 0; int ifStaticsFlowField = 0; int startStatisticStep = 800000; +int linearTwoStepMethods = 1; // 1--BDF1; 2--C-N; 3--BDF2; +int methodOfDualTime = 3; int min_sub_iter = 50; int max_sub_iter = 50; double tol_sub_iter = 0.01; @@ -493,14 +479,13 @@ int order = 2; double visl_min = 0.01; double turbCFLScale = 1.0; - +double csrv = 2.0; double timemax = 1.0e10; double dtsave = -1.0; -int iale = 0; -int ialetype = 2; +int codeOfAleModel = 0; +int aleStartStrategy = -1; int maxale = 10; double dtau = 0.001; -double dtau_max = 1E-01; int wallFunctionType = 0; @@ -522,7 +507,7 @@ double lamda[] = 0.5, 1.0; // 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! -// isPlotVolumeField: If dump out the field results to visulization. +// plotFieldType: If dump out the field results to visulization. // walldistMethod: The method to compute wall distance. // 0 -- accurate but not fast enough. // 1 -- fast but not accurate enough. @@ -550,22 +535,18 @@ string restartNSFile = "results/flow.dat"; string turbfile = "results/turb.dat"; string visualfile = "results/tecflow.plt"; -string Qwall_file = "results/Qwall.dat"; string wall_aircoefile = "results/wall_aircoef.dat"; string probesflowfile = "results/sample.dat"; -string surfacefile = ""; -int nDumpSurfaceInfo = 0; +int nDumpSurfaceInfo = 0; string wall_varfile = ""; -string componentDefineFile = "bin/component.hypara"; -string jetDefineFile = "bin/jet.hypara"; +string jetDefineFile = "bin/jet.hypara"; -string componentforcefile = "results/component_aircoef.dat"; +string overset_gridfile = "results/iblank.ovs"; +string sixDofFileName = "results/sixDofInfo.dat"; -string overset_gridfile = "iblank.ovs"; - -int isPlotVolumeField = 0; +int plotFieldType = 0; // visualfileType: The file type of visualfile. // 0 -- Tecplot binary. @@ -600,7 +581,7 @@ double upperPlotFieldBox[] = [1.0 1.0 1.0]; // -- 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), -// -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44). +// -- gradientUx(41), gradientUy(42), gradientVx(43), gradientVy(44), iblank(81). // Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! // Variables order must from small to big. int nVisualVariables = 8; @@ -610,19 +591,48 @@ int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; // 1 -- Turbulent flat plate. int dumpStandardModel = 0; -// ifSetProbesToMonitor: Set probes location to Monitor. -// 0 -- Do not monitor. -// 1 -- To monitor and save data to files. -// probesDefineFile: probes location information file. +// ifSetDataMonitor: Whether to set the data monitor. +// 0 -- No. +// 1 -- Yes. +// dataMonitorType: The type of data Monitor. +// 0 -- Probes data monitor. +// 1 -- Lines data monitor. +// 2 -- Surfaces data monitor. +// probesDefineFile: Probes location information file. +// nLines: The number of lines need to be monitored. +// linesDefineFile: Lines location information file. +// nSurfaces: The number of surfaces need to be monitored. +// surfacesDefineFile: Surfaces location information file. +// searchCellsMethod: method to search the cell of each probe. +// 0 -- Nearest cell to the probe. +// 1 -- Real cell where the probe is located. // nProbeVariables: Number of variables want to be dumped for probes monitered. // probeVariables : Variable types dumped, listed as following: -// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5). +// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5). // Important Warning: Array size of probeVariables MUST be equal to nProbeVariables!!! // probeVariables order must from small to big. -int ifSetProbesToMonitor = 0; -string probesDefineFile = "bin/probes_location.hypara"; +// probeVariablesInterpolationMethod: Interpolation method used to compute the probe variables. +// 0 -- Take the value of probe's cell as probe real value. +// 1 -- Interpolation from probe's and neighbouring cell to probe. +// 2 -- Interpolation from probe's cell nodes to probe. +int ifSetDataMonitor = 0; + +int dataMonitorType = 0; +string probesDefineFile = "bin/probes_XYZ.dat"; + +//int dataMonitorType = 1; +//int nLines = 1; +//string linesDefineFile = "bin/lines_XYZ.dat"; + +//int dataMonitorType = 2; +//int nSurfaces = 4; +//string surfacesDefineFile = "bin/surfaces_XYZ.dat"; + +int searchCellsMethod = 0; + int nProbeVariables = 6; int probeVariables[] = [0, 1, 2, 3, 4, 5]; +int probeVariablesInterpolationMethod = 0; //----------------------------------------------------------------------- # Turbulence Parameter # //----------------------------------------------------------------------- @@ -634,19 +644,17 @@ int probeVariables[] = [0, 1, 2, 3, 4, 5]; // mod_turb_res: If modify the residuals for the cells next to the wall or not, default is 0. int turbInterval = 1; -int turb_vis_kind = 2; int kindOfTurbSource = 0; int mod_turb_res = 0; double turb_relax = 1.0; -double turb_min_coef = 1.0e-1; double freeStreamViscosity = 1.0e-3; -double muoo = 1.0e-1; -double kwoo = 1.0; +double muoo = 3.0; +double kwoo = 5.0; +int transitionType = 0; +double turbIntensity = -1.0; # maximum eddy viscosity (myt/my) max. double eddyViscosityLimit = 1.0e10; -double sdilim = 1.0e20; -double coef_kvist = 1.0; int monitor_vistmax = 0; //----------------------------------------------------------------------- @@ -748,14 +756,9 @@ int monitorNegativeConstant = 0; int dg_high_order = 0; int iapplication = 0; -int iCodeBranch = 0; +int iCodeBranch = 0; int nm = 5; -// MHD -double bxoo = 0.0; -double byoo = 0.0; -double bzoo = 0.0; - double refGama = 1.4; double prl = 0.72; double prt = 0.90; @@ -878,6 +881,30 @@ double MUSCLCoefXk = -1; double MUSCLCoefXb = 1.0; int allReduceStep = 1; +// ----------------- overlap configuration ------------------------------ +// codeOfOversetGrid: Overlapping(overset) grid or not. +// 0 -- NON-overlapping grid. +// 1 -- Overlapping grid. +int codeOfOversetGrid = 0; +int codeOfOversetSlipGrid = 0; +int readOversetFileOrNot = 0; +int symetryOrNot = 0; +int readInAuxiliaryInnerGrid = 1; +int readInAuxiliaryOuterGrid = 0; +int readInSklFileOrNot = 0; +string auxiliaryInnerGrid0 = "./grid/aux-upper.fts"; +string auxiliaryInnerGrid1 = "./grid/aux-lower.fts"; +string auxiliaryInnerGrid2 = ""; +string oversetGridFileName = "./grid/overlap.ovs"; +double walldistMainZone = 1.0 +double toleranceForOversetSearch = 1.0e-3; +double toleranceForOversetBox = 1.0e-3; +int twoOrderInterpolationOrNot = 0; +int keyEnlargeOfActiveNodes = 0; +int outTecplotOverset = 0; + +int numberOfMovingBodies = 2; + // ---------------- ATP read -------------------------------------------- //@int inflowParaType = 0; //@double refReNumber = 2.329418E08; @@ -888,3 +915,9 @@ int allReduceStep = 1; //@int nsubsonicOutlet = 0; //@string inLetFileName = "./bin/subsonicInlet.hypara"; //@string outLetFileName = "./bin/subsonicOutlet.hypara"; + +######################################################################### +# Old Parameter # +######################################################################### +int isPlotVolumeField = 0; + diff --git a/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para_transonic.hypara b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para_transonic.hypara new file mode 100644 index 0000000..f9c70eb --- /dev/null +++ b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/cfd_para_transonic.hypara @@ -0,0 +1,203 @@ +######################################################################### +# General Control Parameter # +######################################################################### +// maxSimuStep: The max simulation step, don't care simulation is restart or not. +// intervalStepFlow: The step intervals for flow variables file 'flow.dat' saved. +// intervalStepPlot: The step intervals for tecplot visual file 'tecflow.dat' saved. +// intervalStepForce: The step intervals for aerodynamics coefficients file 'aircoef.dat' saved. +// intervalStepRes: The step intervals for residual 'res.dat' saved. + +int maxSimuStep = 50000; + +int intervalStepFlow = 1000; +int intervalStepPlot = 1000; +int intervalStepForce = 100; +int intervalStepRes = 10; + +######################################################################### +# Inflow Parameter # +######################################################################### +// refMachNumber: Mach number. +// attackd: Angle of attack. +// angleSlide: Angle of sideslip. +// inflowParaType: The type of inflow parameters. +// 0 -- the nondimensional conditions. +// 1 -- the flight conditions. +// 2 -- the experiment conditions. +// 3 -- the subsonic boundary conditions. +// refReNumber: Reynolds number, which is based unit length, unit of 1/m. +// refDimensionalTemperature: Dimensional reference temperature, or the total temperature only for the experiment condition. +// refDimensionalPressure: Dimensional reference pressure, or the total pressure only for the experiment condition. +// height: Fly height, unit of km. +// gridScaleFactor: The customizable unit of the grid, default value is 1.0 for meter.Common dimensions like: +// 1 dm = 0.1 m. +// 1 cm = 0.01 m. +// 1 mm = 0.001m. +// 1 inch = 0.0254m. +// 1 foot = 12 inches = 0.3048m. +// 1 yard = 3 feet = 0.9144m. +// forceRefenenceLength, forceRefenenceLengthSpanWise, forceRefenenceArea: Reference length, SpanWise length and area, independent of grid unit. +// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent of grid unit. + +double refMachNumber = 0.799; +double attackd = 2.26; +double angleSlide = 0.00; + +int inflowParaType = 0; +double refReNumber = 9.0e6; +double refDimensionalTemperature = 288.15; + +//int inflowParaType = 1; +//double height = 0.001; + +//int inflowParaType = 2; +//double refDimensionalTemperature = 6051.024; // The total temperature, T*(1+(refGama-1)*M*M/2). +//double refDimensionalPressure = 4.299696E09; // The total pressure, p*(T0/T)^(refGama/(refGama-1)). + +double gridScaleFactor = 1.0; + +double forceRefenenceLengthSpanWise = 1.0; // unit of meter. +double forceRefenenceLength = 1.0; // unit of meter. +double forceRefenenceArea = 1.0; // unit of meter^2. +double TorqueRefX = 0.0; // unit of meter. +double TorqueRefY = 0.0; // unit of meter. +double TorqueRefZ = 0.0; // unit of meter. + +######################################################################### +# Physical models # +######################################################################### +// viscousType : Viscous model. +// 0 -- Euler. +// 1 -- Lamilar. +// 3 -- 1eq turbulent. +// 4 -- 2eq turbulent. +// viscousName: Laminar or tubulent model. +// -- "1eq-sa", when viscousType = 3. +// -- "2eq-kw-menter-sst", when viscousType = 4. +// DESType: Type of DES. +// 0 -- RANS.(default) +// 1 -- DES. +// 2 -- DDES. +// 3 -- IDDES. + +//int viscousType = 0; +//string viscousName = "Euler"; + +//int viscousType = 1; +//string viscousName = "laminar"; + +int viscousType = 3; +string viscousName = "1eq-sa"; + +//int viscousType = 4; +//string viscousName = "2eq-kw-menter-sst"; + +int DESType = 0; + +int roeEntropyFixMethod = 2; +double roeEntropyScale = 1.0; +######################################################################### +# Spatial Discretisation # +######################################################################### +#******************************************************************* +# Struct Solver * +#******************************************************************* +// inviscidSchemeName: Spatial discretisation scheme of struct grid. +// Using this when solve structered grid or hybrid. +// -- "roe", "vanleer", "ausm+up", "ausmpw". +// str_limiter_name: Limiter of struct grid. +// -- "3rdsmooth", "smooth". +// -- "nolim", no limiter. + +string inviscidSchemeName = "roe"; +string str_limiter_name = "smooth"; + +#******************************************************************* +# 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 = 5.0; + +######################################################################### +# Temporal Discretisation # +######################################################################### +// iunsteady: Steady or unsteady. +// 0 -- steady. +// 1 -- unsteay. +// CFLEnd: The CFL number, [0.1, 100]. +// The bigger the value, the convergence faster but lower robustness. +// nLUSGSSweeps: Number of Sub-iteration of LU-SGS. +// 1 -- is recommended for structured solver. +// 1-3 -- is recommended for unstructured solver. + +int iunsteady = 0; + +double CFLEnd = 30.0; + +int nLUSGSSweeps = 1; + +######################################################################### +# Multi-Grid parameters # +######################################################################### +// nMGLevel: The number of Multi-Grid level. +// = 1 -- single-level. +// > 1 -- multi-level. +// flowInitStep: Flow initialization step, 0 - 500 is suggested. +// Multi-Grid : Number of steps computing on coarse grid, during flow initialization. +// Single-Grid: Number of steps computing using first-order with vanleer, during flow initialization. + +int nMGLevel = 1; +int flowInitStep = 100; + +######################################################################### +# File In or Out # +######################################################################### +// gridfile: The partitioned Grid file path, using relative path, +// which is relative to the working directory. +// IMPORTANT WARNING: The file index should be ignored, +// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts, +// Please use 'rae2822_hybrid2d__4.fts' here! +// plotFieldType: If dump out the whole field results to tecplot or not, 0 / 1. + +string gridfile = "./grid/NACA0012__4.fts"; +int plotFieldType = 0; + +// ----------------- Advanced Parameters, DO NOT care it ---------------- +// nVisualVariables: Number of variables want to be dumped for tecplot visualization. +// visualVariables: Variable types dumped, listed as following: +// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6), +// -- viscosityLaminar(7), viscosityTurbulent(8), +// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12), +// -- strain_rate(13), Q_criteria(14), Cp(15), timeStep(16), volume(17), +// -- modeledTKE(18), modeleddissipationrate(19), SSTF1(20), SSTF2(21), iblank(81). +// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!! +// Variables order must from small to big. + +int nVisualVariables = 8; +int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; + +// limitVariables: Limit model (It is useful only if limitVector is 0). +// 0 -- limit only for pressure and denstiny, then get the min value. +// 1 -- limit for every variables, then get the min value. +// limitVector: +// 0 -- Each variable use the same limiter coefficient. +// 1 -- Each variable use the respective limiter coefficients. +// reconmeth: +// 0 -- When reconstruct face value, Q+, Q- use respective limiter coefficients. +// 1 -- Q+, Q- use the min limiter coefficients of left and right cell. + +int reconmeth = 1; +int limitVariables = 0; +int limitVector = 0; diff --git a/ThreeD_NACA0012_SA_Struct/bin/grid_para.hypara b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/grid_para.hypara similarity index 53% rename from ThreeD_NACA0012_SA_Struct/bin/grid_para.hypara rename to A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/grid_para.hypara index e25b297..08eddf8 100644 --- a/ThreeD_NACA0012_SA_Struct/bin/grid_para.hypara +++ b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/grid_para.hypara @@ -2,21 +2,21 @@ # Grid data type # ######################################################################### // gridtype: Grid type for generation, conversion, reconstruction, merging. -// 0 -- Unstructured grid. -// 1 -- Structured grid. -// axisup: Type of Cartisien coordinates system, used in grid conversion. -// 1 -- Y upward. (default) -// 2 -- Z upward. +// 0 -- Unstructured grid. +// 1 -- Structured grid. +// axisup: Type of Cartisien coordinates system, used in grid conversion. +// 1 -- Y upward. (default) +// 2 -- Z upward. // from_gtype: Type of grid data type in grid conversion process. -// -1 -- MULTI_TYPE -// 1 -- HyperFLOW( PHengLEI ), *.fts. -// 2 -- CGNS, *.cgns. -// 3 -- Plot3D type of structured grid, *.dat/*.grd. -// 4 -- Fieldview type of unstructured grid, *.dat/*.inp. -// 5 -- Fluent, *.cas/*.msh. -// 6 -- Ustar, mgrid.in. -// 7 -- Hybrid, include both of unstructured and structured grid, *.fts. -// 8 -- GMSH, *.msh. +// -1 -- MULTI_TYPE. +// 1 -- PHengLEI, *.fts. +// 2 -- CGNS, *.cgns. +// 3 -- Plot3D type of structured grid, *.dat/*.grd. +// 4 -- Fieldview type of unstructured grid, *.dat/*.inp. +// 5 -- Fluent, *.cas/*.msh. +// 6 -- Ustar, mgrid.in. +// 7 -- Hybrid, include both of unstructured and structured grid, *.fts. +// 8 -- GMSH, *.msh. int gridtype = 1; int axisup = 1; int from_gtype = 3; @@ -27,8 +27,4 @@ int from_gtype = 3; // from_gfile: path of original data file for unstructure grid convert from. // out_gfile: path of target file for grid convert to, *.fts type of file usually. string from_gfile = "./grid/NACA0012.grd"; -string out_gfile = "./grid/NACA0012.fts"; - - - - +string out_gfile = "./grid/NACA0012.fts"; diff --git a/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/key.hypara b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/key.hypara new file mode 100644 index 0000000..2332f09 --- /dev/null +++ b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/key.hypara @@ -0,0 +1,53 @@ +string title = "PHengLEI Main Parameter Control File"; + +// IMPORTANT NOTICE: DON NOT MODIFY THE FOWLLOWING LINE. +string defaultParaFile = "./bin/cfd_para.hypara"; + +// ndim: Dimensional of the grid, 2 or 3. +// nparafile: the number of parameter files. +// nsimutask: simulation task type. +// 0 -- CFD Solver of NS or Turbulation. +// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc. +// Grid conversion: from other format to PHengLEI format (.fts). +// Grid reconstruction: such as grid adaptation. +// Grid merging: merge two blocks into one block. +// Grid repairing: repair the original grid in order to remove the negative volume cells. +// 2 -- Wall distance computation for turb-solver. +// 3 -- Grid partition. +// 4 -- Knowledge repository / examples of PHengLEI-API. +int ndim = 3; +int nparafile = 1; + +int nsimutask = 0; +//string parafilename = "./bin/cfd_para_subsonic.hypara"; +string parafilename = "./bin/cfd_para_transonic.hypara"; +//string parafilename = "./bin/cfd_para_supersonic.hypara"; +//string parafilename = "./bin/cfd_para_hypersonic.hypara"; +//string parafilename = "./bin/incompressible.hypara"; + +//int nsimutask = 1; +//string parafilename = "./bin/grid_para.hypara"; + +//int nsimutask = 2; +//string parafilename = "./bin/cfd_para.hypara"; + +//int nsimutask = 3; +//string parafilename = "./bin/partition.hypara"; + +//int nsimutask = 4; +//string parafilename = "./bin/repository.hypara"; + +//int nsimutask = 5; +//string parafilename = "./bin/overset_grid_view.hypara"; + +//int nsimutask = 14; +//string parafilename = "./bin/integrative_solver.hypara"; + +//int nsimutask = 99; +//string parafilename = "./bin/post_processing.hypara"; + +// ---------------- Advanced Parameters, DO NOT care it ---------------- +int numberOfGridProcessor = 0; +// ATP read +//@string parafilename1 = "" +//@string parafilename2 = ""; diff --git a/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/partition.hypara b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/partition.hypara new file mode 100644 index 0000000..26597c0 --- /dev/null +++ b/A06_ThreeD_NACA0012_SA_Struct_4CPU/bin/partition.hypara @@ -0,0 +1,21 @@ +// pgridtype: The grid type. +// 0 -- unstruct grid. +// 1 -- struct grid. +// maxproc: The number of partition zones that want to be divided into, +// which is equal to the number of CPU processors you want. +// Usually, 50~100 thousands structured cells per CPU-Core is suggested. +// 30~70 thousands unstructured cells per CPU-Core is suggested. +// original_grid_file: Original grid file that want to be divided(PHengLEI type, *.fts). +// partition_grid_file: Target partition grid file(PHengLEI type, *.fts). + +int pgridtype = 1; +int maxproc = 4; + +string original_grid_file = "./grid/NACA0012.fts"; +string partition_grid_file = "./grid/NACA0012__4.fts"; + +// numberOfMultigrid: Number of multi-grid levels, ONLY used for structured grid. +// 1 -- single level. +// 2 -- 2 level. +// N -- N level,..., et al. +int numberOfMultigrid = 1; diff --git a/ThreeD_NACA0012_SA_Struct/grid/NACA0012.grd b/A06_ThreeD_NACA0012_SA_Struct_4CPU/grid/NACA0012.grd similarity index 100% rename from ThreeD_NACA0012_SA_Struct/grid/NACA0012.grd rename to A06_ThreeD_NACA0012_SA_Struct_4CPU/grid/NACA0012.grd diff --git a/ThreeD_NACA0012_SA_Struct/grid/NACA0012.inp b/A06_ThreeD_NACA0012_SA_Struct_4CPU/grid/NACA0012.inp similarity index 100% rename from ThreeD_NACA0012_SA_Struct/grid/NACA0012.inp rename to A06_ThreeD_NACA0012_SA_Struct_4CPU/grid/NACA0012.inp diff --git a/ThreeD_NACA0012_SA_Struct/bin/cfd_para_transonic.hypara b/ThreeD_NACA0012_SA_Struct/bin/cfd_para_transonic.hypara deleted file mode 100644 index bf794a3..0000000 --- a/ThreeD_NACA0012_SA_Struct/bin/cfd_para_transonic.hypara +++ /dev/null @@ -1,197 +0,0 @@ -######################################################################### -# General Control Parameter # -######################################################################### -// maxsimustep: the max simulation step, don't care simulation is restart or not. -// intervalStepFlow: the step intervals for flow variables file 'flow.dat' saved. -// intervalStepPlot: the step intervals for tecplot visual file 'tecflow.dat' saved. -// intervalStepForce: the step intervals for aerodynamics coefficients file 'aircoef.dat' saved. -// intervalStepRes: the step intervals for residual 'res.dat' saved. - -int maxSimuStep = 50000; - -int intervalStepFlow = 1000; -int intervalStepPlot = 1000; -int intervalStepForce = 100; -int intervalStepRes = 10; - -######################################################################### -# Inflow Parameter # -######################################################################### -// refMachNumber: Mach number per meter. -// attackd: Angle of attack. -// angleSlide: Angle of sideslip. -// refReNumber: Reynolds number, which is based unit length, unit of 1/m. -// refDimensionalTemperature: dimensional reference temperature, or the total temperature only for the experiment condition. -// refDimensionalPressure: dimensional reference pressure , or the total pressure only for the experiment condition. -// inflowParaType: the type of inflow parameters. -// 0 - the nondimensional conditions. -// 1 - the flight conditions. -// 2 - the experiment conditions. -// height: Fly height, unit of km. -// gridScaleFactor: The customizable unit of the grid, default value 1.0 metre. -// forceRefenenceLength, forceRefenenceArea: Reference length and area, independent to grid scale. -// TorqueRefX, TorqueRefY, TorqueRefZ: Reference point, independent to grid scale. - -double refMachNumber = 0.799; -double attackd = 2.26; -double angleSlide = 0.00; - -int inflowParaType = 0; -double refReNumber = 9.0e6; -double refDimensionalTemperature = 288.15; - -//int inflowParaType = 1; -//double height = 0.001; - -//int inflowParaType = 2; -//double refDimensionalTemperature = 6051.024; //the total temperature, T*(1+(gama0-1)*M*M/2). -//double refDimensionalPressure = 4.299696E09; //the total pressure, p*(T0/T)^(gama0/(gama0-1)). - -double gridScaleFactor = 1.0; - -double forceRefenenceLengthSpanWise = 1.0; // unit of meter. -double forceRefenenceLength = 1.0; // unit of meter. -double forceRefenenceArea = 1.0; // unit of meter^2 -double TorqueRefX = 0.0; // unit of meter. -double TorqueRefY = 0.0; // unit of meter. -double TorqueRefZ = 0.0; // unit of meter. - -#******************************************************************* -# Physical models * -#******************************************************************* -// iviscous: Viscous model -// 0 - Euler -// 1 - Lamilar -// 3 - 1eq turbulent -// 4 - 2eq turbulent -// viscousName : Laminar or tubulent model -// - "1eq-sa", when iviscous = 3 -// - "2eq-kw-menter-sst", when iviscous = 4 -// DESType : Type of DES -// 0 - RANS (default); -// 1 - DES; -// 2 - DDES; -// 3 - IDDES; - -//int iviscous = 0; -//string viscousName = "Euler"; - -//int iviscous = 1; -//string viscousName = "laminar"; - -int viscousType = 3; -string viscousName = "1eq-sa"; - -//int iviscous = 4; -//string viscousName = "2eq-kw-menter-sst"; - -int DESType = 0; - -int roeEntropyFixMethod = 2; -double roeEntropyScale = 1.0; -######################################################################### -# Spatial Discretisation # -######################################################################### -#******************************************************************* -# Struct Solver * -#******************************************************************* -// inviscidSchemeName: Spatial discretisation scheme of struct grid -// Using this when solve structered grid or hybrid. -// - "roe", "vanleer", "ausm+up", "ausmpw" -// str_limiter_name: Limiter of struct grid -// - "3rdsmooth", "smooth" -// - "nolim" - no limiter - -string inviscidSchemeName = "roe"; -string str_limiter_name = "smooth"; - -#******************************************************************* -# 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 = 5.0; - -######################################################################### -# Temporal Discretisation # -######################################################################### -// iunsteady: Steady or unsteady. -// 0 - steady -// 1 - unsteay -// CFLEnd: The CFL number, [0.1, 100] -// The bigger the value, the convergence faster but lower robustness. -// nLUSGSSweeps: Number of Sub-iteration of LU-SGS. -// 1 : is recommended for structured solver. -// 1-3: is recommended for unstructured solver. - -int iunsteady = 0; - -double CFLEnd = 30.0; - -int nLUSGSSweeps = 1; - -######################################################################### -# Multi-Grid parameters # -######################################################################### -// nMGLevel: The number of Multi-Grid level -// = 1 : Single level. -// > 1 : multi-level. -// flowInitStep: Flow initialization step, 0~500 is suggested. -// Multi-Grid : Number of steps computing on coarse grid, during flow initialization. -// Single-Grid: Number of steps computing using first-order with vanleer, during flow initialization. - -int nMGLevel = 1; -int flowInitStep = 100; - - -######################################################################### -# File In or Out # -######################################################################### -// gridfile: The partitioned Grid file path, using relative path, -// which is relative to the working directory. -// IMPORTANT WARNNING: the file index should be ignored, -// e.g. if the partitioned grid is rae2822_hybrid2d__4_0.fts, -// Please use 'rae2822_hybrid2d__4.fts' here! -// isPlotVolumeField: If dump out the whole field results to tecplot or not, 0/1. - -string gridfile = "./grid/NACA0012__4.fts"; -int isPlotVolumeField = 0; - - - -// ---------------- advanced Parameters, DO NOT care it ----------- -// nVisualVariables: number of variables want to be dumped for tecplot visualization. -// visualVariables : variable types dumped, listed as following: -// -- density(0), u(1), v(2), w(3), pressure(4), temperature(5), mach(6) -// -- viscosityLaminar(7), viscosityTurbulent(8) -// -- vorticity_x(9), vorticity_y(10), vorticity_z(11), vorticityMagnitude(12), strain_rate(13), Q_criteria(14) -// -- Cp(15), timeStep(16), volume(17) -// -- modeledTKE(18),modeleddissipationrate(19), SSTF1(20), SSTF2(21) -// Important Warning: Array size of visualVariables MUST be equal to nVisualVariables!!!. -// Arriables order must from small to larger. -int nVisualVariables = 8; -int visualVariables[] = [0, 1, 2, 3, 4, 5, 6, 15]; - -// limitVariables: limit model. -// 0 - limit only for pressure and denstiny, then get the min value -// 1 - limit for every variables, then get the min value -// limitVector: -// 0 - Each variable use the same limiter coefficient. -// 1 - Each variable use the respective limiter coefficients. -// reconmeth: -// 0 - When reconstruct face value, Q+, Q- use respective limiter coefficients. -// 1 - Q+, Q- use the min limiter coefficients of left and right cell. -int reconmeth = 1; -int limitVariables = 0; -int limitVector = 0; diff --git a/ThreeD_NACA0012_SA_Struct/bin/key.hypara b/ThreeD_NACA0012_SA_Struct/bin/key.hypara deleted file mode 100644 index d4951cb..0000000 --- a/ThreeD_NACA0012_SA_Struct/bin/key.hypara +++ /dev/null @@ -1,51 +0,0 @@ -string title = "PHengLEI Main Parameter Control File"; - -// IMPORTANT NOTICE£ºDON NOT MODIFY THE FOWLLOWING LINE -string defaultParaFile = "./bin/cfd_para.hypara"; - -// ndim: Dimensional of the grid: 2 or 3. -// nparafile: the number of the parameter file. -// nsimutask: simulation task type. -// 0 -- CFD Solver of NS or Turbulation. -// 1 -- Grid generation: for special typical cases, such as cylinder, flat plate, etc. -// Grid conversion: from other format to HyperFLOW format (.fts). -// Grid reconstruction: such as grid adaptation. -// Grid merging: merge two blocks into one block. -// Grid repairing: repair the original grid in order to remove the negative volume cells. -// 2 -- Wall distance computation for turb-solver. -// 3 -- Grid partition. -// 4 -- Knowledge repository / examples of PHengLEI-API. -int ndim = 3; -int nparafile = 1; - -int nsimutask = 0; -string parafilename = "./bin/cfd_para_transonic.hypara"; -//string parafilename = "./bin/cfd_para_transonic.hypara"; -//string parafilename = "./bin/cfd_para_supersonic.hypara"; -//string parafilename = "./bin/cfd_para_hypersonic.hypara"; -//string parafilename = "./bin/incompressible.hypara"; - -//int nsimutask = 1; -//string parafilename = "./bin/grid_para.hypara"; - -//int nsimutask = 2; -//string parafilename = "./bin/cfd_para.hypara"; - -//int nsimutask = 3; -//string parafilename = "./bin/partition.hypara"; - -//int nsimutask = 4; -//string parafilename = "./bin/repository.hypara"; - -//int nsimutask = 5; -//string parafilename = "./bin/overset_grid_view.hypara"; - -//int nsimutask = 99; -//string parafilename = "./bin/post_processing.hypara"; - -// ---------------- advanced Parameters, DO NOT care it ----------- -int iovrlap = 0; -int numberOfGridProcessor = 0; -// ATP read -//@string parafilename1 = "" -//@string parafilename2 = ""; diff --git a/ThreeD_NACA0012_SA_Struct/bin/partition.hypara b/ThreeD_NACA0012_SA_Struct/bin/partition.hypara deleted file mode 100644 index 81e92b7..0000000 --- a/ThreeD_NACA0012_SA_Struct/bin/partition.hypara +++ /dev/null @@ -1,23 +0,0 @@ -// pgridtype: The grid type. -// 0 -- unstruct grid -// 1 -- struct grid -// maxproc: The number of partition zones that want to be divided into, -// which is equal to the number of CPU processors you want. -// Usually, 50~100 thousands structured cells per CPU-Core is suggested. -// 30~70 thousands unstructured cells per CPU-Core is suggested. -// original_grid_file : original grid file that want to be divided(HyperFLOW/PHengLEI type, *.fts). -// partition_grid_file : target partition grid file(HyperFLOW/PHengLEI type, *.fts). - -int pgridtype = 1; -int maxproc = 4; - -string original_grid_file = "./grid/NACA0012.fts"; -string partition_grid_file = "./grid/NACA0012__4.fts"; - - -// Number of multi-grid levels, ONLY used for structured grid. -// 1 -- single level, 2 -- 2 level, N -- N level, ..., et al. -int numberOfMultigrid = 1; - - -