exact flow name = shockdropletpaper

time {
    steady = false
    cfl = 2.5
    finish time = 5e-4
}

reference conditions
{
    # Flow state
    velocity              = [100.0,0.0,0.0]
    pressure              = 101325.0
    temperature           = 298.
    massfractions         = [1e-8, 1e-8, 1]
    multiphaseequilibrium = true
    # Geometric and grid parameters
    length                = 4.8e-3 # Diameter of droplet
    dx                    = 2e-4 # Reference grid spacing, 24 points across droplet diameter
   #dx                    = 1e-4 # Use this if you have enough compute resources, 48 points across droplet diameter
}

fluid
{
    mixture = [liq_h2o,vap_h2o,air]
}

solver defaults
{
    explicit
    {
        method=ssprk53
    }

    navier stokes
    {
        viscous          = false # viscosity is not implemented for multiphase, so this must be false
        phase transition = true  # false by default
    }
}

cartesian
{
    convective terms
    {
        scheme                  = hwcns
        central components      = [q]
        upwind blending sensors = [weno]
        limiter                 = weno3op
        flux order              = 4
        interp order            = 3
        flux function           = hllec
    }

    output
    {
        volume
        {
            interval  = 1000
            variables = [q,density,mach,soundspeed,wenoshocksensor]
        }

        restart
        {
            interval  = 2000
        }

        surface probe_1 {
            cutpoint = [1e-6,1e-6,1e-6]
            cutdirection = z
            variables = [q,density,mach]
            interval  = 100
            format = vtk
        }

        # lava 3D: index 5 for liquid mass fraction (q vector is p, u, v, w, T, Y1, Y2, Y3, note that we use 0-index)
        isosurfaces_1{
            contour = q; 
            qcompcontouring=5; 
            isovalue = 0.4; 
            colorfield = q; 
            derivedvars = [mach, density]; 
            interval = 100; 
            format=vtk
        }

        monitor {interval  = 10; variables = [nt, time, ctu, dt, mups, elapsed, maxpressure, minpressure, maxtemperature, mintemperature]}
    }

    bcs
    {
        domain face type lo = [extrapolation,extrapolation,extrapolation]
        domain face kind lo = [     constant,     constant,     constant]
        domain face type hi = [extrapolation,extrapolation,extrapolation]
        domain face kind hi = [     constant,     constant,     constant]
    }

    grid
    {
        finest dx_rel                  = 1 # Relative to dx
        targetrelativefarfielddistance = [100^3] # Relative to ref length
        max box size                   = 8
        
        tagboxes_1
        {
            lo = [-24e-3, -24e-3, -24e-3]
            hi = [ 50e-3,  24e-3,  24e-3]
            dx_rel = 2
        }

        tagboxes_2
        {
            lo = [-12e-3, -12e-3, -12e-3]
            hi = [ 40e-3,  12e-3,  12e-3]
            dx_rel = 1
        }
    }
}
