volumeOfFluids/twoGasAdvectingDiscontinuity.yaml
---
test:
# a unique test name for this integration tests
name: twoGasAdvectingDiscontinuity
# create a default assert that compares the log file
assert: "inputs/volumeOfFluids/twoGasAdvectingDiscontinuity.txt"
environment:
title: _Moving_2gas_10pts
tagDirectory: true
arguments: { }
timestepper:
name: theMainTimeStepper
arguments:
ts_type: rk
ts_max_time: 0.001
ts_dt: 1e-4
ts_adapt_type: none
domain: !ablate::domain::BoxMesh
name: simpleBoxField
faces: [ 10 ]
lower: [ 0 ]
upper: [ 10 ]
boundary: [ NONE ]
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" # T=300K, v=100m/s, p=100,000Pa
field: >-
x < 5.0 ? 1.1614401858304297 : 1.601563125610596,
x < 5.0 ? 255807.2009291522 : 159522.9671432045,
x < 5.0 ? -116.14401858304298 : -160.1563125610596
- &rhoAlpha
fieldName: densityvolumeFraction
field: " x < 5.0 ? 0.0 : 1.601563125610596 "
- &alpha
fieldName: volumeFraction
field: " x < 5.0 ? 0.0 : 1.0 "
exactSolution:
- fieldName: "euler" # T=300K, v=100m/s, p=100,000Pa
field: >-
x < 2.0 ? 1.1614401858304297 : 1.601563125610596,
x < 2.0 ? 255807.2009291522 : 159522.9671432045,
x < 2.0 ? -116.14401858304298 : -160.1563125610596
- fieldName: densityvolumeFraction
field: " x < 2.0 ? 0.0 : 1.601563125610596 "
- fieldName: volumeFraction
field: " x < 2.0 ? 0.0 : 1.0 "
solver: !ablate::finiteVolume::FiniteVolumeSolver
id: SOD Problem
processes:
- !ablate::finiteVolume::processes::TwoPhaseEulerAdvection
eos: !ablate::eos::TwoPhase
eos1: !ablate::eos::PerfectGas &eosArgon
parameters: # argon
gamma: 1.66
Rgas: 208.13
eos2: !ablate::eos::PerfectGas &eosAir
parameters: # air
gamma: 1.4
Rgas: 287.0
fluxCalculatorGasGas: !ablate::finiteVolume::fluxCalculator::Riemann2Gas
eosL: *eosArgon
eosR: *eosArgon
fluxCalculatorGasLiquid: !ablate::finiteVolume::fluxCalculator::Riemann2Gas
eosL: *eosArgon
eosR: *eosAir
fluxCalculatorLiquidGas: !ablate::finiteVolume::fluxCalculator::Riemann2Gas
eosL: *eosAir
eosR: *eosArgon
fluxCalculatorLiquidLiquid: !ablate::finiteVolume::fluxCalculator::Riemann2Gas
eosL: *eosAir
eosR: *eosAir
boundaryConditions:
- !ablate::finiteVolume::boundaryConditions::EssentialGhost
boundaryName: air walls euler
labelIds: [ 1, 2 ]
boundaryValue: *eulerField
- !ablate::finiteVolume::boundaryConditions::EssentialGhost
boundaryName: vf walls
labelIds: [ 1, 2 ]
boundaryValue: *rhoAlpha
- !ablate::finiteVolume::boundaryConditions::EssentialGhost
boundaryName: alpha walls
labelIds: [ 1, 2 ]
boundaryValue: *alpha
monitors:
- !ablate::monitors::TimeStepMonitor
- !ablate::monitors::CurveMonitor
interval: 10
- !ablate::monitors::SolutionErrorMonitor
scope: component
type: l2_norm
log: !ablate::monitors::logs::CsvLog
name: L2.csv