Input File for USM3D (Legacy)


Additional Options

  1. Simple Input File for Steady-State Viscous Flow
  2. Unsteady flow
  3. Moving grid
  4. 2-eqn turbulence models
  5. Detached Eddy Simulation (DES)
  6. Jet engines
  7. Rotor/Propeller
  8. Inlet “sink” plane
  9. All options at once

Flow solver input control file at a glance

The proj_name.inpt file is a user supplied input file that contains flow parameters, numerical solution parameters, geometric reference quantities used for force and moment integration and other parameters that control the flow solver output.

A sample input file for USM3D Version 6.0 is reproduced below. A description for each of its parameters can be obtained by clicking a specific parameter. A user can also interactively prepare this input file by clicking input preparation button below.

0.84
3.06
0.0
11.7
460.0
0
-1.0
0
0.5255
0.667
1.0
0.0
0.0
0.0
0
1
-20.0
50
150.0
5.0
0.0
1.0
0
0.3
500
-3.0
0
0
1500
0
3
1
0.5
0.05
0.001
0.
50
75
100
1500
2
0
0
2
1
1
1
2
0
0.0
1000
0
0
0
0
0.
0.

RED denotes the primary parameters that will require attention from the user. The remaining parameters can generally remain unchanged.

 

Description of input control parameters

In this section, each parameter of the proj_name.inpt file is explained with their possible and default values.

Case title:

A title line used for run identification. This line can be up to 80 character long and is in free format. This line as well as the whole input file is echoed in the output file tet.out for ready reference.


Mach:

Designates the freestream Mach number of the flow.

NOTE: For supersonic Mach number cases with large regions of subsonic base flow (e.g. a planetary entry capsule), startup of the solution can be very difficult. To help with this problem, one can initialize interior flow to subsonic Mach=0.4 by setting input Mach < 0.0, e.g. Mach -3.0.

However, this should be used VERY CAREFULLY since we are dealing with nonlinear equations that can have multiple solutions. It is possible to obtain fully converged, but incorrect solutions.


alpha:

Angle-of-attack (pitch), specified in degrees. The conventions used in USM3D require this to be the flow angle in the X-Z (streamwise-normal) plane.


beta:

Side-slip angle (yaw), specified in degrees. The conventions used in USM3D require this to be the flow angle in the X-Y (streamwise-spanwise) plane.

Side view flow angle Top view flow angle

ReUe:

Freestream Reynolds number per unit length, specified in millions. For example, for a flow calculation with a unit Reynolds number of 2 million per foot, the set ReUe = 2.0.

Want more help? See CFL3D page for an example of how to compute this parameter.


Tinf:

Freestream temperature, specified in degrees Rankine.


itwall:

Wall temperature boundary condition flag:

  • itwall = 0, adiabatic wall
  • itwall = 1, specified wall temperature (set by twtinf parameter)

NOTE: Currently limited to one global wall temperature for entire domain.

twtinf:

Wall temperature of viscous surface (BC type 4),normalized by the freestream temperature (temperature at wall divided by temperature of freestream.) If twtinf <= 0, twtinf is the freestream stagnation temperature.


ipwall:

Desired extrapolation of pressure to the wall:

  • ipwall = 0, zeroth order extrapolation from 1st point off of surface (Recommended)
  • ipwall = 1, first order (linear extrapolation from 1st and 2nd points above surface)


sref, cref, bref, xmc, ymc, zmc:

These are the geometric reference quantities based on which coefficients of various forces and moments are calculated by USM3D. The parameters need to be specified in the same units as that of the grid. Each parameter is illustrated below.

  • sref – reference area (half-area for half configuration)
  • cref – reference length
  • bref – reference span
  • xmc – moment center in X-direction(streamwise direction)
  • ymc – moment center in Y-direction(spanwise direction)
  • zmc – moment center in Z-direction(normal direction)

In USM3D, both pressure and skin-friction contributions to the forces and moments are individually calculated and then added together. The resultant quantities are written out at every iteration (in hist.plt file) as well as at the end of a run (in tet.out file). The latter output, accounting for an entire body surface, is presented in three different co-ordinate systems, namely body-axis, stability-axis and wind-axis. Additionally, the flow solver also has an input flag compF&M for calculating forces and moments on user-specified components which may be a sub-set of a body surface.


ioverset:

This flag specifies whether the grid system is a solitary grid or comprised of multiple overlapping grids.

  • = 0, NO OVERSET: Grid system is made up of a solitary grid and solution will be based on standard non-Chimera method
  • = 1, Grid system has a multiple overlapping grids and solution will be based on overset grid. (This option requires additional overset grid tools, such as grid assembly code SUGGAR and solution interpolation library DiRTlib.)

