GWOLLUM 4.2.0
Tools for gravitational-wave analyses
Loading...
Searching...
No Matches
InjTre.h
Go to the documentation of this file.
1
6#ifndef __InjTre__
7#define __InjTre__
8
9
10#include "InjTyp.h"
11#include "Monitor.h"
12#include <TFile.h>
13#include <TTree.h>
14#include <TGraph.h>
15
16using namespace std;
17
34class InjTre{
35
36public:
37
51 InjTre(const injtype aInjType, const string aInjName="gwl_inj", const unsigned int aVerbose=0);
52
56 virtual ~InjTre();
77 bool SetWave(TGraph *aHplus, TGraph *aHcross=NULL);
78
91 unsigned int Add(const double aRa,
92 const double aDec,
93 const double aTime,
94 const double aAmplitude,
95 const double aEccentricity = 0.0,
96 const double aPolarization = 0.0,
97 const double aSigma = 0.0,
98 const double aFrequency = 0.0);
99
103 inline unsigned int GetN(void){ return (unsigned int)InjTree->GetEntries(); };
104
109 inline void Reset(void){ InjTree->Reset(); WaveTree->Reset(); };
110
116 bool Write(const string aRootFileName="./myinjections.root");
117
118protected:
120
121private:
122
123 TTree *InjTree;
124 double inj_ra,
132 unsigned int inj_time_ns;
133
134 TTree *WaveTree;
135 string wave_name;
136 UInt_t wave_type;
137 TGraph *wave_hplus;
138 TGraph *wave_hcross;
139
140 ClassDef(InjTre,0)
141};
142
143#endif
144
145
Manage injection types.
injtype
List of injection types.
Definition InjTyp.h:17
Process monitoring.
Manage injection structures.
Definition InjTre.h:34
virtual ~InjTre()
Destructor of the InjTre class.
Definition InjTre.cc:69
string wave_name
Waveform name.
Definition InjTre.h:135
TTree * WaveTree
Waveform tree.
Definition InjTre.h:134
TTree * InjTree
Injection tree.
Definition InjTre.h:123
double inj_dec
Injection declination [rad].
Definition InjTre.h:125
void Reset(void)
Resets the injection TTree.
Definition InjTre.h:109
TGraph * wave_hplus
Waveform .
Definition InjTre.h:137
unsigned int GetN(void)
Returns the current number of injections.
Definition InjTre.h:103
InjTre(const injtype aInjType, const string aInjName="gwl_inj", const unsigned int aVerbose=0)
Constructor of the InjTre class.
double inj_psi
Injection polarization angle [rad].
Definition InjTre.h:126
double inj_sigma
Injection sigma [s].
Definition InjTre.h:130
double inj_ecc
Injection eccentricity.
Definition InjTre.h:131
double inj_f0
Injection frequency [Hz].
Definition InjTre.h:129
bool SetWave(TGraph *aHplus, TGraph *aHcross=NULL)
Sets the user waveform for "Wave" injections.
Definition InjTre.cc:81
unsigned int Add(const double aRa, const double aDec, const double aTime, const double aAmplitude, const double aEccentricity=0.0, const double aPolarization=0.0, const double aSigma=0.0, const double aFrequency=0.0)
Adds an injection.
Definition InjTre.cc:129
unsigned int inj_time_ns
Injection subsecond time [ns] (only used for sorting injections in InjRea).
Definition InjTre.h:132
double inj_amp
Injection amplitude.
Definition InjTre.h:128
Monitor * mon
Class monitor.
Definition InjTre.h:119
bool Write(const string aRootFileName="./myinjections.root")
Writes injections to disk.
Definition InjTre.cc:159
double inj_ra
Injection right ascension [rad].
Definition InjTre.h:124
UInt_t wave_type
Waveform type: see InjTyp.h.
Definition InjTre.h:136
double inj_time
Injection time [s].
Definition InjTre.h:127
TGraph * wave_hcross
Waveform .
Definition InjTre.h:138
Monitor a GWOLLUM processing.
Definition Monitor.h:39