Description

A radiation solver verification case using parallel plates and an absorbing media with black body bounding surfaces. This is a 2-dimensional case using a 3x20 plane of cells in order to predict a quasi-1D solution. The temperature field of the media between the plates is prescribed as an asymmetrical piecewise parabola.

Parameters

The tunable parameter of this problem is the absorptivity (\(\kappa\)), which controls how much radiation is attenuated or emitted by the absorbing media based on its temperature excess relative to black body.

parameters formula value
\(\kappa\) \(\frac{d I}{d x} = \kappa (\frac{\sigma T^4}{\pi} - I)\) 1.0

Fields

The temperature field in this problem is assigned explicitly as an input. Based on this temperature field and the absorptivity of the medium, the analytical solution for the net radiation heat transfer can be calculated through a numerical integration. if \(y < 0\) \(T = -6.349E6 y^2 + 2000.0 [K]\) if \(y > 0\) \(-1.179E7 y^2 + 2000.0 [K]\)

radiation/parallelPlatesRadiation.yaml

---
test:
  # a unique test name for this integration tests
  name: parallelPlatesRadiation
  # create a default assert that compares the log file
  assert: "inputs/radiation/parallelPlatesOutput.txt"

environment:
  title: _rad
  tagDirectory: true
arguments: { }
timestepper:
  name: theMainTimeStepper
  arguments:
    ts_type: rk
    ts_max_steps: 4
  domain: !ablate::domain::BoxMeshBoundaryCells
    name: simpleBoxField
    faces: [ 3, 5 ]
    lower: [ 0 , -0.0105 ]
    upper: [ 0.5 , 0.0105 ]
    options:
      dm_refine: 0
      dm_plex_hash_location: true
    preModifiers:
      - !ablate::domain::modifiers::DistributeWithGhostCells
    postModifiers:
      - !ablate::domain::modifiers::GhostBoundaryCells
    fields:
      - !ablate::finiteVolume::CompressibleFlowFields
        eos: !ablate::eos::PerfectGas &eos
          parameters:
            gamma: 1.4
            Rgas: 287.0
        name: domain
        region:
          name: domain
  initialization:
    - !ablate::finiteVolume::fieldFunctions::Euler
      state:
        eos: *eos
        pressure: 101325.0
        temperature: "y < 0 ? (-(6.349E6*y*y) + 2000.0) : (-(1.179E7*y*y) + 2000.0)"
        velocity: 0., 0
solvers:
  - !ablate::finiteVolume::CompressibleFlowSolver
    id: vortexFlowField
    region:
      name: interiorCells
    parameters:
      cfl: 0.5
    monitors:
      - !ablate::monitors::MaxMinAverage
        field: euler
    eos: *eos
  - !ablate::boundarySolver::BoundarySolver
    id: openBoundary
    region:
      name: boundaryCells
    fieldBoundary:
      name: boundaryFaces
    processes:
      - !ablate::boundarySolver::lodi::Inlet
        eos: *eos
  - !ablate::radiation::VolumeRadiation
    id: radiationSolver
    interval: 1
    radiation: !ablate::radiation::Radiation
      id: radiation
      region:
        name: interiorCells
      rays: 5
      # this is only an example of how to combine multiple models.  A simple fixed constant would be ideal for a real simulation
      properties: !ablate::eos::radiationProperties::Sum
        - !ablate::eos::radiationProperties::Constant
          absorptivity: .4
          emissivity: 1
        - !ablate::eos::radiationProperties::Constant
          absorptivity: .6
          emissivity: 1