NOTE: The overset-grid capability requires a separate software request and approval from the DoD. Hence, it is not active or available in the general release of USM3D.


impl:

This flag governs the selection of a time integration scheme.

  • = 0, Explicit Runge-Kutta time stepping scheme (Not active for parallel-processing)
  • = 1, UPDATQ scheme, timestep scaling; UPDATQ enforces positive-definite updates for density & internal energy (Recommended)
  • = 10, UPDATQ scheme, timestep scaling off
  • = 2, UPDATQ1 scheme, timestep scaling; UPDATQ1 *does not* change solver-provided solution updates
  • = 20, UPDATQ1 scheme, timestep scaling off
  • = 3, UPDATQ2 scheme, timestep scaling
  • = 30, UPDATQ2 scheme, timestep scaling off

Both, CPU time and memory required for a converged solution are affected by the selection of a specific time integration scheme. The table below compares the two schemes.

 

Comparison of Time-Marching Schemes in USM3D
  Memory
(8-byte words per Cell)
CFL Limits No. of Iterations for convergence
Inviscid Viscous
Explicit 45 <4 1000 Not Recommended
Implicit 179 150-200** 250 2000-3000

 

**Can use much larger values, but the specified range produces the best diagonal dominance of the matrix, hence the fastest convergence


cfl1, iramp, cfl2:

Controls the time step to advance the flow solution (see sketch below). The CFL1 is set to negative value (CFL1<0) for steady-state computations or 2nd-order timestepping with subiterations.

  • cfl1 < 0 : Interpreted as CFL number. Used for steady-state calculations to accelerate convergence using non-time-accurate local time stepping.
  • cfl1 > 0 : prior functionalty has been discontinued. For now, DO NOT set cfl1>0. Will be redirected in the future.

For a fresh run, USM3D initializes the flowfield to a uniform freestream state based on the user-specified freestream values of Mach number, angle-of-attack and side-slip angle. Therefore, to enhance the robustness of the solution procedure during the strong initial transients, it is desired that for steady-state calculations the CFL number be gradually increased from a small number to its final cruise value (CFL2). In this context, iramp specifies the number of iterations over which CFL is linearly increased from CFL1 to CFL2. Specification of iramp = 0 will advance the solution based on a fixed CFL number equal to the value of CFL1. The schematic representation of the CFL ramping used for the steady-state problems is shown below.

 


Schematic representation of the CFL ramping used for the steady-state problems


cflmin:

 

Minimum allowable CFL for variable time-step strategy.

GS_tol:

When running in implicit mode, USM3D solves the linearized system of equations at every time step using Gauss-Seidel scheme. The number of subiterations employed by the code for this scheme is dependent on a user-specified tolerance criterion represented by this input variable.

  • For steady-state solutions (itimeacc=0), the recommended value is 0.0, which invokes the maximum number of subiterations to 10 for a viscous solution and 20 for an inviscid solution.
  • A positive value (e.g. GS_tol=0.05) will determine the number of subiterations to achieve subiterative convergence to within 5-percent. This feature is not used often, hence, experience is limited.
  • Direct control of the number of subiterations can be specified using a neagative integer value for this variable. For example, a value of -20 will guarantee that 20 subiterations will be performed for solving the linear system regardless of the nature of simulation, inviscid or viscous.
  • A value of -20 is recommended for 2nd-order viscous time-accurate simulations (when itimeacc .NE. 0)

crelax:

Under/over-relaxation coefficient for relaxing or extending a solution update.

  • crelax = 1.0, no under- or over-relaxation. This is a typical value and should be used for a new case to begin with. (Recommended for most steady-state solutions)
  • crelax < 1.0 under-relaxation. Improves stability for time-accurate computations using Newton’s method, for which a value in the range of 0.7-0.8 often provides a good trade-off between stability and efficiency of the solution. (Recommended for 2nd-order time stepping, i.e. itimeacc.NE.0)
  • crelax > 1.0, over-relaxation. This value can improve convergence but may degrade robustness of the code. This value has not been tried by us for any case so far. *Not* recommended.


itimeacc:

Flag to specify desired temporal accuracy:

  • itimeacc = 0, solution will not be time-accurate if local time-stepping (i.e. CFL1<0) is used. Set itimacc=0 for all steady-state solutions. Solution will be temporally first-order accurate if itimeacc=0 and CFL1>0 is prescribed.
  • itimeacc = 1, Second-order time-accurate solution based on Crank-Nicholson method. Need to specify adequate number of subiterations to obtain second-order temporal accuracy. This method is less stable and therefore it has been deprecated.
  • itimeacc = 2, Second-order time-accurate solution based on three-point backward differencing and pseudo time variable. Need to specify adequate number of subiterations to obtain second-order temporal accuracy. This is the most stable of the currently available time-accurate methods in USM3D. However, it requires a large number of subiterations and can be quite costly to use.
  • itimeacc = -2, Recommended second-order time-accurate solution based on three-point backward differencing and Newton’s method. Need to specify adequate number of subiterations to obtain second-order temporal accuracy (e.g. ncyc=10 or 15). This option may be more efficient than the pseudo-time method (itimeacc=2) as it converges faster at each physical time step. However, it is often less robust than the pseudo-time method. Its robustness can be enhanced by using under-relaxation (e.g crelax=0.7) during solution updates.

