-
Notifications
You must be signed in to change notification settings - Fork 2
/
inputs_2d
172 lines (133 loc) · 5.44 KB
/
inputs_2d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
# ------------------ INPUTS TO MAIN PROGRAM -------------------
max_step = 100000
stop_time = 50000.0
# PROBLEM SIZE & GEOMETRY
geometry.is_periodic = 1 0
geometry.coord_sys = 0 # 0 => cart, 1 => RZ 2=>spherical
geometry.prob_lo = 0 0
geometry.prob_hi = 1.024e9 1.024e9
amr.n_cell = 512 512
# >>>>>>>>>>>>> BC FLAGS <<<<<<<<<<<<<<<<
# 0 = Interior 3 = Symmetry
# 1 = Inflow 4 = SlipWall
# 2 = Outflow 5 = NoSlipWall
# >>>>>>>>>>>>> BC FLAGS <<<<<<<<<<<<<<<<
castro.lo_bc = 0 1
castro.hi_bc = 0 2
# WHICH PHYSICS
castro.do_hydro = 1
castro.do_react = 0
castro.add_ext_src = 0
castro.do_grav = 1
castro.do_sponge = 1
castro.do_radiation = 1
castro.ppm_type = 1
castro.ppm_reference = 1
castro.ppm_reference_edge_limit = 1
castro.allow_negative_energy = 0
gravity.gravity_type = ConstantGrav
gravity.const_grav = -1.e3
# TIME STEP CONTROL
castro.cfl = 0.7 # cfl number for hyperbolic system
castro.init_shrink = 0.1 # scale back initial timestep
castro.change_max = 1.1 # max time step growth
castro.dt_cutoff = 5.e-20 # level 0 timestep below which we halt
# DIAGNOSTICS & VERBOSITY
castro.sum_interval = 1 # timesteps between computing mass
castro.v = 1 # verbosity in Castro.cpp
amr.v = 1 # verbosity in Amr.cpp
# REFINEMENT / REGRIDDING
amr.max_level = 1 # maximum level number allowed
amr.ref_ratio = 2 2 2 2 # refinement ratio
amr.regrid_int = 2 2 2 2 # how often to regrid
amr.blocking_factor = 4 # block factor in grid generation
amr.max_grid_size = 128
amr.n_error_buf = 2 2 2 2 # number of buffer cells in error est
# CHECKPOINT FILES
amr.check_file = chk # root name of checkpoint file
amr.check_int = 1000 # number of timesteps between checkpoints
# PLOTFILES
amr.plot_file = plt # root name of plotfile
amr.plot_int = 25 # number of timesteps between plotfiles
amr.derive_plot_vars = ALL
#PROBIN FILENAME
amr.probin_file = probin
# DATA LOG
amr.data_log = log
# ------------------ INPUTS TO RADIATION CLASS -------------------
##### SolverType #####
# 0: single group diffusion w/o coupling to hydro
# 5: SGFLD 6: MGFLD
radiation.SolverType = 5
radiation.comoving = 0
radiation.Er_Lorentz_term = 0
# RADIATION TOLERANCES
radiation.reltol = 1.e-6 # relative tolerance for implicit update loop
radiation.abstol = 0.0 # absolute tolerance for implicit update loop
radiation.maxiter = 50 # return after numiter iterations if not converged
# RADIATION LIMITER
radiation.limiter = 2 # 0 = no limiter
# 2 = correct form of Lev-Pom limiter
radiation.delta_temp = 0.01
# RADIATION VERBOSITY
radiation.v = 2 # verbosity
# We set radiation boundary conditions directly since they do not
# correspond neatly to the physical boundary conditions used for the fluid.
# The choices are:
# 101 = LO_DIRICHLET 102 = LO_NEUMANN
# 104 = LO_MARSHAK 105 = LO_SANCHEZ_POMRANING
radiation.lo_bc = 101 102 102
radiation.hi_bc = 101 105 102
# For each boundary, we can specify either a constant boundary value
# or use a Fortran function FORT_RADBNDRY to specify values that vary
# in space and time.
# If bcflag is 0 then bcval is used, otherwise FORT_RADBNDRY used:
radiation.lo_bcflag = 0 0 0
radiation.hi_bcflag = 0 0 0
# bcval is interpreted differently depending on the boundary condition
# 101 = LO_DIRICHLET bcval is Dirichlet value of rad energy density
# 102 = LO_NEUMANN bcval is inward flux of rad energy
# 104 = LO_MARSHAK bcval is incident flux
# 105 = LO_SANCHEZ_POMRANING bcval is incident flux
radiation.lo_bcval = 0.0 0.0 0.0
radiation.hi_bcval = 0.0 3.6e9 0.0
radiation.do_real_eos = 1
# Power-law opacities are represented as:
#
# const_kappa * (rho**m) * (temp**(-n)) * (nu**(p))
#
# Since the formula is both nonphysical and singular, prop_temp_floor
# provides a floor for the temperature used in the power-law computation.
# Planck mean opacity
radiation.const_kappa_p = 6.35e-3
radiation.kappa_p_exp_m = 2.0
radiation.kappa_p_exp_n = -1.0
# Rosseland mean opacity
radiation.const_kappa_r = 6.35e-3
radiation.kappa_r_exp_m = 2.0
radiation.kappa_r_exp_n = -1.0
# ------------------ INPUTS TO RADIATION SOLVER CLASS -------------------
# solver flag values < 100 use HypreABec, support symmetric matrices only
# solver flag values >= 100 use HypreMultiABec, support nonsymmetric matrices
#
# PFMG does not supprt 1D.
# ParCSR does not work for periodic boundaries.
# For MGFLD with accelerate = 2, must use >=100.
#
# 0 SMG
# 1 PFMG (>= 2D only)
# 100 AMG using ParCSR ObjectType
# 102 GMRES using ParCSR ObjectType
# 103 GMRES using SStruct ObjectType
# 104 GMRES using AMG as preconditioner
# 109 GMRES using Struct SMG/PFMG as preconditioner
# 150 AMG using ParCSR ObjectType
# 1002 PCG using ParCSR ObjectType
# 1003 PCG using SStruct ObjectType
radsolve.level_solver_flag = 0 # can be any supported hypre solver flag
radsolve.reltol = 1.0e-11 # relative tolerance
radsolve.abstol = 0.0 # absolute tolerance (often not necessary)
radsolve.maxiter = 200 # linear solver iteration limit
radsolve.v = 1 # verbosity
hmabec.verbose = 2 # verbosity for HypreMultiABec solvers
habec.verbose = 2 # verbosity for HypreABec solvers