Examples » Inciter: Example set up for the four material gas impact problem

This example runs the Multi-material hydrodynamics algorithm for the four material gas impact problem from Pandare et al. (Comp. Fluids 2021). It uses a second-order finite volume method for spatial discretization, with THINC material interface reconstruction. The problem is configured using the user-defined problem class with box-type initial conditions, and symmetric boundary conditions on all domain boundaries. For further details about the numerical method see Pandare et al. (Comp. Fluids 2021)

Image Initial conditions

Control file: mmimpact4mat.lua

inciter = {

  title = "Gas impacting two slabs problem",

  term = 10.0,
  cfl = 0.75,
  ttyi = 25,  -- TTY output interval
  scheme = "fv",
  limiter = "vertexbasedp1",

  partitioning = "mj",

  multimat = {
    physics = "euler",
    prelax = 1,
    prelax_timescale = 0.1,
    intsharp = 1,
    intsharp_param = 2.5,
    nmat = 4,
  },

  material = {
    { eos = "stiffenedgas",
      id = {1, 2, 3, 4},
      gamma = {50, 1.66666667, 1.249, 1.4},  -- ratio of specific heats
      cv = {0.32539682, 28.7, 200.0, 717.5},  -- specific heats at constant volume
      pstiff = {0.0, 0.0, 0.0, 0.0}  -- stiffness parameter
    }
  },

  ic = {
    -- background
    materialid = 4,
    pressure = 1.0,
    temperature = 0.0034843206,
    velocity = {0.0, 0.0, 0.0},

    box = {
      -- slab-1
      {
        materialid = 2,
        xmin = 1.0, xmax = 1.1,
        ymin = -0.5, ymax = 2.0,
        zmin = -1.0, zmax = 1.0,
        pressure = 1.0,
        temperature = 0.0034843206
      },

      -- slab-2
      {
        materialid = 3,
        xmin = 1.1, xmax = 1.3,
        ymin = -0.5, ymax = 2.0,
        zmin = -1.0, zmax = 1.0,
        pressure = 1.0,
        temperature = 0.0034843206
      },

      -- impactor
      {
        materialid = 1,
        xmin = 0.25, xmax = 0.75,
        ymin = -0.5, ymax = 1.1,
        zmin = -1.0, zmax = 1.0,
        pressure = 2.0,
        temperature = 0.0062717771,
        velocity = {0.2, 0.0, 0.0}
      }
    }
  },

  bc = {
    -- mesh 1
    {
      symmetry = {1, 2, 3, 4, 5, 6}
    }
  },

  diagnostics = {
    interval = 250,
    format = "scientific",
    error = "l2"
  },

  field_output = {
    --time_interval = 0.25,
    interval = 10,
    elemvar = {
      "material_indicator",
      "density",
      "pressure",
      "F1", "F3",
      "P1", "P2", "P3", "P4",
      "specific_total_energy",
      "x-velocity",
      "y-velocity",
      "z-velocity"
    },
    nodevar = {
      "pressure"
    }
  }

}

Example run on 16 CPUs

./charmrun +p16 Main/inciter -c mmimpact4mat.lua -i gasimpacthalf_ss6_struc24k.exo -v

Solution contours

Bulk density (top-half) and material indicator (bottom-half) contours for the four material gas impact test:

Image t = 2.0
Image t = 5.5
Image t = 8.5