IMPORTANT CONSIDERATIONS WHEN RUNNING 2nd-ORDER TIME ACCURACY:

  • Set itimeacc=-2, GS_tol=-20, crelax=0.7
  • input parameter “ncyc” becomes the number of subiterations+1 used to converge solution to Q_(n+1)
  • Need to monitor hist.subit file for subiterative convergence

delta_t:

Non-dimensional time step for the temporally second order time-accurate computations.

How do I determine a non-dimensional timestep?

Think about how many timesteps are needed for a fluid particle to travel a characteristic length (Lchar), e.g. wing chord, at freestream velocity. A rule of thumb from Dr. Jim Forsythe, Cobalt Solutions, is N=50 timesteps per characteristic length. Dr. Scott Morton of the Air Force Academy suggests between 100 and 1000 steps. For Detached Eddy Simulation (DES) computations (ivisc = -2), a value of N=500 is not unusual.

For USM3D nondimensionalization, the relationship for timestep and number of steps, N, to traverse Lchar:

 

delta_t = Lchar/Mach/N

For the moving body simulations involving prescribed motion (1 Degree-of-Freedom), the time step can be calculated using the input value of reduced frequency (k) and characteristic length (Lchar):

 

 


delta_t = pi*Lchar/Mach/N/k

(NOTE: For first-order time-accurate computations without subiterations, set itimeacc=0 and CFL1>0 to specify the non-dimensional time-step.)

 

 


ntstep:

Number of timestep increments for temporally second order accurate simulations.The code will perform approximately ntstep*ncyc or less equivalent “steady-state” iterations.


res_step:

Level of subiteration convergence before taking next of the “ntstep” time steps for the temporally second accurate simulation. Recommended value is in the range of -2.5 to -3.


imvgrd:

Flag to indicate whether the grid is stationary or not.

  • = 0, stationary grid
  • = 1, moving grid
    • Additional input is required (see sample input file)
    • If itimeacc = 0 (steady-state or first-order time accurate computations), this parameter will be reset to 0.


isolavg:

Solution averaging flag:

  • = 0, turn off solution averaging (for steady-state, it will be turned off by the code.)
  • = 1, perform time-averaging for mean flow solution quantities (extra memory equivalent to 5*nnode.) Mean values of aerodynamic quantities will be printed.
  • = 2, In addition to 1 above, perform solution averaging for turbulent-stress-related qunatities (extra memory) equivalent to 11*nodes)

nbgnavg:

Beginning timestep or iteration for averaging flow solution. Specific output of averaged quantities controlled by idiagnos parameter

  • For steady-state (itimeacc=0), nbgnavg is iteration to begin solution averaging
  • For unsteady flow (itimeacc .NE.0), then nbgnavg is the timestep to begin solution averaging


irest:

Flag governing flowfield initialization:

  • irest = 0, the flow solver initiates a solution based on uniform conditions derived from the user-specified freestream state.
  • irest = 1, the flow solver reads the solution data from a restart file, proj_name.urest (new format), generated from a previous run and continues the solution further.

Be aware that at the end of a run the previous restart file is overwritten with the new solution. Hence, a user interested in intermediate solutions should create a backup copy of the restart file before continuing.

mstage:

The number of stages in the Runge-Kutta scheme for explicit time integration. According to our experience, mstage = 3 gives good performance. For implicit scheme, mstage < 0 specifies the interval at which all the cells are reset as second-order cells.

iresmth:

For explicit Runge-Kutta (impl=0)

  • = 1, implicit residual smoothing on every cycle of an m-stage scheme (Recommended)
  • = -1, implicit residual smoothing only on odd cycles of an m-stage scheme
  • = 0, no smoothing applied (used for time accurate calculations)

For implicit Gauss-Seidel (impl .NE.0), used to demote problematic cells from 2nd-order to 1st-order spatial accuracy.

  • = 0, do not set cells to first order locally
  • = 1, use p<=pminimum or rho<=pminimum switch to set first order cells (Recommended)
  • = 2, use p<=pminimum or rho<=pminimum or pt>=1.2*pt0 switch to set first order cells. Will only be used for non-engine, non-rotor cases

