forked from pabolmasov/HACol
-
Notifications
You must be signed in to change notification settings - Fork 0
/
globals.conf
471 lines (461 loc) · 10.3 KB
/
globals.conf
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
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
[DEFAULT]
# coordinate mesh:
nx = 1200 # the actual number of points in use
nx0factor = 50 # first we make a finer mesh for interpolation; this is the refinement factor
parallelfactor = 4 # how many cores we use; each takes equal fraction of cells
logmesh = True # if we are using logarithmic mesh in radius
rbasefactor = 1. #
iftail = False
rtailfactor = 0.4 # in the units of the magnetosphere radius
ifquadratic = False
# numerical parameters:
rsolver = 'HLLE' # the type of Riemann solver ('HLLE' by default, 'HLLC' supported)
fsplitter = True
CFL = 0.5 # CFL = 0.5 is still noisy!
Cth = 0.5 # thermal timescale factor
Cdiff = 0.5 # diffusion time scale factor, dt = 1./(1./dt_CFL + 1./dt_thermal + 1./dt_diff)
CMloss = 0.5 # mass loss restriction for dt
timeskip = 1 # how often we adjust the time step (every timeskip-th step dt is adjusted)
potfrac = 0. # fraction of potential energy included in energy density
ttest = False # set True to output topology test (which domains are connected to which)
szero = False # if we are setting rho v = 0 at the inner boundary
# szero decreases stability
# physical parameters:
mu30 = 0.1 # magnetic moment, 1e30 units
m1=1.4 # NS mass, Solar units
mdot = 10. # mass accretion rate, Eddington units
# note that this value of mdot will be used to estimate the size of the magnetosphere r_e!
# if you want to switch off the mass source, use the "ifturnoff" feature below
mdotsink = 0. # mass sink rate at the inner edge
# 1e21g/s --> 6291.12*4.*pi/m1
rstar = 4.86 # GM/c**2 units
# 10km --> 6.77159 for 1Msun
mow = 0.6 # molecular weight
betacoeff = 1.788e-5 # coefficient used to calculate gas-to-total pressure ratio (for m1 = 1, mow = 1)
# BC modes:
BSmode = False # if on, limits the internal energy density by MF energy density at the inner boundary
coolNS = False # if on (and BSmode is off), internal energy is constant at the inner boundary
# a test with coolNS converges well, but it is completely unphysical
ufixed = True # if on, fixes the internal energy at the outer rim, otherwise fixes the heat flux
# (setting ufixed = False? leads to negative
squeezemode = True # if on, press>umag at the inner boundary leads to mass loss
zeroeloss = False # to turn off the pAcross term when mass is lost
squeezeothersides = True
cooltwosides = False
# radiation transfer treatment:
ifthin = True
raddiff = True # if we include radiation diffusion along the field line
xirad = 1.5 # radiation diffusion scaling
taumin = 1e-8 # minimal optical depth to consider the low-tau limit
taumax = 100. # maximal optical depth (30?)
cslimit = False # if we are going to limit the radiation losses at low cs
mfloor = 1e-15 # crash floor for mass per unit length
rhofloor = 1e-15 # crash floor for density
ufloor = 1e-15 # crash floor for energy density
csqmin = 1e-3
nubulk = 0.0 # bulk viscosity coeff. Coughlin & Begelman (2014) give 8/81, Loeb & Laor (1992) 40/81 -- check which one is correct! Maybe the definition of zeta is different
weinberg = True # a flag indicating if the bulk viscosity should disappear when gamma=4/3
eta = 0.0 # self-illumination efficiency
heatingeff = 0.1 # additional heating scaling with mdot
afac = 0.25 # part of the longitudes subtended by the flow
xifac = 0.5 # magnetospheric radius in Alfven units
r_e_coeff = 3251.61
drrat = 0.25 # dr_e/r_e
#######
# use this if you want to the the mass accretion rate to zero without changing the size of the magnetosphere
ifturnoff = False
turnofffactor = 0.0 # real mdot used as the outer BC is multiplied by this factor, if ifturnoff is on
nocool = False # if we want to switch off qloss
# conversion to CGS units:
tscale = 4.92594e-06 # GMsun/c**3
rscale = 1.47676e5 # GMsun/c**2
rhoscale = 1.93474e-05 # c**2 / GMsun kappa, for kappa=0.35 (Solar metallicity, complete ionization)
uscale = 1.73886e16 # c**4/GMsun kappa
mdotscale = 1.26492e16 # G Msun / c kappa
lscale = 1.13685e37 # G Msun c / kappa luminosity scale
massscale = 6.23091e10 # (GMsun/c**2)**2/kappa
#
tmax = 50. # maximal time in depletion times
dtout = 0.001 # output time in depletion times
omegafactor = 0.0 # in Keplerian units on the outer rim
voutfactor = -1. # initial poloidal velocity at the outer boundary ; set to scale with the circular velocity at the outer edge
minitfactor = 1.0 # initial total mass in the units of the equilibrium mass of the column
# output options:
ifhdf = True # if we are writing to HDF5 instead of ascii (flux is always outputted as ascii)
outdir = out
# plotting options:
ifplot = True
plotalias = 10 # plot every Nth output step
ascalias = 10 # make an ascii file every Nth output step
# controlling the behaviour of the code:
verbose = True
autostart = True
# restart options
ifrestart = False
ifhdf_restart = True # if we are restarting from a hdf file (or an ascii snapshot); relevant only if ifrestart = True
restartfile = out/tireout1.hdf5
restartn = 890
restartprefix = out/tireout # used if we restart from ascii output
[FIDU]
outdir = out_fidu
[FIDUP]
nx = 4600
parallelfactor = 23
outdir = out_fidup
[R]
nx = 1200
CFL = 0.5
restartn = 16000
ifrestart = True
rsolver = 'HLLE'
ifhdf_restart = True
parallelfactor = 1
restartfile = out/tireout.hdf5
outdir = out1
[LIGHT]
parallelfactor = 12
nx = 2400
outdir = out_light
[LIGHTP]
parallelfactor = 12
nx = 2400
outdir = out_lightp
[UVAR]
ufixed = False
outdir = out_uvar
[HALFSIDES]
cooltwosides = True
squeezeothersides = False
outdir = out_half
[NOD]
parallelfactor = 1
raddiff = False
outdir = out_nod
[R_NOD]
raddiff = False
ifrestart = True
restartn = 7590
nx = 5000
restartfile = out_nod/tireout.hdf5
outdir = out_nod1
[WIDE]
afac = 1.
ifthin = True
minitfactor = 0.5
squeezeothersides = False
cooltwosides = True
outdir = out_wide
[R_WIDE]
afac = 1.
ifthin = True
ifrestart = True
squeezeothersides = False
cooltwosides = True
restartn = 2040
restartfile = out_wide/tireout.hdf5
outdir = out_wide1
[WIDE4]
afac = 1.
nx = 10000
outdir = out_wide4
[WIDENOD]
raddiff = False
afac = 1.
outdir = out_widenod
[R_WIDENOD]
raddiff = False
afac = 1.
ifrestart = True
restartn = 6925
nx = 5000
restartfile = out_widenod/tireout.hdf5
outdir = out_widenod1
[MTINY]
mdot = 0.1
mu30 = 1e-2
iftail = False
nx = 1200
parallelfactor = 6
rtailfactor = 1.0
outdir = out_mdottiny
[WTINY]
# nx = 1200
# parallelfactor = 6
afac = 1.0
logmesh = True
squeezeothersides = False
cooltwosides = True
drrat = 0.05
mdot = 0.1
mu30 = 1e-3
iftail = True
outdir = out_wtiny
[M1]
mdot = 1.
mu30 = 0.03
outdir = out_mdot1
[MHALF]
mdot = .5
mu30 = 0.02
outdir = out_mdothalf
[M1TAIL]
mdot = 1.
mu30 = 0.03
rtailfactor = 0.5
outdir = out_mdot1tail
[R_M1]
mdot = 1.
mu30 = 0.03
ifrestart = True
restartn = 430
nx = 5000
restartfile = out_mdot1/tireout.hdf5
outdir = out_mdot1_1
[M3]
mdot = 3.
mu30 = 0.05
outdir = out_mdot3
[R_M3]
mdot = 3.
mu30 = 0.5
ifrestart = True
restartn = 1085
nx = 5000
restartfile = out_mdot3/tireout.hdf5
outdir = out_mdot3_1
[M30]
mdot = 30.
mu30 = .2
outdir = out_mdot30
[R_M30]
mdot = 30.
mu30 = 2.
ifrestart = True
restartn = 4915
nx = 5000
restartfile = out_mdot30/tireout.hdf5
outdir = out_mdot30_1
[M100]
mdot = 100.
mu30 = .3
outdir = out_mdot100
[R_M100]
mdot = 100.
mu30 = 3.
ifrestart = True
restartn = 5340
nx = 5000
restartfile = out_mdot100/tireout.hdf5
outdir = out_mdot100_1
[ROT]
omegafactor = 0.9
outdir = out_rot
[R_ROT]
omegafactor = 0.9
ifrestart = True
restartn = 2885
restartfile = out_rot/tireout.hdf5
outdir = out_rot1
[IRR]
eta = 0.5
outdir = out_irr
[R_IRR]
eta = 0.5
ifrestart = True
restartn = 2380
restartfile = out_irr/tireout.hdf5
outdir = out_irr1
[RI]
omegafactor = 0.9
eta = 0.5
outdir = out_RI
[NU]
nubulk = 0.5
outdir = out_nu
[R_NU]
nubulk = 0.5
nx = 5000
ifrestart = True
restartn = 2870
restartfile = out_nu/tireout.hdf5
outdir = out_nu1
[V5]
voutfactor = -0.2
outdir = out_v5
[R_V5]
voutfactor = -0.2
nx = 5000
ifrestart = True
restartn = 2985
restartfile = out_v5/tireout.hdf5
outdir = out_v5_1
[V30]
voutfactor = -0.033333333
outdir = out_v30
[N4]
nx = 10000
outdir = out_n4
[R_N4]
nx = 10000
ifrestart = True
restartn = 480
restartfile = out_n4/tireout.hdf5
outdir = out_n4_1
[X]
xirad = 0.75
outdir = out_xireal
[R_X]
xirad = 0.2
nx = 5000
ifrestart = True
restartn = 2530
restartfile = out_xireal/tireout.hdf5
outdir = out_xireal1
[M100W]
mdot = 100.
mu30 = .3
afac = 1.0
squeezeothersides = False
cooltwosides = True
outdir = out_mdot100w
[M100Wdr1]
mdot = 100.
mu30 = .3
afac = 1.0
squeezeothersides = False
cooltwosides = True
outdir = out_mdot100w1
drrat = 1.0
[M100Wdr2]
mdot = 100.
mu30 = .3
afac = 1.0
squeezeothersides = False
cooltwosides = True
outdir = out_mdot100w2
drrat = 0.5
[M100Wdr3]
mdot = 100.
mu30 = .3
afac = 1.0
squeezeothersides = False
cooltwosides = True
outdir = out_mdot100w3
drrat = 0.3
[M100Wdr5]
mdot = 100.
mu30 = .3
afac = 1.0
squeezeothersides = False
cooltwosides = True
outdir = out_mdot100w5
drrat = 0.2
[M100Wdr10]
mdot = 100.
mu30 = .3
afac = 1.0
squeezeothersides = False
cooltwosides = True
outdir = out_mdot100w10
drrat = 0.1
[M100Wdr20]
mdot = 100.
mu30 = .3
afac = 1.0
squeezeothersides = False
cooltwosides = True
outdir = out_mdot100w20
drrat = 0.05
[M100Wdr50]
mdot = 100.
mu30 = .3
afac = 1.0
squeezeothersides = False
cooltwosides = True
outdir = out_mdot100w50
drrat = 0.02
[M100WI]
mdot = 100.
mu30 = 3.
afac = 1.0
eta = 0.5
outdir = out_mdot100wi
[M300W]
mdot = 300.
mu30 = 5.
afac = 1.0
outdir = out_mdot300w
[INSIDEOUT]
voutfactor = 0.06666667
outdir = out_IO
[HUGE]
nx = 9600
parallelfactor = 96
mu30 = 1.
raddiff = False
dtout = 0.001
outdir = out_huge
[DHUGE]
nx = 9600
parallelfactor = 48
mu30 = 1.
raddiff = True
dtout = 0.001
outdir = out_dhuge
[DHUGE_OLD]
nx = 5000
parallelfactor = 48
mu30 = 1.
raddiff = True
dtout = 0.001
outdir = out_dhuge
[DHUGEP]
nx = 9400
parallelfactor = 47
mu30 = 1.
raddiff = True
dtout = 0.001
outdir = out_dhugep
[R_HUGE]
mu30 = 3.
ifrestart = True
restartn = 140
nx = 20000
restartfile = out_huge/tireout.hdf5
outdir = out_huge1
[NARROW]
afac = 0.05
outdir = out_narrow
[SUPERNARROW]
afac = 0.025
outdir = out_snarrow
[NARROW2]
afac = 0.05
squeezeothersides = False
cooltwosides = True
zeroeloss = True
outdir = out_narrow2
[R_NARROW]
afac = 0.05
ifrestart = True
restartn = 5430
nx = 5000
restartfile = out_narrow/tireout.hdf5
outdir = out_narrow1
[M1N]
afac = 0.05
mdot = 1.
mu30 = 0.3
outdir = out_mdot1n
[R_M1N]
afac = 0.05
mdot = 1.
mu30 = 0.3
ifrestart = True
restartn = 2810
nx = 5000
restartfile = out_mdot1n/tireout.hdf5
outdir = out_mdot1n1
[DRSMALL]
drrat = 0.05
outdir = out_drsmall