source: tags/Mars-V0.9.6/macros/starfield.C

Last change on this file was 4358, checked in by tbretz, 21 years ago
*** empty log message ***
File size: 3.5 KB
Line 
1/* ======================================================================== *\
2!
3! *
4! * This file is part of MARS, the MAGIC Analysis and Reconstruction
5! * Software. It is distributed to you in the hope that it can be a useful
6! * and timesaving tool in analysing Data of imaging Cerenkov telescopes.
7! * It is distributed WITHOUT ANY WARRANTY.
8! *
9! * Permission to use, copy, modify and distribute this software and its
10! * documentation for any purpose is hereby granted without fee,
11! * provided that the above copyright notice appear in all copies and
12! * that both that copyright notice and this permission notice appear
13! * in supporting documentation. It is provided "as is" without express
14! * or implied warranty.
15! *
16!
17!
18! Author(s): Thomas Bretz 5/2004 <mailto:tbretz@astro.uni-wuerzburg.de>
19!
20! Copyright: MAGIC Software Development, 2000-2004
21!
22!
23\* ======================================================================== */
24
25///////////////////////////////////////////////////////////////////////////
26//
27// starfield.C
28// ===========
29//
30// This is a macro demonstrating how to use Mars to display a starfield.
31// It also is a tutorial for MAstroCatalog and MAstroCamera.
32//
33// For more details on this classes see the class-reference.
34//
35// If you want to display stars in a camera you need the camera geometry
36// and the mirror definition. You can get this either from a Monte Carlo
37// file containing both or create your MGeomCam object manually and
38// read a magic.def file which you will find in the camera simulation
39// program.
40//
41///////////////////////////////////////////////////////////////////////////
42
43void ReadSetup(TString fname, MAstroCamera &cam)
44{
45 MMcConfigRunHeader *config=0;
46 MGeomCam *geom=0;
47
48 TFile file(fname);
49 TTree *tree = (TTree*)file.Get("RunHeaders");
50 tree->SetBranchAddress("MMcConfigRunHeader", &config);
51 if (tree->GetBranch("MGeomCam"))
52 tree->SetBranchAddress("MGeomCam", &geom);
53 tree->GetEntry(0);
54
55 cam.SetMirrors(*config->GetMirrors());
56 cam.SetGeom(*geom);
57
58 /* Alternative:
59
60 MGeomCamMagic geom;
61 cam.SetGeom(geom);
62 cam.SetMirrors("magic.def");
63 */
64}
65
66void starfield()
67{
68 // Name of a MC file having MGeomCam and MMcConfigRunHeader
69 TString fname = "../Mars/Gamma_zbin7_90_7_53395to53399_w0.root";
70
71 // Time for which to get the picture
72 MTime time;
73 time.Set(2004, 2, 28, 01, 32, 15);
74
75 // Current observatory
76 MObservatory magic1;
77
78 // Right Ascension [h] and declination [deg] of source
79 // Currently 'perfect' pointing is assumed
80 const Double_t ra = MAstro::Hms2Rad(5, 34, 31.9);
81 const Double_t dec = MAstro::Dms2Rad(22, 0, 52.0);
82
83 new TCanvas;
84
85 // --------------------------------------------------------------------------
86 // Create camera display from geometry
87 //MAstroCatalog stars; // Use this top display a catalog
88 MAstroCamera stars; // Use this top display a catalog on top of a camera
89 ReadSetup(fname, stars); // Use this top display a catalog on top of a camera
90 stars.SetLimMag(6);
91 stars.SetRadiusFOV(3);
92 stars.SetRaDec(ra, dec);
93
94 // Read the stars from a star catalog. The catalogs can be downloaded
95 // from the Mars web page. For more information see class reference.
96 stars.ReadBSC("bsc5.dat");
97
98 stars.SetObservatory(magic1);
99 stars.SetTime(time);
100 stars.SetGuiActive();
101
102 // See the cooresponding Draw-function for more options
103 TObject *o = stars.Clone();
104 o->SetBit(kCanDelete);
105 o->Draw();
106
107}
Note: See TracBrowser for help on using the repository browser.