The concept is that 2nd-order spatially accurate solutions can blow up if the pressure or density in a cell goes to a negative value. Hence, the pmin parameter is provided as a threshhold below which the spatial differencing will be locally switched to the more diffusive 1st-order scheme. This often allows a computation with problematic regions, such as small gaps or blunt bases, to continue without affecting global accuracy.


dqmax:

Maximum allowable (-dp/p, -drho/rho) in solution (used to scale CFL number.) A default value of 0.5 is suggested for this parameter. A value greater than 0 means no limiter is applied.


pbrk:

Specifies a nondimensional pressure value that indicates to the flow solver the presence of potentially troubled cells with a low pressure. USM3D uses this parameter in conjunction with other parameters cflmin and pmin to restrict the time step of such cells as illustrated in the sketch below.

 


Illustration of non dimensional preasure

This procedure improves the robustness of the code for steady state calculations. A value in the range of 0.01-0.05 is suggested. (Note that p_infinity = 1/gamma = 0.71428 for air.)

 


pmin:

A minimum allowable threshhold level of nondimensional pressure for anywhere in the flowfield. It serves to improve solution robustness for regions where pressure or density wants to go to a negative value. It is first used to guide a lowering of the CFL number to cflmin (see diagram above), and then to demote problematic cells to 1st-order spatial differencing. A default value of 0.001 is suggested.

Cells with pressure falling below this value are locally set to first-order differencing to locally introduce more dissipation to a problematic region of the domain. This setting is maintained on the restart file. If user would like to reset first-order cells back to higher-order, a negative value for this parameter, for example pmin = -0.001, should be used. (Note that p_infinity = 1/gamma = 0.71428 for air.)


limiter:

Two different limiters are available in USM3D. The limiter parameter is used to specify a choice:

  • = 0, no limiter applied (Recommended)
  • = 1, MINMOD limiter (Needed for most supersonic flows)
  • = 2, SUPERBEE limiter with variable compression factor (has been problematic)
  • = -2, invokes automatic selection of limiter

WARNING: Any application of the limiter (i.e. limiter .NE.0) is known to degrade skin-friction drag. Thus, it is advisable to use limiter=0 unless the solution will just not run without the limiter.



nupdate:

Specifies the number of iterations between two successive updates of the time step. (Not used for time-accurate computations.)

The flow solver updates the time step every iteration during the first 20 iterations of a fresh run based on the freestream initialization. However, after the solution has somewhat converged it may be adequate to update the time step occasionally at a frequency specified by the current parameter.

Recommendation: Some users have found that nupdate = 1 can lead to more robust solutions.


nwrest:

Specifies the number of iterations between two successive updates of a restart file. Serves as a safety mechanism to save intermediate solution restart files in case a solution terminates prematurely.

For steady-state cases (itimeacc=0), nwrest is a number consistent with solution iterations (ncyc)

For unsteady runs (itimeacc .NE. 0), nwrest is a number consistent with global timesteps (ntstep)

Please note that the restart file proj_name.urest is always overwritten with the latest solution, so please create a backup copy under a different name if you need an intermediate file for any purpose. The restart file is an unformatted file. Therefore it is not portable across different computer architectures.

nwflo:

Number of solution iterations or global timesteps between writings of intermediate solution files.

This feature helps visualize solution evolution for the time-accurate simulations. It will generate a series of proj_name.flo.iter# files where iter# is the current iteration number. For time-accurate solutions, this parameter applies to outer iterations (specified by input variable ntstep) and iter# refers to the cummulative number of subiterations required to reach a specific outer iteration at which intermediate solution file is written. For example, let nwflow > 0 and M be an outer iteration which satisfies the condition, M/nwflo*nwflo = M. The solver will write an interim solution file after completing the outer iteration M a file proj_name.flo.n, where,

NSUB is an array storing number of subiterations performed at each of the M time steps.


nwflobgn:

