12 #define sqrt2pi 2.5066282746310002416123552393401042
56 void MakeWaveform(
void);
72 inline double GetWaveform(
const unsigned int aIndex,
const unsigned int aSamplingFrequency){
75 Wg/sigma_t/
sqrt2pi*exp(-(-duration/2.0+(
double)aIndex/(
double)aSamplingFrequency-tau)*(-duration/2.0+(
double)aIndex/(
double)aSamplingFrequency-tau)/2.0/sigma_t/sigma_t)*
76 TMath::Cos(2.0*TMath::Pi()*phi*(-duration/2.0+(
double)aIndex/(
double)aSamplingFrequency)+phase);
85 double GetTrueSNR(Spectrum *aSpec1, Spectrum *aSpec2);
92 inline void SetTimeRange(
const double aTimeMin,
const double aTimeMax){
93 taumin=aTimeMin; taumax=aTimeMax;
102 phimin=aFreqMin; phimax=aFreqMax;
111 ampmin=aAmpMin; ampmax=aAmpMax;
120 Qmin=aQMin; Qmax=
aQMax;
156 inline double GetQ(
void){
return Q; };
231 void GenerateParameters(
void);
#define sqrt2pi
Definition: Oinject.h:12
const double aQMax
Definition: Otile.cc:11
Inject sinusoidal Gaussian waveforms.
Definition: Oinject.h:20
void SetQRange(const double aQMin, const double aQMax)
Sets a new range for : - .
Definition: Oinject.h:119
double GetQMax(void)
Returns the maximum Q .
Definition: Oinject.h:166
double GetSigmat(void)
Returns the injection duration .
Definition: Oinject.h:191
double GetFrequencyMin(void)
Returns the minimum frequency [Hz].
Definition: Oinject.h:146
double taumax
Maximum injection time.
Definition: Oinject.h:209
void SetAmplitudeRange(const double aAmpMin, const double aAmpMax)
Sets a new range for : - .
Definition: Oinject.h:110
Oinject(const double aDuration)
Constructor of the Oinject class.
double snr
Injection SNR .
Definition: Oinject.h:219
double GetPhase(void)
Returns the injection phase .
Definition: Oinject.h:186
double amp
Injection amplitude .
Definition: Oinject.h:216
double GetQMin(void)
Returns the minimum Q .
Definition: Oinject.h:161
double Wg
Gaussian window normalization.
Definition: Oinject.h:203
double GetFrequency(void)
Returns the injection frequency [Hz].
Definition: Oinject.h:141
double taumin
Minimum injection time.
Definition: Oinject.h:208
double ampmax
Maximum injection amplitude.
Definition: Oinject.h:218
void SetTimeRange(const double aTimeMin, const double aTimeMax)
Sets a new range for : - .
Definition: Oinject.h:92
double sigma_f
Gaussian window width (frequency).
Definition: Oinject.h:205
double GetFrequencyMax(void)
Returns the maximum frequency [Hz].
Definition: Oinject.h:151
void SetFrequencyRange(const double aFreqMin, const double aFreqMax)
Sets a new range for : - .
Definition: Oinject.h:101
double phimax
Maximum injection frequency.
Definition: Oinject.h:212
double GetTime(void)
Returns the injection time [s].
Definition: Oinject.h:126
double GetSigmaf(void)
Returns the injection bandwidth .
Definition: Oinject.h:196
double GetAmplitude(void)
Returns the injection amplitude .
Definition: Oinject.h:171
double GetAmplitudeMin(void)
Returns the minimum amplitude .
Definition: Oinject.h:176
double GetAmplitudeMax(void)
Returns the maximum amplitude .
Definition: Oinject.h:181
double phase
Injection phase .
Definition: Oinject.h:220
double GetTimeMin(void)
Returns the minimum time [s].
Definition: Oinject.h:131
double duration
Vector duration [s].
Definition: Oinject.h:196
double sigma_t
Gaussian window width (time).
Definition: Oinject.h:204
double GetQ(void)
Returns the injection Q .
Definition: Oinject.h:156
double GetTimeMax(void)
Returns the maximum time [s].
Definition: Oinject.h:136
double ampmin
Minimum injection amplitude.
Definition: Oinject.h:217
double tau
Injection time .
Definition: Oinject.h:207
double phi
Injection frequency .
Definition: Oinject.h:210
double GetWaveform(const unsigned int aIndex, const unsigned int aSamplingFrequency)
Returns the waveform amplitude for a given time index .
Definition: Oinject.h:72
double Qmax
Maximum injection Q.
Definition: Oinject.h:215
double phimin
Minimum injection frequency.
Definition: Oinject.h:211
double Qmin
Minimum injection Q.
Definition: Oinject.h:214
TRandom3 * randgen
Random generator.
Definition: Oinject.h:201
double Q
Injection Q .
Definition: Oinject.h:213