Berkeley Nuclear Data Software
Public Member Functions | Public Attributes | List of all members
STOFAna Class Reference

#include <STOFAna.h>

Inheritance diagram for STOFAna:
Inheritance graph
[legend]
Collaboration diagram for STOFAna:
Collaboration graph
[legend]

Public Member Functions

 STOFAna ()
 
 STOFAna (std::string a_configFile)
 
void readConf (std::string a_configFile)
 this function reads the config file More...
 
std::vector< TH2 * > makeOutgoingTOFVAmpHists (bool a_applyCalib=false, bool a_applyCuts=false)
 
std::vector< TH2 * > makeOutgoingTOFVTargetAmpHists (bool a_applyCalib=false, bool a_applyCuts=false)
 
std::vector< TH2 * > makeIncomingTOFVTargetAmpHists (bool a_applyCalib=false, bool a_applyCuts=false)
 
std::vector< TH2 * > makeEnETOFVTargetAmpHists (bool a_applyCalib=false, bool a_applyCuts=false)
 
std::vector< TH2 * > makeEnITOFVTargetAmpHists (bool a_applyCalib=false, bool a_applyCuts=false)
 
std::vector< TH2 * > makeEnITOFVTargetAmpHistsBG (bool a_applyCalib=false, bool a_applyCuts=false)
 amplitude hists !!!!!!this requires thoght More...
 
std::vector< TH2 * > makeEnITOFVEnETOF (bool a_applyCalib=false, bool a_applyCuts=false)
 
std::vector< TH2 * > makeEffEnVTargetAmpHists (bool a_applyCalib, bool a_applyCuts, bool a_exitTOFBinning=false)
 this function creates a histogram for calculating the efficiency More...
 
std::vector< TH2 * > makeNeutronEneDist (bool a_applyCuts, bool a_exitTOF=false)
 
void makePlotFile (std::string a_outFileName="stofResults.root", bool a_applyCalib=false, bool a_applyCuts=false)
 
void loadIncTOFGammaFlashHist (TH1 *a_histogram)
 
std::vector< TH1 * > getScatterPulseHeight (double a_minET, double a_maxET)
 
std::vector< TH1 * > getTargetPulseHeight (double a_minTOF, double a_maxTOF, bool a_incTOF)
 
void setIsSim (bool a_isSim)
 
void setSmearExitTime (bool a_smearExitTime)
 
void setExitTres (double a_exitTres)
 
void setSmearIncTime (bool a_smearIncTime)
 
void setIncTres (double a_incTres)
 
void setnAmpBins (int a_nAmpBins)
 
void setmaxAmp (double a_maxAmp)
 
void seteTOFMax (double a_eTOFMax)
 
void seteTOFMin (double a_eTOFMin)
 
void setexitTBinWidth (double a_exitTBinWidth)
 
void setSmearLight (bool a_smearLight)
 
void setMaxEn (double a_maxEn)
 
void setMinEn (double a_minEn)
 
void setConfig (STOFConfig a_config)
 
bool getIsSim ()
 
bool getSmearExitTime ()
 
double getExitTres ()
 
bool getSmearIncTime ()
 
double getIncTres ()
 
int getnAmpBins ()
 
double getmaxAmp ()
 
double geteTOFMax ()
 
double geteTOFMin ()
 
double getexitTBinWidth ()
 
bool getSmearLight ()
 
double getMaxEn ()
 
double getMinEn ()
 
TTree * getTree ()
 
STOFEventgetEvent ()
 
CutManagergetCutManager ()
 
void clearHists ()
 
 ~STOFAna ()
 
- Public Member Functions inherited from PostProcBase< STOFEvent >
 PostProcBase ()
 defualt constructor puts class into a working state More...
 
virtual int addFile (string a_filename)
 
virtual int addFilesFromDirectory (string a_dir, string a_ext)
 
virtual int loadEvent (int a_eventNumber)
 loads a specified event into memory More...
 
virtual int fileNotLoaded ()
 tests if a file is loaded and prinst a message if not More...
 
virtual int clearFileState ()
 
virtual std::ostream & printState (std::ostream &a_stream=std::cout)
 
virtual ~PostProcBase ()
 
TChain * getTrees ()
 danger danger, use this if you know what you are doing. More...
 

Public Attributes

std::map< string, bool > m_cutState
 

Additional Inherited Members

- Protected Attributes inherited from PostProcBase< STOFEvent >
TChain * m_trees
 for associating the trees from files More...
 
string m_treeName
 for storing the name of the tree More...
 
string m_branchName
 for storing the name of the branch More...
 
STOFEventm_currentEvent
 for storing the current event More...
 
vector< string > m_loadedFiles
 for storing a list of loaded files More...
 
bool m_hasFile
 flag for wheter a file has been loaded More...
 

Detailed Description

