1*59599516SKenneth E. Jansen# PHASTA Version 1.5 Input File 2*59599516SKenneth E. Jansen# 3*59599516SKenneth E. Jansen# Basic format is 4*59599516SKenneth E. Jansen# 5*59599516SKenneth E. Jansen# Key Phrase : Acceptable Value (integer, double, logical, or phrase 6*59599516SKenneth E. Jansen# list of integers, list of doubles ) 7*59599516SKenneth E. Jansen# 8*59599516SKenneth E. Jansen 9*59599516SKenneth E. Jansen# To find the Key Phrases, first look in input.config. There you will 10*59599516SKenneth E. Jansen# find the default values for everything that is allowed to have a 11*59599516SKenneth E. Jansen# default. Some things are not allowed to default and must be entered 12*59599516SKenneth E. Jansen# in this file. In most cases, the acceptable inputs also appear in 13*59599516SKenneth E. Jansen# the input.config file. To add acceptable inputs you should only have 14*59599516SKenneth E. Jansen# to modify: 15*59599516SKenneth E. Jansen 16*59599516SKenneth E. Jansen# input_asci.cc :which matches the string and translates it to the 17*59599516SKenneth E. Jansen# parameter change. If it is a new parameter, you must 18*59599516SKenneth E. Jansen# modify: 19*59599516SKenneth E. Jansen# 20*59599516SKenneth E. Jansen# common.h (to carry new parameter through code) 21*59599516SKenneth E. Jansen# common_c.h (to carry the parameter from C to Fortran) 22*59599516SKenneth E. Jansen# 23*59599516SKenneth E. Jansen# 24*59599516SKenneth E. Jansen# In case it is not clear by now, # allows you to comment either from the 25*59599516SKenneth E. Jansen# beginning of the line or to the right as shown below. 26*59599516SKenneth E. Jansen# 27*59599516SKenneth E. Jansen#SOLUTION CONTROL <--- These are for your organizational clarity (not required) 28*59599516SKenneth E. Jansen#{ <--- 29*59599516SKenneth E. Jansen Equation of State: Incompressible # sets ipress=-1 matflag(1,n) 30*59599516SKenneth E. Jansen Number of Timesteps: 20 #replaces nsteps(1) (ntseq wired =1) 31*59599516SKenneth E. Jansen Time Step Size: 0.1 # Delt(1) 32*59599516SKenneth E. Jansen# Turbulence Model: RANS # No-Model iturb=0, RANS =-1 LES=1 33*59599516SKenneth E. Jansen#} 34*59599516SKenneth E. Jansen 35*59599516SKenneth E. JansenPrint Error Indicators: True 36*59599516SKenneth E. Jansen#MATERIAL PROPERTIES 37*59599516SKenneth E. Jansen#{ 38*59599516SKenneth E. Jansen Viscosity: 0.01 # fills datmat (2 values REQUIRED if iLset=1) 39*59599516SKenneth E. Jansen Density: 1.0 # ditto 40*59599516SKenneth E. Jansen# Scalar Diffusivity: 0.1 # fills scdiff(1:nsclrS) 41*59599516SKenneth E. Jansen#} 42*59599516SKenneth E. Jansen 43*59599516SKenneth E. Jansen 44*59599516SKenneth E. Jansen#LINEAR SOLVER 45*59599516SKenneth E. Jansen#{ 46*59599516SKenneth E. Jansen Number of Solves per Left-hand-side Formation: 2 #nupdat/LHSupd(1) 47*59599516SKenneth E. Jansen#} 48*59599516SKenneth E. Jansen 49*59599516SKenneth E. Jansen#DISCRETIZATION CONTROL 50*59599516SKenneth E. Jansen#{ 51*59599516SKenneth E. Jansen Basis Function Order: 1 # ipord 52*59599516SKenneth E. Jansen Quadrature Rule on Interior: 2 #int(1) 53*59599516SKenneth E. Jansen Quadrature Rule on Boundary: 2 #intb(1) 54*59599516SKenneth E. Jansen Include Viscous Correction in Stabilization: True # if p=1 idiff=1 55*59599516SKenneth E. Jansen # if p=2 idiff=2 56*59599516SKenneth E. Jansen Lumped Mass Fraction on Left-hand-side: 1.0 # flmpl 57*59599516SKenneth E. Jansen Lumped Mass Fraction on Right-hand-side: 1.0 # flmpr 58*59599516SKenneth E. Jansen#} 59*59599516SKenneth E. Jansen Surface ID for Integrated Mass: 2 60*59599516SKenneth E. Jansen Number of Force Surfaces: 1 61*59599516SKenneth E. Jansen Surface ID's for Force Calculation: 1 62*59599516SKenneth E. Jansen 63*59599516SKenneth E. JansenTURBULENCE MODELING PARAMETERS 64*59599516SKenneth E. Jansen{ # lines below are only read if ||| is true 65*59599516SKenneth E. Jansen Dynamic Model Type : Standard # adds zero to iturb LES 66*59599516SKenneth E. Jansen Filter Integration Rule: 1 #ifrule adds ifrule-1 to iturb LES 67*59599516SKenneth E. Jansen# Turbulence Wall Model Type: None #itwmod=0 RANSorLES 68*59599516SKenneth E. Jansen# Turbulence Wall Model Type: Slip Velocity #itwmod=1 RANSorLES 69*59599516SKenneth E. Jansen Turbulence Wall Model Type: Effective Viscosity #itwmod=2 RANSorLES 70*59599516SKenneth E. Jansen Velocity Averaging Steps : 500. # wtavei= 1/this RANSorLES 71*59599516SKenneth E. Jansen Dynamic Model Averaging Steps : 500. # dtavei= 1/this LES 72*59599516SKenneth E. Jansen# negative values to the two previous entries make their value ISTEP in code 73*59599516SKenneth E. Jansen# Anil...leave as any negative value 74*59599516SKenneth E. Jansen Filter Width Ratio : 3. # fwr1 LES 75*59599516SKenneth E. Jansen } 76*59599516SKenneth E. Jansen# 77*59599516SKenneth E. Jansen# 78*59599516SKenneth E. Jansen#This last one is brand new. It allows you to construct your step 79*59599516SKenneth E. Jansen#from elementary operations. It works under the premise that a step is 80*59599516SKenneth E. Jansen#constructed from from a series of solves and updates. The table goes like 81*59599516SKenneth E. Jansen#this: 82*59599516SKenneth E. Jansen# solve flow = 0; update flow = 1 83*59599516SKenneth E. Jansen# solve scalar 1 = 10; update scalar 1 = 11 84*59599516SKenneth E. Jansen# solve scalar 2 = 20; update scalar 2 = 21 85*59599516SKenneth E. Jansen# solve scalar 3 = 30; update scalar 3 = 31 86*59599516SKenneth E. Jansen# : : 87*59599516SKenneth E. Jansen# solve scalar n = n*10; update scalar n = n*10+1 88*59599516SKenneth E. Jansen# solve heat = (n+1)*10; update T = (n+1)*10+1 89*59599516SKenneth E. Jansen# 90*59599516SKenneth E. Jansen 91*59599516SKenneth E. Jansen# Below we have an example of solving the flow with two iterations 92*59599516SKenneth E. Jansen# (solve, update, solve,update) what would have been achieve before by 93*59599516SKenneth E. Jansen# setting niter=2 94*59599516SKenneth E. Jansen 95*59599516SKenneth E. Jansen# 96*59599516SKenneth E. Jansen#STEP SEQUENCE 97*59599516SKenneth E. Jansen#{ 98*59599516SKenneth E. Jansen# Step Construction : 0 1 0 1 # this is the standard two iteration 99*59599516SKenneth E. Jansen# Step Construction : 0 1 0 1 0 1 0 1 0 1 100*59599516SKenneth E. Jansen Step Construction : 0 1 # this is the standard one iteration 101*59599516SKenneth E. Jansen# Step Construction : 0 1 10 11 102*59599516SKenneth E. Jansen# Step Construction : 0 1 10 11 0 1 10 11 0 1 10 11 20 21 20 21 20 21 103*59599516SKenneth E. Jansen# This one is one Tony might like where the solver would solve the flow with 104*59599516SKenneth E. Jansen# the first scalar (3 times with an update immediately after each solve) 105*59599516SKenneth E. Jansen# followed by 3 successive solves of the second scalar (with an update after 106*59599516SKenneth E. Jansen# each solve) 107*59599516SKenneth E. Jansen# 108*59599516SKenneth E. Jansen 109*59599516SKenneth E. Jansen 110*59599516SKenneth E. Jansen# NOTE: An update consists of adding the delta from the appropriate 111*59599516SKenneth E. Jansen# solve to the appropriate part of the Y vector, followed by 112*59599516SKenneth E. Jansen# reapplication of the boundary conditions. You have to ask for an 113*59599516SKenneth E. Jansen# update. It is not implicit that it will follow each solve. This is to 114*59599516SKenneth E. Jansen# enable you to solve successive pieces BEFORE updating the solution as 115*59599516SKenneth E. Jansen# is sometimes convenient/necessary. Here is an example of that 116*59599516SKenneth E. Jansen 117*59599516SKenneth E. Jansen# Step Construction : 0 1 10 20 11 21 0 1 10 20 11 21 118*59599516SKenneth E. Jansen# here we solve the flow, update the flow, solve scalar 1, solve scalar 2 (BEFORE UPDATING SCALAR 1) then update both scalars, then repeat the process 119*59599516SKenneth E. Jansen 120*59599516SKenneth E. Jansen 121*59599516SKenneth E. Jansen#} 122*59599516SKenneth E. Jansen Data Block Format : binary #iotype, options 'binary','ascii' 123