-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathyann_tracer_check.py
executable file
·54 lines (42 loc) · 1.17 KB
/
yann_tracer_check.py
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
#!/usr/bin/env python
from const import *
import numpy as np
import yag
import yann_tracer
import argparse
def main(
arepodir="../output/",
arepobase="snapshot_",
radioactives=["ni56", "co56", "fe52", "cr48"],
):
y = yag.yag(arepodir=arepodir, arepobase=arepobase)
yt = yann_tracer.yann_tracer(
filename=y.tracerfile,
decay=0.0,
species=y.species,
exclude_from_decay=radioactives,
Heshell=False,
)
species_names = y.species["names"]
print("Total mass for species:")
for j, species in enumerate(species_names):
mass = np.sum(yt.xnuc[:, j] * yt.masses[:]) / msol
print("%s: %.4f Msol" % (species, mass))
return
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument(
"--arepodir",
default="../output/",
)
parser.add_argument(
"--arepobase",
default="snapshot_",
)
parser.add_argument(
"--radioactives", nargs="+", default=["ni56", "co56", "fe52", "cr48"]
)
args = parser.parse_args()
main(
arepobase=args.arepobase, arepodir=args.arepodir, radioactives=args.radioactives
)