this intent of this class is to manage the analysis of data products relating to the STOF system. The goals are two fold. First, to take the STOFEvent trees generated by the STOFPostProcessing algorithm and accumulate them with cuts to produce derived calibrated histograms. Second, to take the STOFEvent trees generated by STOFSimAna and produce quantities necessary for second order calibrations and for an efficiency calculation

Constructor & Destructor Documentation

◆ STOFAna() [1/2]

STOFAna::STOFAna ( )

default construtor puts the class into a rather uninteresting state it really requires a config file to do anything meaningful

◆ STOFAna() [2/2]

STOFAna::STOFAna ( std::string  a_configFile)

this constuctor puts the class into a working state from the config file perspective, you will still need to add files for processing

Here is the call graph for this function:

◆ ~STOFAna()

STOFAna::~STOFAna ( )
Here is the call graph for this function:

Member Function Documentation

◆ clearHists()

void STOFAna::clearHists ( )
Here is the caller graph for this function:

◆ getCutManager()

CutManager & STOFAna::getCutManager ( )
Here is the caller graph for this function:

◆ geteTOFMax()

double STOFAna::geteTOFMax ( )

◆ geteTOFMin()

double STOFAna::geteTOFMin ( )

◆ getEvent()

STOFEvent * STOFAna::getEvent ( )
Here is the caller graph for this function:

◆ getexitTBinWidth()

double STOFAna::getexitTBinWidth ( )

◆ getExitTres()

double STOFAna::getExitTres ( )

◆ getIncTres()

double STOFAna::getIncTres ( )

◆ getIsSim()

bool STOFAna::getIsSim ( )

◆ getmaxAmp()

double STOFAna::getmaxAmp ( )

◆ getMaxEn()

double STOFAna::getMaxEn ( )

◆ getMinEn()

double STOFAna::getMinEn ( )

◆ getnAmpBins()

int STOFAna::getnAmpBins ( )

◆ getScatterPulseHeight()

std::vector< TH1 * > STOFAna::getScatterPulseHeight ( double  a_minET,
double  a_maxET 
)

this functions accumulates a 1d hist for the scatter pulse height with the given bounds on the exit time of flight for a given scatter ID used for generating sudo-monoenergetic pulse height spectra for recalibration neutron psd gates are also applied

this is marginally broken if we ever use more than one target

Parameters
a_maxETmin exit TOF
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getSmearExitTime()

bool STOFAna::getSmearExitTime ( )

◆ getSmearIncTime()

bool STOFAna::getSmearIncTime ( )

◆ getSmearLight()

bool STOFAna::getSmearLight ( )

◆ getTargetPulseHeight()

std::vector< TH1 * > STOFAna::getTargetPulseHeight ( double  a_minTOF,
double  a_maxTOF,
bool  a_incTOF 
)

this functions accumulates a 1d hist for the target pulse height with the given bounds on the TOF for either a given scatter ID (a_incTOF==0)
or using the incoming TOF (a_incTOF==1) used for generating sudo-monoenergetic pulse height spectra for recalibration neutron psd gates are also applied

this functions accumulates a 1d hist for the target pulse height with the given bounds on the TOF for either a given scatter ID (a_TOFMeas==0)
or using the incoming TOF (a_TOFMeas==1) used for generating sudo-monoenergetic pulse height spectra for recalibration neutron psd gates are also applied

this is marginally broken if we ever use more than one target

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getTree()

TTree * STOFAna::getTree ( )
Here is the caller graph for this function:

◆ loadIncTOFGammaFlashHist()

void STOFAna::loadIncTOFGammaFlashHist ( TH1 *  a_histogram)

this function takes a zero centered histogram representative of the incoming time of flight gamma flash used for smearing the incoming time of flight by the real uncertainty

Here is the caller graph for this function:

◆ makeEffEnVTargetAmpHists()

std::vector< TH2 * > STOFAna::makeEffEnVTargetAmpHists ( bool  a_applyCalib,
bool  a_applyCuts,
bool  a_exitTOFBinning = false 
)

this function creates a histogram for calculating the efficiency

!!!!!!!!!!!!!!!!!!!!HARD CODED TARGET ID !!!!!!!!!!!!!!!!!!!

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeEnETOFVTargetAmpHists()

std::vector< TH2 * > STOFAna::makeEnETOFVTargetAmpHists ( bool  a_applyCalib = false,
bool  a_applyCuts = false 
)

this function accumulates the outgoing time of flight vs amplitude hists

!!!!!!!!!!!!!!!!!!!!HARD CODED TARGET ID !!!!!!!!!!!!!!!!!!!

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeEnITOFVEnETOF()

std::vector< TH2 * > STOFAna::makeEnITOFVEnETOF ( bool  a_applyCalib = false,
bool  a_applyCuts = false 
)

this function accumulates the outgoing time of flight vs amplitude hists

!!!!!!!!!!!!!!!!!!!!HARD CODED TARGET ID !!!!!!!!!!!!!!!!!!!

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeEnITOFVTargetAmpHists()

std::vector< TH2 * > STOFAna::makeEnITOFVTargetAmpHists ( bool  a_applyCalib = false,
bool  a_applyCuts = false 
)

this function accumulates the outgoing time of flight vs amplitude hists

!!!!!!!!!!!!!!!!!!!!HARD CODED TARGET ID !!!!!!!!!!!!!!!!!!!

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeEnITOFVTargetAmpHistsBG()

std::vector< TH2 * > STOFAna::makeEnITOFVTargetAmpHistsBG ( bool  a_applyCalib = false,
bool  a_applyCuts = false 
)

amplitude hists !!!!!!this requires thoght

this function accumulates the outgoing time of flight vs

this function needs a discussion be cautious in use unless you understand the motivation here well

!!!!!!!!!!!!!!!!!!!!HARD CODED TARGET ID !!!!!!!!!!!!!!!!!!!

Here is the call graph for this function:

◆ makeIncomingTOFVTargetAmpHists()

std::vector< TH2 * > STOFAna::makeIncomingTOFVTargetAmpHists ( bool  a_applyCalib = false,
bool  a_applyCuts = false 
)

this function accumulates the outgoing time of flight vs amplitude hists

!!!!!!!!!!!!!!!!!!!!HARD CODED TARGET ID !!!!!!!!!!!!!!!!!!!

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeNeutronEneDist()

std::vector< TH2 * > STOFAna::makeNeutronEneDist ( bool  a_applyCuts,
bool  a_exitTOF = false 
)

this function creates a histogram for calculating the contribution from different incoming neutron energy to a given bin need to use simulation data

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeOutgoingTOFVAmpHists()

std::vector< TH2 * > STOFAna::makeOutgoingTOFVAmpHists ( bool  a_applyCalib = false,
bool  a_applyCuts = false 
)

this function accumulates the outgoing time of flight vs amplitude hists

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makeOutgoingTOFVTargetAmpHists()

std::vector< TH2 * > STOFAna::makeOutgoingTOFVTargetAmpHists ( bool  a_applyCalib = false,
bool  a_applyCuts = false 
)

this function accumulates the outgoing time of flight vs amplitude hists

!!!!!!!!!!!!!!!!!!!!HARD CODED TARGET ID !!!!!!!!!!!!!!!!!!!

Here is the call graph for this function:
Here is the caller graph for this function:

◆ makePlotFile()

void STOFAna::makePlotFile ( std::string  a_outFileName = "stofResults.root",
bool  a_applyCalib = false,
bool  a_applyCuts = false 
)

this function runs all of the plot generating functions above and stores the output in a specified filename

this function accumulates the outgoing time of flight vs amplitude hists

this function accumulates the https://commons.lbl.gov/display/cpp/Vulnerability+Scanning time of flight vs amplitude hists

this function accumulates the outgoing time of flight vs amplitude hists

this function accumulates the outgoing time of flight vs amplitude hists

this function accumulates the outgoing time of flight vs amplitude hists

Here is the call graph for this function:

◆ readConf()

void STOFAna::readConf ( std::string  a_configFile)

this function reads the config file

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setConfig()

void STOFAna::setConfig ( STOFConfig  a_config)
Here is the caller graph for this function:

◆ seteTOFMax()

void STOFAna::seteTOFMax ( double  a_eTOFMax)

◆ seteTOFMin()

void STOFAna::seteTOFMin ( double  a_eTOFMin)

◆ setexitTBinWidth()

void STOFAna::setexitTBinWidth ( double  a_exitTBinWidth)

◆ setExitTres()

void STOFAna::setExitTres ( double  a_exitTres)
Here is the caller graph for this function:

◆ setIncTres()

void STOFAna::setIncTres ( double  a_incTres)
Here is the caller graph for this function:

◆ setIsSim()

void STOFAna::setIsSim ( bool  a_isSim)
Here is the caller graph for this function:

◆ setmaxAmp()

void STOFAna::setmaxAmp ( double  a_maxAmp)
Here is the caller graph for this function:

◆ setMaxEn()

void STOFAna::setMaxEn ( double  a_maxEn)

◆ setMinEn()

void STOFAna::setMinEn ( double  a_minEn)

◆ setnAmpBins()

void STOFAna::setnAmpBins ( int  a_nAmpBins)

◆ setSmearExitTime()

void STOFAna::setSmearExitTime ( bool  a_smearExitTime)
Here is the caller graph for this function:

◆ setSmearIncTime()

void STOFAna::setSmearIncTime ( bool  a_smearIncTime)
Here is the caller graph for this function:

◆ setSmearLight()

void STOFAna::setSmearLight ( bool  a_smearLight)
Here is the caller graph for this function:

Member Data Documentation

◆ m_cutState

std::map<string, bool> STOFAna::m_cutState

this map reflects the possible cuts that can be applied to the data they are inactive by default. Currenty managed cuts are targetPSDNeutron scatterPSDNeutron targetPSDGamma scatterPSDGamma minScatterLight minTargetLight matchWindow for the sim only zCuts


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