shocktube/shockTube2Gas2D.yaml
---
testingIgnore: true
#test:
# # a unique test name for this integration tests
# name: shockTube2Gas2D
# # create a default assert that compares the log file
# assert: "inputs/shocktube/shockTube2Gas2D.txt"
environment:
title: SOD_2Gas_6x6_ArAir
tagDirectory: true
arguments: { }
timestepper:
name: theMainTimeStepper
arguments:
ts_type: rk
ts_max_time: 0.01
ts_dt: 1e-3
ts_adapt_type: none
io:
interval: 10
domain: !ablate::domain::BoxMesh
name: simpleBoxField
faces: [ 3,3 ]
lower: [ 0,0 ]
upper: [ 1,1 ]
boundary: [ 'NONE','PERIODIC' ]
options:
dm_refine: 1
modifiers:
- !ablate::domain::modifiers::DistributeWithGhostCells
- !ablate::domain::modifiers::GhostBoundaryCells
fields:
- !ablate::finiteVolume::CompressibleFlowFields
eos: !ablate::eos::PerfectGas
parameters:
gamma: 0
Rgas: 0
- name: densityvolumeFraction
type: FVM
- name: volumeFraction
type: FVM
- name: pressure
location: AUX
type: FVM
initialization:
- &eulerField
fieldName: "euler" # rho, rhoE, rhoU: sod rho/p 1.0/1.0 - 0.125/0.1
field: >-
x < 0.5 ? 1.0 : 0.125,
x < 0.5 ? 1.492537313432836 : 0.25,
0,
0
- &rhoAlpha
fieldName: densityvolumeFraction
field: "x < 0.5 ? 0.0 : 0.125"
- &alpha
fieldName: volumeFraction
field: "x < 0.5 ? 0.0 : 1.0"
solver: !ablate::finiteVolume::FiniteVolumeSolver
id: SOD Problem
processes:
- !ablate::finiteVolume::processes::TwoPhaseEulerAdvection
eos: !ablate::eos::TwoPhase
eos1: !ablate::eos::PerfectGas &eosAir
parameters: # air
gamma: 1.4
Rgas: 287.0
eos2: !ablate::eos::PerfectGas &eosArgon
parameters: # argon
gamma: 1.67
Rgas: 208.1
fluxCalculatorGasGas: !ablate::finiteVolume::fluxCalculator::Riemann2Gas
eosL: *eosAir
eosR: *eosAir
fluxCalculatorGasLiquid: !ablate::finiteVolume::fluxCalculator::Riemann2Gas
eosL: *eosAir
eosR: *eosArgon
fluxCalculatorLiquidGas: !ablate::finiteVolume::fluxCalculator::Riemann2Gas
eosL: *eosArgon
eosR: *eosAir
fluxCalculatorLiquidLiquid: !ablate::finiteVolume::fluxCalculator::Riemann2Gas
eosL: *eosArgon
eosR: *eosArgon
boundaryConditions:
- !ablate::finiteVolume::boundaryConditions::EssentialGhost
boundaryName: "air walls euler"
labelIds: [ 2, 4 ]
boundaryValue: *eulerField
- !ablate::finiteVolume::boundaryConditions::EssentialGhost
boundaryName: "vf walls"
labelIds: [ 2, 4 ]
boundaryValue: *rhoAlpha
- !ablate::finiteVolume::boundaryConditions::EssentialGhost
boundaryName: "alpha walls"
labelIds: [ 2, 4 ]
boundaryValue: *alpha
monitors:
- !ablate::monitors::TimeStepMonitor