SCPThermalVoid
2d-serial
Two-dimensional |
|
Serial |
|
Validated using check script |
|
./bin/alamo-2d-g++ tests/SCPThermalVoid/input stop_time="0.01001_s" amr.plot_dt="0.01_s"
|
2d-parallel
Two-dimensional |
|
Parallel (8 procs) |
|
Validated using check script |
|
mpiexec -np 8 ./bin/alamo-2d-g++ tests/SCPThermalVoid/input stop_time="0.05001_s" amr.plot_dt="0.05_s"
|
Input file (../../tests/SCPThermalVoid/input)
#@ [2d-serial]
#@ dim = 2
#@ check = true
#@ check-file = reference/reference-2d-serial.csv
#@ args = stop_time=0.01001_s
#@ args = amr.plot_dt=0.01_s
#@
#@ [2d-parallel]
#@ dim = 2
#@ nprocs = 8
#@ check = true
#@ args = stop_time=0.05001_s
#@ args = amr.plot_dt=0.05_s
#@ check-file = reference/reference-2d-parallel.csv
alamo.program = flame
plot_file = output.test
system.length = mm
system.time = s
# AMR and output parameters
amr.plot_dt = 2e-3_s
amr.max_grid_size = 4
amr.blocking_factor = 4
amr.base_regrid_int = 10
amr.grid_eff = 0.8
amr.refinement_criterion = 0.1
amr.refinement_criterion_temp = 4.0_K
# amr.phi_refinement_criterion = 0.5
amr.cell.all = 1
# amr.max_plot_level = 2
#amr.node.all = 1
# Geometry and base grid size
amr.max_level = 3
# Full size
amr.n_cell = 16 16 16
geometry.prob_lo = 0.0_mm 0.0_mm 0.0_mm
geometry.prob_hi = 1.0_mm 1.0_mm 1.2_mm
geometry.is_periodic = 0 0 0
## Timestep
timestep = 1e-5_s # [s]
stop_time = 0.25_s
small = 1.0e-6
pf.eps = 10.0_um #0.0005 # [m]
pf.lambda = 0.001_J/m^2
## Eta initial condition
pf.eta.ic.type = expression
pf.eta.ic.expression.constant.eps = 10.0_um
pf.eta.ic.expression.constant.x0 = 30.0_um
pf.eta.ic.expression.region0 = "(erf(10*(x-0.5)**2+10*(y-0.5)**2))"
## Phi initial condition (spheres)
phi.ic.type = expression
phi.ic.expression.constant.eps = 10.0_um
phi.ic.expression.constant.x0 = 30.0_um
phi.ic.expression.region0 = "(erf(20*(x-0.25)**2+20*(y-0.25)**2))*(erf(20*(x-0.25)**2+20*(y-0.75)**2))*(erf(20*(x-0.75)**2+20*(y-0.25)**2))*(erf(20*(x-0.75)**2+20*(y-0.75)**2))"
# Phase field parameters
pf.kappa = 5.0_J/m^2
pf.w1 = 1.0_1
pf.w12 = 2.0_1
pf.w0 = 0.0_1
# Eta boundary conditions
pf.eta.bc.type = constant
pf.eta.bc.constant.type.xlo = dirichlet
pf.eta.bc.constant.type.xhi = neumann
pf.eta.bc.constant.type.ylo = neumann
pf.eta.bc.constant.type.yhi = neumann
pf.eta.bc.constant.type.zlo = neumann
pf.eta.bc.constant.type.zhi = neumann
pf.eta.bc.constant.val.xlo = 0.0
pf.eta.bc.constant.val.xhi = 0.0
pf.eta.bc.constant.val.ylo = 0.0
pf.eta.bc.constant.val.yhi = 0.0
pf.eta.bc.constant.val.zlo = 0.0
pf.eta.bc.constant.val.zhi = 0.0
# Propellant model - requires thermal model
propellant.type = fullfeedback
# arrhenius rate law parameters
propellant.fullfeedback.m_ap = 1.45e5_m/s
propellant.fullfeedback.m_htpb = 1.4e1_m/s
propellant.fullfeedback.E_ap = 11000.0_K
propellant.fullfeedback.E_htpb = 7500.0_K
# thermal transport parameters
propellant.fullfeedback.rho_ap = 1950.0_kg/m^3
propellant.fullfeedback.rho_htpb = 930.0_kg/m^3
propellant.fullfeedback.k_ap = 0.4186_W/m/K
propellant.fullfeedback.k_htpb = 0.1300_W/m/K
propellant.fullfeedback.cp_ap = 1297.90_J/kg/K
propellant.fullfeedback.cp_htpb = 2418.29_J/kg/K
propellant.fullfeedback.mlocal_ap = 1000.0_kg/m^3/s
propellant.fullfeedback.mlocal_comb = 0.0_kg/m^3/s
# Mass-to-heat flux fit parameters
propellant.fullfeedback.a1 = 1.114_1
propellant.fullfeedback.a2 = 0.460_1
propellant.fullfeedback.a3 = 2.797_1
propellant.fullfeedback.b1 = 0.323_1
propellant.fullfeedback.b2 = 0.420_1
propellant.fullfeedback.b3 = 0.3225_1
propellant.fullfeedback.c1 = -0.09906_1
propellant.fullfeedback.phi.zeta = 10.0_um
propellant.fullfeedback.Pref = 1.1_MPa
# Thermal transport parameters
thermal.on = 1
thermal.Tfluid = 288.0
thermal.Tref = 300.0_K
thermal.Tcutoff = 400.0_K
thermal.end_initial_refine_time = 2e-4_s
# Temperature field initial condition
temp.ic.type = constant
temp.ic.constant.value = 288.0_K
# Temperature field boundary conditions
thermal.temp.bc.type = constant
thermal.temp.bc.constant.type.xlo = neumann
thermal.temp.bc.constant.type.xhi = neumann
thermal.temp.bc.constant.type.ylo = neumann
thermal.temp.bc.constant.type.yhi = neumann
thermal.temp.bc.constant.type.zlo = neumann
thermal.temp.bc.constant.type.zhi = neumann
thermal.temp.bc.constant.val.xlo = 0.0
thermal.temp.bc.constant.val.xhi = 0.0
thermal.temp.bc.constant.val.ylo = 0.0
thermal.temp.bc.constant.val.yhi = 0.0
thermal.temp.bc.constant.val.zlo = 0.0
thermal.temp.bc.constant.val.zhi = 0.0
# volumetric heat flux multiplier
thermal.hc = 1.0e7_W/m^2
# Laser initial condition
laser.ic.type = expression
laser.ic.expression.constant.tswitch = 1_ms
laser.ic.expression.constant.qflux0 = 1.0e8_W/m^2
laser.ic.expression.constant.qflux1 = 1.0e6_W/m^2
laser.ic.expression.constant.eps = 10.0_um
laser.ic.expression.constant.x0 = 60.0_um
laser.ic.expression.region0 = "(qflux0*(t<tswitch) + qflux1*(t>=tswitch))*(0.5 - 0.5*erf((x-x0)/eps))"
# Chamber pressure (used for regression model)
chamber.pressure = 1.0_MPa ## [MPa]
# Disable NAN checking
amr.abort_on_nan = 1
# Disable elasticity
elastic.type = disable