Number of iterations beyond which writing of instantaneous NEW flow-file (prj_name.flo.iter#) will be triggered. The parameters nwflo and nwflobgn relate to outer-loop time steps (ntstep) for an unsteady flow analysis, and to inner-loop time steps (ncyc) for steady-state flow analysis.


ipltqn:

Flag related to the flow file (q-file) format. At the end of a successful run, USM3D writes out the flowfield quantities in a file named proj_name.flo.

The flowfield file contains data in conservative form, containing the density, three components of momentum, and total energy. Possible values for this parameter are:

  • = 0 suppress output of post analysis of flow field file
  • = 1 write unformatted q-node file for post analysis of flow field
  • = 2 write formatted q-node file for post analysis of flow field (Recommended)
  • = 3 write formatted q-node file for postprocessing by TECPLOT
  • = 4 write binary TECPLOT file (NOT CODED YET)
  • = 5 write unformatted q-node file for postprocessing by FIELDVIEW
  • X = 13 write unformatted q-node file for using Tecplot converter
  • X = 23 write formatted q-node file for using Tecplot converter
  • = 15 write unformatted q-node file for using FIELDVIEW converter
  • = 25 write formatted q-node file for using FIELDVIEW converter
  • = -25 write solution restart file for using FIELDVIEW converter, and also write formatted q-node file and do not delete
  • X =16 write unformatted q-node file for using Ensight converter
  • X =26 write formatted q-node file for using Ensight converter

X = **indicates that this option has not been tested and is not recommended for use.**

PLEASE NOTE that although the flow solution is carried out at the cell centroids of a grid, the data in the flow file is interpolated to and written out at the nodes of a grid. This is done to make use of many special purpose and commercial post-processing codes which all require node-based output.


idiagnos:

Switch to activate additional diagnostic output. For difficult cases, it is sometimes informative to produce extra diagnostic output for debugging purpose. Possible values of this parameter and consequent output files are listed below. The generation of these files also depends on the value of the input parameter ivisc.

  • = 0, no additional diagnostic output
  • = 1, writes info.diag file detailing values of minimum pressure, maximum Mach number, maximum eddy viscosity, and number of spatially first order cells in the computational domain at each time step
  • = 2 write a flow file with residual in place of density
  • = 3 write info.diag2 file in Tecplot format. This file contains several variables at cell-centers for the cells associated with user-specified boundary faces. These boundary faces must be supplied in project.trip file. You will need to create a project.trip file for idiagnos != 3 if itrip != 0. NOTE: Diagnostics related to idiagnos=3 are available only for ivisc > 0.
  • = 4 write info.probe.N file in Tecplot format. This file contains the history of Qs for each probe specified in project.probe file. N will be substituted by the probe number.
  • = 5 write Sol.Volume.USM3D file in PLOT3D format. This file contains Qs at desired locations in the grid as read from the file Grid.Volume.TEACC in a pre-processing step. In addition, Sol.Exit.TEACC file will be read at appropriate time to derive exit pressures for appropriate locations on the boundary. These locations are written out in the file Grid.Exit.USM3D.


nodeypl:

This parameter identifies a node lying on a viscous boundary for which an additional output is desired. The parameter takes an integer value that specifies the grid index of such a node. A non-zero value of nodeypl, for a viscous case, generates a file called yplus.plt to provide the distributions of certain quantities across the boundary layer at the axial location identified by the parameter.



iorder:

Flag to specify the spatial accuracy of the computations.

USM3D permits first or second order spatially accurate computations. The possible values of this parameter are:

  • = 0, automatic selection of order
    • Recommended for steady-state run with itimeacc = 0, order will switch from first to second when residuals drop by one order of magnitude
    • identical to setting iorder = -1
  • < 0, automatic selection of order, iorder value (integer only) is used to specify a value for residual drop at which order is switched. Very useful for cases that are difficult to start.
    • For example,
      • iorder = -2 will let solution run in first order until residuals drop by 2 ordersiorder = -3 will let solution run in first order until residuals drop by 3 ordersiorder = -29 will let solution run in first order until residuals drop by 2.9 orders
  • = 1, imposes first order spatial accuracy
  • = 2, imposes second order spatial accuracy, gradients computed analytically based on Taylor series (Recommended for time-accurate computations with itimeacc = 1, 2, or -2).

The automatic order selection option begins the calculations in first order mode to move the flow solution past the intial startup transients. Then, it automatically switches to higher-order when the flow residue has dropped by one (or a user-prescribed number) order of magnitude from its initial value to continue toward the final solution.

NOTE: iorder automatic switch should only be used for steady-state cases. If you want to force first order computations based on previous second-order solutions after a restart, iorder must be set to 1. Negative iorder values will not let you restart the solution in first-order mode.


lapl-avg:

Used to select a procedure for the interpolation of flow variables at the grid nodes based on the values at the centroids of all the cells surrounding a node. Several values of this parameter are available:

  • = 0, inverse distance averaging to all nodes
  • = 1, pseudo-Laplacian averaging to all nodes (Recommended)
  • = -1, pseudo-Laplacian on the interior nodes, inverse distance on the boundary nodes
  • = 2, modified inverse distance averaging (Can be more robust, but slightly less accurate than lapl-avg = 1)


ihibc:

Flag for specifying the spatial accuracy of boundary condition application.

  • = 0, applies first-order accurate boundary conditions
  • = 1, applies second-order accurate boundary conditions (Recommended)

ifds:

Flag for specifying spatial differencing scheme for inviscid fluxes.

  • = 0, Van Leer’s flux vector splitting (Not tested)
  • = 1, Roe’s flux difference splitting (Recommended)
  • = 2, AUSM (Useful for high supersonic and hypersonic Mach numbers)


ivisc:

This parameter specifies the nature of flow simulation to be performed. Possible values are:

  • = 0, Inviscid (Euler) calculations only
  • = 1, Laminar flow calculations only
  • = 2, Full viscous calculations with Spalart-Allmaras turbulence model
  • = 3, Wall functions-based calculations with Spalart-Allmaras turbulence model
  • = -2 Full viscous calculations with Detached-Eddy-Simulation Spalart-Allmaras turbulence model
  • = -3 Wall functions-based calculations with Detached-Eddy-Simulation Spalart-Allmaras turbulence model (Not tested)
  • = 6 and inl=0 Linear k-epsilon turbulence model
  • = 6 and inl=7 Girimaji Algebraic Reynolds Stess Model
  • = 6 and inl=1 Shih/Zhu, and Lumley Algebraic Reynolds Stress Model
  • = 8 Menter’s Sheer Stress Transport (SST) turbulence model

NOTE: Detached-Eddy-Simulation is only available in time-accurate mode. If itimeacc=0, options -2,-3 will be rest to options 2,3 respectively.

itrip

This flag activates the tripping of turbulent flow:

  • = 0, no tripping
  • = 1, tripping activated (useful mostly for k-epsilon turbulence model when used for low Reynolds number flows
  • = -1, enforces laminar flow region (useful mostly for SA and SST models when a certain flow region has to be forced to a laminar flow state. These two models generally provide fully turbulent flow on the body.)

NOTE: For itrip values other than 0, the user will need to:

  1. define trip patches in the existing grid using PREDISC program (contact: Richard Campbell, LaRC)
  2. create a file project.trip and list all the trip patches and appropriate trip values. Refer to the format of the project.trip file on the USM3D website. A project.trip file will also have to be created if idiagnos=3.

EV_lim:

This parameter is an eigen value limiter. It is used to ensure that the “acoustic” eigen values of an inviscid Jacobian matrix do not fall below the value specified by this variable. It is only used for inviscid flux computations based on Roe’s scheme.

  • Use EV_lim = 0 for subsonic calculations.
  • A value of 0.1 is recommended for supersonic Mach numbers.


ncyc:

Specifies the number of iterations for the current run. This parameter assumes different connotations for different values of other input variables.

  • ncyc is number of iterations for steady-state computation (itimeacc = 0 and cfl1 < 0)
  • ncyc is number of physical time steps for first order time accurate run without subiterations (itimeacc = 0 and dt/cfl > 0)
  • ncyc is number of subiterations for second-order time-accurate computations with subiterations (itimeacc .NE.0)


nengines:

USM3D has a capability to model the effect of jet engines on the flowfield without actually simulating the engine’s internal details. The present parameter indicates the total number of engines in the configuration. The flow solver can handle up to 4 jet engines and all of them may operate at different power settings. If nengines > 0, a user needs to provide additional input. Use of this option is further illustrated in Chapter 3 on BOUNDARY CONDITIONS FOR USM3D.


nsinkbc:

This variable specifies the number of sinks in a computational domain through which a specified mass flow is ingested. By using a specific boundary condition flag on a boundary surface a sink type of boundary condition is implemented. This feature is mainly used for modeling engine intakes with specified mass flow. The flow solver can handle up to 4 sinks and all of them may ingest different mass flow. If nsinkbc > 0, a user needs to provide additional input. Use of this option is further illustrated in Chapter 3 on BOUNDARY CONDITIONS FOR USM3D.


nrotor:

This variable specifies the number of rotors/propellers in a domain. If nrotor > 0, a user needs to provide additional input. Use of this option is further illustrated in Chapter 3 on BOUNDARY CONDITIONS FOR USM3D.


compF&M:

Flag to signal the reading of an additional proj_name.fandm file.

Provides user control of selective integration of forces and moments on user-specified components, such as a wing, fuselage, tail, control surface, etc.

The user must provide an additional proj_name.fandm file that essentially lists the set of patches constituting a component on which the forces and moments are to be integrated.

  • = 0 do not include “comp.FandM” file; no special integration
  • = 1 integrate component F&M’s over patches prescribed in proj_name.fandm file. At the end of a run. write in tet.out file.
  • = -1 integrate component F&M’s over patches prescribed in proj_name.fandm file continuously during run. Write the CL,CD,CDv,CM, and 6 components of body forces and moment history onto project.FMhistCOMPN file where, N stands for component index. You will get as many files as the number of components in proj_name.fandm file. Also, write the last iteration F&M information in the tet.out file
  • = 2 automatically treat every existing patch in the grid as a component and write forces and moments onto the tet.out at the end of a run. The proj_name.fandm file is NOT READ OR NEEDED.
  • = -2 automatically treat every existing patch in the grid as a component and write history of forces and moments in separate files. You will get as many files as the number of active patches in the grid. Also, write last iteration F&M information in tet.out. The proj_name.fandm file is NOT READ OR NEEDED.
  • = 3 merger of features activated by compF&M=1 and compF&M=2
  • = -3 merger of features activated by compF&M=-1 and compF&M=-2
  • = -12 merger of features activated by compF&M=-1 and compF&M=2
  • = -13 merger of features activated by compF&M=-1 and compF&M=3

 

 

The format of proj_name.fandm file is shown below (included only if compF&M=1 in project_name.inpt)

  read(lcfm,*) ncomp
  do 400 ncmp=1,ncomp
  read(lcfm,*) ‘comp name’
  read(lcfm,*) srefc,crefc,brefc,xmcc,ymcc,zmcc
  read(lcfm,*) imoving
  read(lcfm,*) nc,(jpatch(jc),jc=1,nc)
400 continue

where:

ncomp = number of separate components on which forces and moments to be computed
‘comp name’ = name of the component; must be <=80 characters
irefq = integer flag to indicate that component-specific reference quantities specified
srefc,crefc,brefc = component-specific reference area, reference chord, and reference span. If sref=-1, then 1) USM3D will use reference quantities specified in the project_name.inpt file, and 2) there is no need to include crefc, brefc, xmcc, ymcc, zmcc.
xmcc,ymcc,zmcc = component-specific moment reference center. Not needed for irefq = 0. USM3D will use reference quantities specified in the control input file
imoving = integer flag that designates whether a component grid is in motion (imoving=1) or static (imoving=0). imoving=1 causes moment reference centers to move with component.
nc = number of patches constituting each of the ncomp components
jpatch = an array of patch indexes for nc number of patches constituting each of the ncomp components

