REST-for-Physics  v2.3
Rare Event Searches ToolKit for Physics
Public Member Functions | Protected Member Functions | Private Attributes
TRestExperimentList Class Reference

Detailed Description

A helper metadata class to create a list of TRestExperiment instances.

Documentation TOBE written


REST-for-Physics - Software for Rare Event Searches Toolkit

History of developments:

2022-December: First implementation of TRestExperimentList Javier Galan

Author
: Javier Galan (javie.nosp@m.r.ga.nosp@m.lan.l.nosp@m.acar.nosp@m.ra@ce.nosp@m.rn.c.nosp@m.h)

Definition at line 30 of file TRestExperimentList.h.

#include <TRestExperimentList.h>

Inheritance diagram for TRestExperimentList:
TRestMetadata

Public Member Functions

 ClassDefOverride (TRestExperimentList, 2)
 
void ExtractExperimentParameterizationNodes ()
 It scans all the experiment signals parametric nodes to build a complete list of nodes used to build a complete sensitivity curve. Some experiments may be sensitivy to a particular node, while others may be sensitivy to another. If more than one experiment is sensitivy to a given node, the sensitivity will be combined later on. More...
 
TRestExperimentGetExperiment (const size_t &n)
 
std::vector< TRestExperiment * > GetExperiments ()
 
size_t GetNumberOfExperiments ()
 
std::vector< Double_t > GetParameterizationNodes ()
 
void Initialize () override
 It will initialize the data frame with the filelist and column names (or observables) that have been defined by the user. More...
 
void PrintMetadata () override
 Prints on screen the information about the metadata members of TRestAxionSolarFlux. More...
 
void PrintParameterizationNodes ()
 
void SetBackground (TRestComponent *comp)
 
void SetExposure (const Double_t &exposure)
 
void SetSignal (TRestComponent *comp)
 
 TRestExperimentList ()
 Default constructor. More...
 
 TRestExperimentList (const char *cfgFileName, const std::string &name)
 Constructor loading data from a config file. More...
 
 ~TRestExperimentList ()
 Default destructor. More...
 

Protected Member Functions

TRestComponentGetComponent (std::string compName)
 
void InitFromConfigFile () override
 It customizes the retrieval of XML data values of this class. More...
 

Private Attributes

TRestComponentfBackground = nullptr
 If not null this will be the common signal used in each experiment. More...
 
std::vector< std::string > fComponentFiles
 A vector with filenames containing the components. More...
 
std::string fComponentPattern = ""
 A fullpath filename pattern helping to initialize the component files vector. More...
 
std::vector< std::string > fDataSetFilenames
 A vector with filenames containing the datasets with experimental data. More...
 
std::string fDataSetPattern = ""
 A fullpath filename pattern helping to initialize the dataset files vector. More...
 
std::vector< TRestExperiment * > fExperiments
 A vector with a list of experiments includes the background components in this model. More...
 
std::string fExperimentsFile = ""
 A file where we define experiment components, exposureTime, and tracking data of each experiment. More...
 
std::vector< std::vector< std::string > > fExperimentsTable
 A table with the experiment file information. More...
 
Double_t fExposureFactor = 0
 The factor used on the exponential exposure time as a function of the experiment number. More...
 
std::string fExposureStrategy = "equal"
 In case an exposure time is given it defines how to assign time to each experiment (equal/ksvz). More...
 
Double_t fExposureTime = 0
 If not zero this will be the common exposure time in micro-seconds (standard REST units) More...
 
std::vector< Double_t > fParameterizationNodes
 The fusioned list of parameterization nodes found at each experiment signal. More...
 
TRestComponentfSignal = nullptr
 If not null this will be the common signal used in each experiment. More...
 
Bool_t fUseAverage = false
 The mock dataset will be generated using the mean counts instead of a real MonteCarlo. More...
 

Additional Inherited Members

Constructor & Destructor Documentation

◆ TRestExperimentList() [1/2]

TRestExperimentList::TRestExperimentList ( const char *  cfgFileName,
const std::string &  name 
)

Constructor loading data from a config file.

If no configuration path is defined using TRestMetadata::SetConfigFilePath the path to the config file must be specified using full path, absolute or relative.

The default behaviour is that the config file must be specified with full path, absolute or relative.

Parameters
cfgFileNameA const char* giving the path to an RML file.
nameThe name of the specific metadata.

Definition at line 68 of file TRestExperimentList.cxx.

◆ TRestExperimentList() [2/2]

TRestExperimentList::TRestExperimentList ( )

Default constructor.

Definition at line 48 of file TRestExperimentList.cxx.

◆ ~TRestExperimentList()

TRestExperimentList::~TRestExperimentList ( )

Default destructor.

Definition at line 53 of file TRestExperimentList.cxx.

Member Function Documentation

◆ ExtractExperimentParameterizationNodes()

void TRestExperimentList::ExtractExperimentParameterizationNodes ( )

It scans all the experiment signals parametric nodes to build a complete list of nodes used to build a complete sensitivity curve. Some experiments may be sensitivy to a particular node, while others may be sensitivy to another. If more than one experiment is sensitivy to a given node, the sensitivity will be combined later on.

Definition at line 268 of file TRestExperimentList.cxx.

◆ GetComponent()

