Berkeley Nuclear Data Software
|
#include <TTOFAna.h>
Public Member Functions | |
TTOFAna () | |
TTOFAna (std::string a_configFile) | |
void | buildThetaEstimationPlots (std::string a_outFile="detThetatHist.root", double a_startLight=1.4, double a_stopLight=14, double a_step=0.8) |
void | testTransform () |
void | addGraphicalPIDCuts (string a_cutFile) |
vector< TH2F * > | buildRotatedPIDPlot (int a_intP1, int a_intP2, int a_intP3, int a_intP4, double a_lightThreshold=2.0, double a_maxLight=10.0, double a_theta=-18.3) |
double | calcFOM (TH2F *a_histX1, TH2F *a_histX2) |
void | plotFOMVsEner (TH2F *a_hist) |
void | getPIDSlice (double a_eLow, double a_eHigh) |
double | fitPIDSlice (double a_ener, double a_mean1=-.038, double a_mean2=-.03, double a_amp1=100, double a_amp2=100, double a_sig1=.001, double a_sig2=.001) |
void | makeFOMVsLight () |
void | procFileToCLYCTOTWFTree (std::string a_outFileName) |
std::vector< TH2F * > | buildResponseFunction (double a_deltaT=4.) |
void | testUnfoldingWithReg (TH2F *a_response, TH1F *a_lightYield, TH1F *a_guessFlux) |
![]() | |
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 | |
TH2F * | m_pidVsLight |
TH1D * | m_currLightSlice |
std::map< double, vector< double > > | m_fomFits |
std::map< double, Eigen::MatrixXf > | m_fomFitCovs |
std::map< string, bool > | m_cutState |
Additional Inherited Members | |
![]() | |
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... | |
TTOFEvent * | 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 a TTOF(tagged time of flight) system. The goals are two fold. First, to take the TTOFEvent trees generated by the TTOFPostProcessing algorithm and accumulate them with cuts to produce derived calibrated histograms. Second, to take the TTOFEvent trees generated by TTOFSimAna and produce quantities necessary for second order calibrations and for an efficiency calculation
TTOFAna::TTOFAna | ( | ) |
default construtor puts the class into a rather uninteresting state it really requires a config file to do anything meaningful this may get moved to private as a result
TTOFAna::TTOFAna | ( | 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
void TTOFAna::addGraphicalPIDCuts | ( | string | a_cutFile | ) |
std::vector< TH2F * > TTOFAna::buildResponseFunction | ( | double | a_deltaT = 4. | ) |
vector< TH2F * > TTOFAna::buildRotatedPIDPlot | ( | int | a_intP1, |
int | a_intP2, | ||
int | a_intP3, | ||
int | a_intP4, | ||
double | a_lightThreshold = 2.0 , |
||
double | a_maxLight = 10.0 , |
||
double | a_theta = -18.3 |
||
) |
sample we start the integrations from
getting the max peak amplitude
getting the sample corresponding to max amplitude
void TTOFAna::buildThetaEstimationPlots | ( | std::string | a_outFile = "detThetatHist.root" , |
double | a_startLight = 1.4 , |
||
double | a_stopLight = 14 , |
||
double | a_step = 0.8 |
||
) |
this function builds histograms that are target light segments of pid plots used to determing the mixing ratios for shape variables !!!!!!!!!!hard coded cuts watchout!!!!!!!!!!!!!
this function builds histograms that are target light segments of pid plots used to determing the mixing ratios for shape variables
double TTOFAna::calcFOM | ( | TH2F * | a_histX1, |
TH2F * | a_histX2 | ||
) |
double TTOFAna::fitPIDSlice | ( | double | a_ener, |
double | a_mean1 = -.038 , |
||
double | a_mean2 = -.03 , |
||
double | a_amp1 = 100 , |
||
double | a_amp2 = 100 , |
||
double | a_sig1 = .001 , |
||
double | a_sig2 = .001 |
||
) |
void TTOFAna::getPIDSlice | ( | double | a_eLow, |
double | a_eHigh | ||
) |
void TTOFAna::makeFOMVsLight | ( | ) |
void TTOFAna::plotFOMVsEner | ( | TH2F * | a_hist | ) |
void TTOFAna::procFileToCLYCTOTWFTree | ( | std::string | a_outFileName | ) |
void TTOFAna::testTransform | ( | ) |
this is junk code to see if the above derived transform is working
this function builds histograms that are target light segments of pid plots used to determing the mixing ratios for shape variables
void TTOFAna::testUnfoldingWithReg | ( | TH2F * | a_response, |
TH1F * | a_lightYield, | ||
TH1F * | a_guessFlux | ||
) |
Unfolds light yield spectrum using a 2nd derivative based regularization with GCV to choose the regularization parameter a_response -> neutron energy X light yield requires binning for light yield and response to be the same guess flux is not used in calculation, only as a visual comparison for unfolded spectrum also does direct inversion using LU-decomposition of response
TH1D* TTOFAna::m_currLightSlice |
std::map<string, bool> TTOFAna::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 targetPSDNeutron (2D cut) startPSDNeutron (2D cut) targetPSDGamma (2D cut) startPSDGamma (2D cut) minStartLight targetLight coinTOF neutronEnergy targLightVsCoinTOF (2D cut)
std::map<double, Eigen::MatrixXf> TTOFAna::m_fomFitCovs |
std::map<double, vector<double> > TTOFAna::m_fomFits |
TH2F* TTOFAna::m_pidVsLight |