p_bc1002:

Non-dimensional plenum pressure for the 1002 BC.

  • <= 0.0, Use freestream pressure (1/gamma = 0.714)
  • > 0.0, Use the specified value

cldes:

A non-zero value for this parameter indicates a desired lift-coefficient and invokes a special feature of USM3D to obtain a converged flow solution for a specified lift coefficient (CL) rather than for a specified angle-of-attack, alpha. If the value is set to 0.0, the flow solver would yield a converged solution at the angle-of-attack specified using the parameter alpha. A detailed description of this feature is given under Special features section of Chapter 5 on RUNNING USM3D.


jet1:

Boundary condition flag:

(see Engine BC)

  • Second jet or fan exhaust: bctype = n*100+3 (optional)
  • Primary jet exhaust: bctype = n*100+2

where “n” is the engine number.


RULE: If second jet or fan exhaust is utilized, its characteristics must be prescribed before those for the primary jet.



fuel:

Mass fraction of fuel relative to total exhaust mass flow (see Engine BC)


gammaj:

Ratio of specific heats for (hot) jet (see Engine BC)


pjet:

Static nozzle pressure (usually set to p_infinity=0.7143) (see Engine BC)


p0jet:

Stagnation pressure of jet (ptotal_jet / p_infinity)*0.7143 (see Engine BC)