TRestComponent * TRestExperimentList::GetComponent ( std::string  compName)
protected

Definition at line 287 of file TRestExperimentList.cxx.

◆ GetExperiment()

TRestExperiment * TRestExperimentList::GetExperiment ( const size_t &  n)
inline

Definition at line 91 of file TRestExperimentList.h.

◆ GetExperiments()

std::vector< TRestExperiment * > TRestExperimentList::GetExperiments ( )
inline

Definition at line 90 of file TRestExperimentList.h.

◆ GetNumberOfExperiments()

size_t TRestExperimentList::GetNumberOfExperiments ( )
inline

Definition at line 98 of file TRestExperimentList.h.

◆ GetParameterizationNodes()

std::vector< Double_t > TRestExperimentList::GetParameterizationNodes ( )
inline

Definition at line 87 of file TRestExperimentList.h.

◆ InitFromConfigFile()

void TRestExperimentList::InitFromConfigFile ( )
overrideprotectedvirtual

It customizes the retrieval of XML data values of this class.

Reimplemented from TRestMetadata.

Definition at line 82 of file TRestExperimentList.cxx.

◆ Initialize()

void TRestExperimentList::Initialize ( )
overridevirtual

It will initialize the data frame with the filelist and column names (or observables) that have been defined by the user.

Reimplemented from TRestMetadata.

Definition at line 77 of file TRestExperimentList.cxx.

◆ PrintMetadata()

void TRestExperimentList::PrintMetadata ( )
overridevirtual

Prints on screen the information about the metadata members of TRestAxionSolarFlux.

Reimplemented from TRestMetadata.

Definition at line 309 of file TRestExperimentList.cxx.

◆ PrintParameterizationNodes()

void TRestExperimentList::PrintParameterizationNodes ( )

Definition at line 281 of file TRestExperimentList.cxx.

◆ SetBackground()

void TRestExperimentList::SetBackground ( TRestComponent comp)
inline

Definition at line 84 of file TRestExperimentList.h.

◆ SetExposure()

void TRestExperimentList::SetExposure ( const Double_t &  exposure)
inline

Definition at line 82 of file TRestExperimentList.h.

◆ SetSignal()

void TRestExperimentList::SetSignal ( TRestComponent comp)
inline

Definition at line 83 of file TRestExperimentList.h.

Field Documentation

◆ fBackground

TRestComponent* TRestExperimentList::fBackground = nullptr
private

If not null this will be the common signal used in each experiment.

Definition at line 72 of file TRestExperimentList.h.

◆ fComponentFiles

std::vector<std::string> TRestExperimentList::fComponentFiles
private

A vector with filenames containing the components.

Definition at line 36 of file TRestExperimentList.h.

◆ fComponentPattern

std::string TRestExperimentList::fComponentPattern = ""
private

A fullpath filename pattern helping to initialize the component files vector.

Definition at line 33 of file TRestExperimentList.h.

◆ fDataSetFilenames

std::vector<std::string> TRestExperimentList::fDataSetFilenames
private

A vector with filenames containing the datasets with experimental data.

Definition at line 42 of file TRestExperimentList.h.

◆ fDataSetPattern

std::string TRestExperimentList::fDataSetPattern = ""
private

A fullpath filename pattern helping to initialize the dataset files vector.

Definition at line 39 of file TRestExperimentList.h.

◆ fExperiments

std::vector<TRestExperiment*> TRestExperimentList::fExperiments
private

A vector with a list of experiments includes the background components in this model.

Definition at line 51 of file TRestExperimentList.h.

◆ fExperimentsFile

std::string TRestExperimentList::fExperimentsFile = ""
private

A file where we define experiment components, exposureTime, and tracking data of each experiment.

Definition at line 45 of file TRestExperimentList.h.

◆ fExperimentsTable

std::vector<std::vector<std::string> > TRestExperimentList::fExperimentsTable
private

A table with the experiment file information.

Definition at line 48 of file TRestExperimentList.h.

◆ fExposureFactor

Double_t TRestExperimentList::fExposureFactor = 0
private

The factor used on the exponential exposure time as a function of the experiment number.

Definition at line 66 of file TRestExperimentList.h.

◆ fExposureStrategy

std::string TRestExperimentList::fExposureStrategy = "equal"
private

In case an exposure time is given it defines how to assign time to each experiment (equal/ksvz).

Definition at line 63 of file TRestExperimentList.h.

◆ fExposureTime

Double_t TRestExperimentList::fExposureTime = 0
private

If not zero this will be the common exposure time in micro-seconds (standard REST units)

Definition at line 60 of file TRestExperimentList.h.

◆ fParameterizationNodes

std::vector<Double_t> TRestExperimentList::fParameterizationNodes
private

The fusioned list of parameterization nodes found at each experiment signal.

Definition at line 54 of file TRestExperimentList.h.

◆ fSignal

TRestComponent* TRestExperimentList::fSignal = nullptr
private

If not null this will be the common signal used in each experiment.

Definition at line 69 of file TRestExperimentList.h.

◆ fUseAverage

Bool_t TRestExperimentList::fUseAverage = false
private

The mock dataset will be generated using the mean counts instead of a real MonteCarlo.

Definition at line 57 of file TRestExperimentList.h.


The documentation for this class was generated from the following files: