script.py

Mayer Michael, 06/22/2016 05:54 PM

Download (2.8 KB)

 
1
import gammalib
2
import ctools
3
import cscripts
4

    
5
if __name__ == "__main__":
6

    
7
        obsdef = cscripts.csobsdef()
8
        obsdef["inpnt"] = "pnt.dat"
9
        obsdef["duration"] = 1800.0
10
        obsdef["outobs"] = "obs.xml"
11
        obsdef["debug"] = True
12
        obsdef.execute()
13
        
14
        sim = ctools.ctobssim()
15
        sim["inobs"] = "obs.xml"
16
        sim["caldb"] = "prod2"
17
        sim["irf"]   = "South_50h"
18
        sim["emin"]  = 0.5
19
        sim["emax"]  = 50.0
20
        sim["rad"]   = 3.0
21
        sim["inmodel"] = "$CTOOLS/share/models/crab.xml"
22
        sim["outevents"] = "sim_events.xml"
23
        sim["debug"] = True
24
        sim.execute()
25
        
26
        sel = ctools.ctselect()
27
        sel["inobs"] = "sim_events.xml"
28
        sel["usepnt"] = True
29
        sel["rad"] = 2.5
30
        sel["tmin"] = 0.0
31
        sel["tmax"] = 0.0
32
        sel["emin"] = 0.6
33
        sel["emax"] = 20.0
34
        sel["outobs"] = "sel_obs.xml"
35
        sel["debug"] = True
36
        sel.execute()
37
        
38
        bin = ctools.ctbin()
39
        bin["inobs"] = "sel_obs.xml"
40
        bin["xref"] = 83.6331
41
        bin["yref"] = 22.01
42
        bin["proj"] = "TAN"
43
        bin["coordsys"] = "CEL"
44
        bin["emin"] = 0.6
45
        bin["emax"] = 20.0
46
        bin["ebinalg"] = "LOG"
47
        bin["enumbins"] = 20
48
        bin["nxpix"] = 100
49
        bin["nypix"] = 100
50
        bin["binsz"] = 0.02
51
        bin["outcube"] = "cntcube.fits"
52
        bin["debug"] = True
53
        bin.execute()
54
        
55
        expcube = ctools.ctexpcube()
56
        expcube["inobs"] = "sel_obs.xml"
57
        expcube["incube"] = "cntcube.fits"
58
        expcube["outcube"] = "expcube.fits"
59
        expcube["debug"] = True
60
        expcube.execute()
61
        
62
        psfcube = ctools.ctpsfcube()
63
        psfcube["inobs"] = "sel_obs.xml"
64
        psfcube["incube"] = "NONE"
65
        psfcube["xref"] = 83.6331
66
        psfcube["yref"] = 22.01
67
        psfcube["proj"] = "TAN"
68
        psfcube["coordsys"] = "CEL"
69
        psfcube["emin"] = 0.6
70
        psfcube["emax"] = 20.0
71
        psfcube["ebinalg"] = "LOG"
72
        psfcube["enumbins"] = 20
73
        psfcube["nxpix"] = 10
74
        psfcube["nypix"] = 10
75
        psfcube["binsz"] = 0.21
76
        psfcube["outcube"] = "psfcube.fits"
77
        psfcube["debug"] = True
78
        psfcube.execute()
79
        
80
        edispcube = ctools.ctedispcube()
81
        edispcube["incube"] = "NONE"
82
        edispcube["inobs"] = "sel_obs.xml"
83
        edispcube["xref"] = 83.6331
84
        edispcube["yref"] = 22.01
85
        edispcube["proj"] = "TAN"
86
        edispcube["coordsys"] = "CEL"
87
        edispcube["emin"] = 0.6
88
        edispcube["emax"] = 20.0
89
        edispcube["ebinalg"] = "LOG"
90
        edispcube["enumbins"] = 20
91
        edispcube["nxpix"] = 10
92
        edispcube["nypix"] = 10
93
        edispcube["binsz"] = 0.21
94
        edispcube["outcube"] = "edispcube.fits"
95
        edispcube["debug"] = True
96
        edispcube.execute()
97
        
98
        bkgcube = ctools.ctbkgcube()
99
        bkgcube["inobs"] = "sel_obs.xml"
100
        bkgcube["inmodel"] = sim["inmodel"].filename().url()
101
        bkgcube["incube"] = "cntcube.fits"
102
        bkgcube["outcube"] = "bkgcube.fits"
103
        bkgcube["outmodel"] = "binned_model.xml"
104
        bkgcube["debug"] = True
105
        bkgcube.execute()
106
        
107
        like = ctools.ctlike()
108
        like["inobs"] = "cntcube.fits"
109
        like["expcube"] = "expcube.fits"
110
        like["psfcube"] = "psfcube.fits"
111
        like["edispcube"] = "edispcube.fits"
112
        like["bkgcube"] = "bkgcube.fits"
113
        like["inmodel"] = "binned_model.xml"
114
        like["edisp"] = True
115
        like["debug"] = True
116
        like["outmodel"] = "fitted_model.xml"
117
        like.execute()