# Specify fluid, LAVA provides a library of fluids fluid { species = air_perfect } # List reference conditions. # Everything in the inputs file is in SI units. # Reference conditions are used as initial conditions # and also for farfield boundary condition # When alpha, beta is specified, the flow is setup in # standard airplane axes, i.e downstream axis is +x # up axis is +z, right wing is +y # Alternatively, you can specify the flow velocities as a vector # Also, instead of pressure, you can specify Reynolds number (as Re=) # Note that Reynolds number would be based on the length scale provided reference conditions { mach = 1.44 Re = 2.3e6 temperature = 292.81 # K alpha = 0. # degrees beta = 0. # degrees length = 1.47702127659574E+00 # m (diameter) area = 1.71341823346392E+00 # m2 (frontal area) dx = 0.007385 # set to 0.008 or below for production run, this is setup for quick example } time { steady = false # RANS is no supported in Cart initial cfl = 0.5 # set to 0.5 or below when experiencing numerical stability issues on startup cfl = 2.5 # CFL-based time-stepping is typical compute cfl interval = 10 # small optimization to reduce overhead of computing CFL every step number of steps = 10000000 # large number to make sure simulation never terminates due to time step restriction finish ctu = 50. # end simulation when we reach 100 convective time units / flow through times } solver defaults { explicit { method = ssprk53 } # 5-stage 3rd order Strong Stability Preserving Runge-Kutta scheme, max CFL = 2.63 #restart { file = restart/Cart_restartLatest.hdf5 } # uncomment this line to use the latest restart file } cartesian { navier stokes { viscous = true } # false will give you Euler convective terms { scheme = hwcns flux order = 4 interp order = 3 central components = [q] upwind blending sensors = [ducros] limiter = weno3js flux function = laxfried } turbulence { sgs model = vreman } # single coefficient Vreman SGS model output { monitor { interval = 10 variables = [nt, time, dt, ctu, elapsed, maxcfl, maxmach, maxtemperature, mintemperature, minpressure, cd_aeroshell, cmy_aeroshell, blocks_1*, wallt, mups, numcells, memory*] } volume { variables = [q, mach, density, mask, errormetric, ducrossensor]; interval = 25000} surface {variables = [q, density, wallmodel]; interval = 500; format = vtk } surface probe_1 {cutpoint = [0, 0, 0];cutdirection = x;interval = 2500; variables = [q, density, mach] } surface probe_2 {cutpoint = [0, 0, 0];cutdirection = y;interval = 2500; variables = [q, density, mach] } surface probe_3 {cutpoint = [0, 0, 0];cutdirection = z;interval = 2500; variables = [q, density, mach] } isosurfaces_1{ point = [0^3] ; normal = [0, 1, 0]; format = vtk; interval = 5000; colorfield = q; derivedvars = [density, mach] } # triangulated arbitrary cut plane primitive variable output isosurfaces_2{ point = [0^3] ; normal = [0, 1, 0]; format = vtk; interval = 5000; colorfield = errormetric } # triangulated arbitrary cut plane error metric output isosurfaces_3{ point = [0^3] ; normal = [0, 1, 0]; format = vtk; interval = 5000; colorfield = densitygradmag } # triangulated arbitrary cut plane magnitude of gradient of density output isosurfaces_4{ contour = qcriterion; isovalue = 5e5; format = vtk; interval = 10000; colorfield = umag } restart { interval = 50000 } # how often to write restart file flow_stats { } loads { interval = 100 # how often to compute stats like turbulent kinetic energy, min/max q, max Mach, etc moment center = [0, 0, 0] normalize = true # Provide non-dimensional force and moments gauge = true # Use gauge pressure (p-p_ref) in pressure forces, necessary for unclosed surfaces group_1 { name = aeroshell; include = [1-5] } group_2 { name = aeroshell_front; include = [1-2] } group_3 { name = aeroshell_back; include = [3-5] } } } bcs { BC_1{type = wall; kind = [wmpartialslip, wallstressmodel, blendedlog];components = [1-5]} ibmethod = gcm gcmtype = imagedist } grid { finest dx = 0.0036925 # grid will be setup to match this as the finest mesh spacing, corresponds to 400 cells / diameter target relative far field distance = [50^3] # distance at which far field domain boundary conditions will be placed in terms of reference length domain origin = [-50, 0, 0] # move domain such that extents in x are -100 to 300, useful for supersonic flow where no information travels upstream align domain face too rigin = [lo, none, none] # specifies left x face of domain boundary should be aligned with above "domainorigin" max box size = 8 # minimum unit of refinement, 8 is our best practice, 4-12 is recommended range regrid interval = 500 # AMR control: how often to perform adapation solution based amr { method = auto max cells = 175000000 error metric time method = avg # AMR control: use time-averaged error metric for mesh adapation error metric exponential moving average window ctu = 1.0 # AMR control: Window over which to perform error metric averaging in convective time units (CTU) error metric stats interval = 10 # AMR control: how often to update statistics from instantaneous error metric error metric geom distance scaling ref length = 1.0 # AMR control: distance after which error metric is scaled by 1/(2^d) regrid grow error metric tags = 1 # AMR control: pad boxes scheduled to be refined from error metric by 1 to allow for longer intervals between adaption cycles error metric threshold ratio = 0.5 errormetric_1 { type = small scale energy weight = 1.0 } } component tagging_1 {components = [1-2]; dx_rel = 1.01;type = component } # AMR control: tag individual surface components (e.g. part ID, color) for refinement to a given target dx = dx_rel * (current dx_ref) component tagging_2 {components = [3-5]; dx_rel = 2.01;type = component } # AMR control: tag individual surface components (e.g. part ID, color) for refinement to a given target dx = dx_rel * (current dx_ref) tagcylinders_1{lo = [-1, 0, 0];hi = [2.0, 0, 0]; radius = 1.0; dx_rel = 2.01 } } geometry { surfaces_1 { file name = genesisCapsuleCoarse.fro # support fro, VTK, .i.tri, some CGNS scale = [21.27659574^3] # scale factor when reading in geometry, useful to convert to SI or from wind tunnel to flight scale } } }