Rratio:

(Specific gas constant of air)/(Specific gas constant of jet) (see Engine BC)


T0jet:

Nondimensional stagnation temperature of jet (Ttotal_jet/T_infinity) (see Engine BC)


vec(i):

Directional cosines of exhaust jet: 1,2,3 <=>x,y,z (see Engine BC)


engsim:

  • engsim = 0, UNIFORM exhaust properties
  • engsim = 1, RADIALLY VARYING exhaust properties, which will need radial distribution of total pressure, total temperature, tangential and radial velocities


nstation:

Number of radial locations at which exhaust properties are specified (only active when engsim=1.) LIMIT: nstation <= 20.


idirec:

Direction of tangential velocity (only active when engsim=1):

  • idirec = 1, Clockwise swirl on engine exhaust, looking downstream.
  • idirec = -1, Counter-clockwise swirl on engine exhaust, looking downstream.


sinkid:

Sink identification:

  • sink 1 – BC 111
  • sink 2 – BC 211
  • sink 3 – BC 311
  • sink 4 – BC 411


outer_R:

Outer radius of sink.


cen_X, cen_Y, cen_Z:

Coordinates of sink center.


massflx:

Mass flow rate through sink.

  • massflx = m/(rho_inf*a_inf) where
    • m is dimensional mass flux
    • rho_inf is dimensional freestream density
    • a_inf is dimensional speed of sound


omega:

