void TaskE::fillTOTnoCoin(int delta_ID, int thr,const JPetHit& hit,char side) { int n_slots_in_half_layer = fBarrelMap.getNumberOfSlots(hit.getBarrelSlot().getLayer()) / 2; // if( delta_ID != n_slots_in_half_layer )return; // skip non-opposite coincidences double tot = hit.getSignalA().getRecoSignal().getRawSignal().getTOTsVsThresholdNumber().at(thr); char* histo_name; switch(side){ case 'A': histo_name = Form("TOT_layer_%d_slot_%d_thr%d_side_A_noCoin", fBarrelMap.getLayerNumber(hit.getBarrelSlot().getLayer()), hit.getBarrelSlot().getID(), thr); getStatistics().getHisto1D(histo_name).Fill(tot/1000.); break; case 'B': histo_name = Form("TOT_layer_%d_slot_%d_thr%d_side_B", fBarrelMap.getLayerNumber(hit.getBarrelSlot().getLayer()), 0, thr); getStatistics().getHisto1D(histo_name).Fill(tot/1000.); break; } }
void TaskE::fillTOTvsTOThisto(int delta_ID, int thr, const JPetHit & hit1, const JPetHit & hit2){ int n_slots_in_half_layer = fBarrelMap.getNumberOfSlots(hit1.getBarrelSlot().getLayer()) / 2; if( delta_ID != n_slots_in_half_layer )return; // skip non-opposite coincidences double totA1 = hit1.getSignalA().getRecoSignal().getRawSignal().getTOTsVsThresholdNumber().at(thr); double totB1 = hit1.getSignalB().getRecoSignal().getRawSignal().getTOTsVsThresholdNumber().at(thr); double totA2 = hit2.getSignalA().getRecoSignal().getRawSignal().getTOTsVsThresholdNumber().at(thr); double totB2 = hit2.getSignalB().getRecoSignal().getRawSignal().getTOTsVsThresholdNumber().at(thr); char * histo_name; // fill side A histo_name = Form("TOT_vs_TOT_layer_%d_thr_%d_side_A", fBarrelMap.getLayerNumber(hit1.getBarrelSlot().getLayer()), thr); getStatistics().getHisto2D(histo_name).Fill(totA1/1000., totA2/1000.); // fill side B histo_name = Form("TOT_vs_TOT_layer_%d_thr_%d_side_B", fBarrelMap.getLayerNumber(hit1.getBarrelSlot().getLayer()), thr); getStatistics().getHisto2D(histo_name).Fill(totB1/1000., totB2/1000.); }
void TaskE::fillDeltaT(int delta_ID, int thr,const JPetHit& hit) { // int n_slots_in_half_layer = fBarrelMap.getNumberOfSlots(hit.getBarrelSlot().getLayer()) / 2; // if( delta_ID != n_slots_in_half_layer )return; // skip non-opposite coincidences double tot = hit.getSignalA().getRecoSignal().getRawSignal().getTOTsVsThresholdNumber().at(thr)/1000.0; for(unsigned int j = 0; j < TOTcuts.size(); j++){ if( !( tot > TOTcuts[j] ) ) continue; double timediff = JPetHitUtils::getTimeDiffAtThr(hit, thr) / 1000.; char* histo_name; histo_name = Form("#DeltaT_layer_%d_slot_%d_thr%d_cutOn%f", fBarrelMap.getLayerNumber(hit.getBarrelSlot().getLayer()), hit.getBarrelSlot().getID(), thr, TOTcuts[j]); getStatistics().getHisto1D(histo_name).Fill( timediff ); } }
void TaskE::fillDeltaTvsTOT( int thr, const JPetHit& hit) { double tot = hit.getSignalA().getRecoSignal().getRawSignal().getTOTsVsThresholdNumber().at(thr) / 1000.0; double timediff = JPetHitUtils::getTimeDiffAtThr(hit, thr) / 1000.0; char* histo_name = Form("#DeltaT_vs_TOT_layer_%d_slot_%d_thr%d_side_A_noCoin", fBarrelMap.getLayerNumber(hit.getBarrelSlot().getLayer()), hit.getBarrelSlot().getID(), thr); getStatistics().getHisto2D(histo_name).Fill(tot, timediff); histo_name = Form("#DeltaT_vs_1/TOT_layer_%d_slot_%d_thr%d_side_A_noCoin", fBarrelMap.getLayerNumber(hit.getBarrelSlot().getLayer()), hit.getBarrelSlot().getID(), thr); getStatistics().getHisto2D(histo_name).Fill(1.0/tot, timediff); }