NCFS-Pack
A generic (astro)particle physics analysis framework
 
Loading...
Searching...
No Matches
RnoMonitor.h
Go to the documentation of this file.
1#ifndef RnoMonitor_h
2#define RnoMonitor_h
3
4// Copyright(c) 2022, RNO-G Experiment at Summit Station, All rights reserved.
5// See cxx source for full Copyright notice.
6
7#include "NcJob.h"
8#include "NcAstrolab.h"
9#include "NcBlocks.h"
10#include "NcDSP.h"
11
12#include "RnoEvent.h"
13
15
16class RnoMonitor : public TTask
17{
18 public :
19 RnoMonitor(const char* name="RnoMonitor",const char* title="RNO-G data monitoring"); // Constructor
20 virtual ~RnoMonitor(); // Destructor
21 virtual void Exec(Option_t* opt); // The monitoring procedures
22 void SetDevices(TString devclass,Int_t ista=-1,Int_t ichan=-1); // Specify the devices to be monitored
23 void SetDeviceSample(Int_t j); // Specify the sample to be used from the stored device samples
24 void SetSampleVariable(Int_t i,TString f="-"); // Specify the (function of the) sample variable to be used
25 void SetSampleVariable(TString name,TString f="-"); // Specify the (function of the) sample variable to be used
26 void DefineStatistic(TString mode); // Select the statistic for monitoring
27 void SetBaselineMode(Int_t mode,Int_t n=128,Double_t nrms=1.2,Double_t fpr=0.1); // Select the baseline (correction) mode
28 void SetBandFilters(TArray& freqs,Int_t n); // Specify the frequency bands for digital filtering
29 void SetNbins24(Int_t n); // Set the number of bins for the 24 hour monitoring histograms
30 void ListHistograms() const; // Provide a list of all the stored histograms
31 void WriteHistograms(TString filename); // Write all stored histograms to a ROOT output file
32
33 protected :
34 RnoEvent* fEvt; // Pointer to the current event structure
35 Double_t fOffset; // The RNO-G location time offset in fractional hours w.r.t. Greenwich
36 TString fDevClass; // The classname of the devices to be analysed
37 Int_t fSta; // The station number to be analysed (<0 means all stations)
38 Int_t fChan; // The channel number to be analysed (<0 means all channels)
39 Int_t fDevSample; // Identifier of the sample to be used from the stored device samples
40 Int_t fVarIndex; // Index of the sample variable to be used
41 TString fVarName; // Name of the sample variable to be used
42 TF1* fVarFunc; // The function to be used for the sample variable
43 Int_t fNbins24; // The number of bins for the 24 hour monitoring histograms
44 TObjArray fHistos; // Storage array for the produced histograms
45 NcSample fValues; // NcSample object to obtain statisics of function values
46 TString fAvMode; // The sampling averaging mode
47 Int_t fBasemode; // The baseline (correction) mode
48 Int_t fBlocksize; // Number of samples to form the fixed baseline blocksize
49 NcBlocks fBB; // The Bayesian Block facility
50 Double_t fNrms; // Error scale factor to tailor the fluctuation sensitivity for the Bayesian Block analysis
51 Double_t fFPR; // False Positive Rate for the Bayesian Block analysis
52 TGraph fGin; // The input graph of the time trace for Bayesian Block analysis
53 TH1F fHblock; // The produced histogram with the Bayesian Blocks of the time trace
54 TGraph fGout; // The output graph representing the Bayesian Block subtracted time trace
55 NcDSP fDSP; // The Digital Signal Processing facility
56 TArrayD fBands; // The array holding the frequency specifications for the MultiBand filter
57 Int_t fNkernel; // The number of points for each band filter kernel
58 Bool_t fFirst; // Flag to indicate first pass through the processor
59
60 ClassDef(RnoMonitor,4) // TTask derived class to monitor RNO-G data over certain time periods.
61};
62#endif
(Bayesian) Block treatment of sequential data.
Definition NcBlocks.h:17
Various Digital Signal Processing (DSP) operations for (sequential) data samples.
Definition NcDSP.h:21
Sampling and statistics tools for various multi-dimensional data samples.
Definition NcSample.h:28
Handling of RNO-G event data.
Definition RnoEvent.h:14
TString fAvMode
Definition RnoMonitor.h:46
Double_t fFPR
Definition RnoMonitor.h:51
TObjArray fHistos
Definition RnoMonitor.h:44
Int_t fBasemode
Definition RnoMonitor.h:47
void SetBaselineMode(Int_t mode, Int_t n=128, Double_t nrms=1.2, Double_t fpr=0.1)
virtual void Exec(Option_t *opt)
NcDSP fDSP
Definition RnoMonitor.h:55
Int_t fChan
Definition RnoMonitor.h:38
TString fVarName
Definition RnoMonitor.h:41
NcBlocks fBB
Definition RnoMonitor.h:49
void SetDeviceSample(Int_t j)
NcSample fValues
Definition RnoMonitor.h:45
void SetNbins24(Int_t n)
Bool_t fFirst
Definition RnoMonitor.h:58
void SetDevices(TString devclass, Int_t ista=-1, Int_t ichan=-1)
void SetSampleVariable(Int_t i, TString f="-")
virtual ~RnoMonitor()
void SetBandFilters(TArray &freqs, Int_t n)
Int_t fBlocksize
Definition RnoMonitor.h:48
TF1 * fVarFunc
Definition RnoMonitor.h:42
void ListHistograms() const
Int_t fNkernel
Definition RnoMonitor.h:57
TGraph fGin
Definition RnoMonitor.h:52
Int_t fNbins24
Definition RnoMonitor.h:43
Double_t fOffset
Definition RnoMonitor.h:35
TH1F fHblock
Definition RnoMonitor.h:53
Int_t fSta
Definition RnoMonitor.h:37
void WriteHistograms(TString filename)
Double_t fNrms
Definition RnoMonitor.h:50
RnoEvent * fEvt
Definition RnoMonitor.h:34
Int_t fVarIndex
Definition RnoMonitor.h:40
RnoMonitor(const char *name="RnoMonitor", const char *title="RNO-G data monitoring")
Int_t fDevSample
Definition RnoMonitor.h:39
TString fDevClass
Definition RnoMonitor.h:36
TArrayD fBands
Definition RnoMonitor.h:56
void DefineStatistic(TString mode)
TGraph fGout
Definition RnoMonitor.h:54