Berkeley Nuclear Data Software
|
#include <STOFAna.h>
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 () |
STOFEvent * | getEvent () |
CutManager & | getCutManager () |
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... | |
STOFEvent * | m_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... | |
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
STOFAna::STOFAna | ( | ) |
default construtor puts the class into a rather uninteresting state it really requires a config file to do anything meaningful
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
STOFAna::~STOFAna | ( | ) |
void STOFAna::clearHists | ( | ) |
CutManager & STOFAna::getCutManager | ( | ) |
double STOFAna::geteTOFMax | ( | ) |
double STOFAna::geteTOFMin | ( | ) |
STOFEvent * STOFAna::getEvent | ( | ) |
double STOFAna::getexitTBinWidth | ( | ) |
double STOFAna::getExitTres | ( | ) |
double STOFAna::getIncTres | ( | ) |
bool STOFAna::getIsSim | ( | ) |
double STOFAna::getmaxAmp | ( | ) |
double STOFAna::getMaxEn | ( | ) |
double STOFAna::getMinEn | ( | ) |
int STOFAna::getnAmpBins | ( | ) |
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
a_maxET | min exit TOF |
bool STOFAna::getSmearExitTime | ( | ) |
bool STOFAna::getSmearIncTime | ( | ) |
bool STOFAna::getSmearLight | ( | ) |
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
TTree * STOFAna::getTree | ( | ) |
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
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 !!!!!!!!!!!!!!!!!!!
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 !!!!!!!!!!!!!!!!!!!
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 !!!!!!!!!!!!!!!!!!!
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 !!!!!!!!!!!!!!!!!!!
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 !!!!!!!!!!!!!!!!!!!
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 !!!!!!!!!!!!!!!!!!!
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
std::vector< TH2 * > STOFAna::makeOutgoingTOFVAmpHists | ( | bool | a_applyCalib = false , |
bool | a_applyCuts = false |
||
) |
this function accumulates the outgoing time of flight vs amplitude hists
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 !!!!!!!!!!!!!!!!!!!
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
void STOFAna::readConf | ( | std::string | a_configFile | ) |
this function reads the config file
void STOFAna::setConfig | ( | STOFConfig | a_config | ) |
void STOFAna::seteTOFMax | ( | double | a_eTOFMax | ) |
void STOFAna::seteTOFMin | ( | double | a_eTOFMin | ) |
void STOFAna::setexitTBinWidth | ( | double | a_exitTBinWidth | ) |
void STOFAna::setExitTres | ( | double | a_exitTres | ) |
void STOFAna::setIncTres | ( | double | a_incTres | ) |
void STOFAna::setIsSim | ( | bool | a_isSim | ) |
void STOFAna::setmaxAmp | ( | double | a_maxAmp | ) |
void STOFAna::setMaxEn | ( | double | a_maxEn | ) |
void STOFAna::setMinEn | ( | double | a_minEn | ) |
void STOFAna::setnAmpBins | ( | int | a_nAmpBins | ) |
void STOFAna::setSmearExitTime | ( | bool | a_smearExitTime | ) |
void STOFAna::setSmearIncTime | ( | bool | a_smearIncTime | ) |
void STOFAna::setSmearLight | ( | bool | a_smearLight | ) |
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