Ratio of fan-tip velocity to freestream velocity. Used to specify a swirl to the inflow.

  • Positive for clockwise, looking downstream.
  • Negative for counter-clockwise, looking downstream.


rotid:

Rotor identification:

  • rotor 1 – BC 501,502
  • rotor 2 – BC 601,602
  • rotor 3 – BC 701,702
  • rotor 4 – BC 801,802


inner_R:

Inner radius of the rotor.


outer_R:

Outer radius of the rotor.


cen_X, cen_Y, cen_Z:

Coordinates of rotor center.

Advratio:

Advance ratio = (rotor tip speed)/(freestream velocity)


thrst_c:

Thrust coefficient of rotor


torq_c:

Torque coefficient of rotor


irotat:

Direction of rotation (viewed from top)

  • irotat = 1, Clockwise rotation
  • irotat = -1, Counter-clockwise rotation


rotsim:

  • rotsim = 0, Rotor with uniform jump in pressure and/or swirl
  • irotat = 1, Rotor with radially-specified jump in pressure and/or swirl


xrcg, yrcg, zrcg:

Origin of the rotation axis.

CAUTION: The current implementation only allows 1 DOF for rotation, so only one of iroll,ipitch,iyaw may be set to 1.


reflen:

Reference length, based on grid coordinates, used for calculating reduced frequency.


iroll:

Grid rotation about x-axis:

  • iroll = 1, Activate rolling motion.
  • iroll = 0, Do not activate rolling motion.


ipitch:

Grid rotation about y-axis:

  • ipitch = 1, Activate pitching motion.
  • ipitch = 0, Do not activate pitching motion.

iyaw:

Grid rotation about z-axis:

  • iyaw = 1, Activate yawing motion.
  • iyaw = 0, Do not activate yawing motion.

angmean:

Mean angle of rotation (degrees).

angampl:

Amplitude of rotation (degrees).


rfreq:

Reduced frequency of oscillations:

  • rfreq = k/Lchar
    • Lchar is the characteristic length
    • f is frequency
    • k = 2*pi*f*Lchar/(2*V_inf)
    • All quantities are in dimensional form
  • The number of “steps” required to cycle through one period (2*pi) can be computed as:
    • Nperiod = pi*Lchar/(k*Mach*delta_t)


ideformg:

Grid deformation flag, important only for itimeacc=2:

  • ideformg = 0, Solid-body deformation of grid, switches off Geometric Conservation Law
  • ideformg = 1, Grid deformation to accomodate body motion

imvMOMCEN:

  • imvMOMCEN = 0, Do not rotate moment reference center with the grid
  • imvMOMCEN = 1, Rotate moment reference center with the grid (Recommended)


ikeord:

Spatial order of accuracy for 2-equation turbulence models:

  • ikeord = 1, First order (Recommended)
  • ikeord = 2, Second order


icons:

Flag to activate either incompressible or compressible formulation of 2-equation turbulence models:

  • icons = -1, Incompressible (Recommended)
  • icons = 1, Compressible, conservative formulation


nstagek:

Gauss-Seidel subiterations for the implicit solution of 2-equation turbulence models. Recommended value = 10.


t_dtfact:

Parameter to decrease/increase CFL number for the solution of 2-equation turbulence models:

  • < 1, Decrease CFL number
  • > 1, Increase CFL number

Recommended value = 1.0


t_intsity:

Freestream turbulence intensity. Recommended value = 1.0e-3


mut/mul:

Ratio of freestream turbulence viscosity to the freestream laminar viscosity.

*NOTE*: You can specify either turbulence intensity (t_intsity) < 0 or ratio of turbulence to laminar viscosity (mut/mul) < 0 to activate USM3D’s default values of freestream turbulence intensity and mut/mul:

  • t_intsity=sqrt(9.0e-9)
  • mut/mul=0.009


ratiokp:

Upper limit on turbulence kinetic energy in relation to static pressure. For first attempt at solution, recommended value is 0.0. If convergence problems are encountered, specify a value in the range 0.05-0.1.


dkemax:

Maximum allowed update of turbulence model variables at any given time-step: Delta(var)/var. Recommended value = 0.25.


idt_proc:

Flag to activate specific procedures to compute local time-steps for steady-state solutions.

  • = 0, use face-based subroutine (UCTIME_MOD)
  • = 1, use node-based subroutine (UCTIME_KE)

For SA and SST models, idt_proc is reset to 0 internally. NOTE: This input variable is introduced in light of the observed sensitivity of a CEV solution (run 314) to the differences in the procedure used to compute the local time steps.


flkemax:

Maximum allowed value for function f1 in dissipation rate equation for Lam Bremhorst model (itk = 1). Recommended value : 1.0. For itk = 0 and itk = 2 this variable is not used.