|
||||||||||||
|
Definition at line 258 of file NueStandard.cxx. References NueRecord::ann, TreePID::fCutPID, MCNNVars::fracCCy, NueRecord::mcnnv, MCNNVars::meanfracQmatched, Ann::pid_30inp, Ann::pid_6inp, SubShowerVar::pid_daikon, NueRecord::subshowervars, and NueRecord::treepid. Referenced by NueSystematic::DoPIDSkew(), NueModule::PassesBlindingCuts(), and PassesPIDSelection(). 00259 {
00260 double retval = -9999;
00261 float var1;
00262
00263 switch(sel) {
00264 case Selection::kCuts: retval = nr->treepid.fCutPID; break;
00265 case Selection::kANN6: retval = nr->ann.pid_6inp; break;
00266 case Selection::kANN30: retval = nr->ann.pid_30inp; break;
00267 case Selection::kSSPID: retval = nr->subshowervars.pid_daikon; break;
00268 case Selection::kMCNN:
00269 var1 = nr->mcnnv.meanfracQmatched;
00270 if(var1 <= 0.8 && nr->mcnnv.fracCCy != -1) retval = -0.5;
00271 else retval = nr->mcnnv.fracCCy; break;
00272 default: break;
00273 }
00274
00275 return retval;
00276 }
|
|
||||||||||||
|
Definition at line 391 of file NueStandard.cxx. 00392 {
00393
00394 double w=0.;
00395 double p=0.;
00396 for(unsigned int i=0;i<weights.size();i++){
00397 w+=weights[i]*pots[i];
00398 p+=pots[i];
00399 }
00400
00401 if(p==0){
00402 cout<<"Total pots is set to zero, can not compute a exposure weighted average beam weight. Returning 1"<<endl;
00403 return 1;
00404 }
00405
00406 return w/p;
00407 }
|
|
||||||||||||
|
Definition at line 354 of file NueStandard.cxx. References NueRecord::fluxweights, VldContext::GetDetector(), RecRecordImp< T >::GetHeader(), RecHeader::GetVldContext(), and NueFluxWeights::RPtotbeamweight. 00355 {
00356
00357
00358 std::vector<double> pots;
00359
00360 Detector::Detector_t det = nr->GetHeader().GetVldContext().GetDetector();
00361
00362 if(det==Detector::kNear){
00363 if(ismrcc){
00364 for(int i=0;i<NRUNPERIODS;i++){
00365 pots.push_back(pot_ndmrcc[i]);
00366 }
00367 }
00368 else{
00369 for(int i=0;i<NRUNPERIODS;i++){
00370 pots.push_back(pot_nd[i]);
00371 }
00372 }
00373 }
00374 else{
00375 if(ismrcc){
00376 for(int i=0;i<NRUNPERIODS;i++){
00377 pots.push_back(pot_fdmrcc[i]);
00378 }
00379 }
00380 else{
00381 for(int i=0;i<NRUNPERIODS;i++){
00382 pots.push_back(pot_fd[i]);
00383 }
00384 }
00385 }
00386
00387 double weight = GetRPWBeamWeight(nr->fluxweights.RPtotbeamweight,pots);
00388 return weight;
00389 }
|
|
|
Definition at line 20 of file NueStandard.cxx. References VldContext::GetDetector(), RecRecordImp< T >::GetHeader(), VldContext::GetSimFlag(), RecHeader::GetVldContext(), NueConvention::IsInsideFarFiducial_Nue_Standard(), NueConvention::IsInsideNearFiducial_Nue_Standard(), NueRecord::srevent, ANtpEventInfo::vtxX, ANtpEventInfo::vtxY, and ANtpEventInfo::vtxZ. Referenced by PassesSelection(). 00021 {
00022 float x = nr->srevent.vtxX;
00023 float y = nr->srevent.vtxY;
00024 float z = nr->srevent.vtxZ;
00025
00026 DetectorType::Detector_t fDet;
00027 fDet = nr->GetHeader().GetVldContext().GetDetector();
00028 if(fDet != DetectorType::kFar && fDet != DetectorType::kNear) return false;
00029
00030 SimFlag::SimFlag_t sim = nr->GetHeader().GetVldContext().GetSimFlag();
00031 bool isMC = (sim == SimFlag::kMC);
00032 int retval = 0;
00033
00034 if(fDet == DetectorType::kFar)
00035 retval = NueConvention::IsInsideFarFiducial_Nue_Standard(x,y,z, isMC);
00036
00037 if(fDet == DetectorType::kNear)
00038 retval = NueConvention::IsInsideNearFiducial_Nue_Standard(x,y,z, isMC);
00039
00040 return (retval == 1);
00041 }
|
|
|
Definition at line 335 of file NueStandard.cxx. References AnalysisInfoNue::abCCPID, NueRecord::anainfo, ANtpTrackInfoNue::deltaUVVtx, ANtpTrackInfo::endPlaneU, ANtpTrackInfo::endPlaneV, ANtpTrackInfo::passedFit, NueRecord::srevent, NueRecord::srtrack, and ANtpEventInfo::tracks. Referenced by NueExtrapolationJB::GetPrediction(), NueExtrapolationJB::MakeDataHistograms(), PassesSelection(), and NueExtrapolationJB::PrepareExtrapHistograms(). 00336 {
00337 int ntrack = nr->srevent.tracks;
00338 int pass = nr->srtrack.passedFit;
00339 int endPlaneU = nr->srtrack.endPlaneU;
00340 int endPlaneV = nr->srtrack.endPlaneV;
00341 int deltaUVVtx = nr->srtrack.deltaUVVtx;
00342
00343 if(ntrack < 1){ pass = 0; endPlaneU = endPlaneV = deltaUVVtx = 300; }
00344
00345 bool trackPass = (pass == 1) ||
00346 (deltaUVVtx <= 5 && TMath::Abs(endPlaneU - endPlaneV) <= 40
00347 && endPlaneU < 270 && endPlaneV < 270);
00348
00349
00350 return (ntrack > 0) && trackPass && nr->anainfo.abCCPID > 0.85;
00351 }
|
|
|
||||||||||||||||||||||||
|
Definition at line 84 of file NueStandard.cxx. Referenced by PassesDataQuality(). 00086 {
00087 if(li == -1 && rc == 0 && dpfddq == 1
00088 && (tmin - spillt) > -20e-6 && (tmin - spillt) < 30e-6)
00089 return true;
00090
00091 return false;
00092 }
|
|
|
Definition at line 135 of file NueStandard.cxx. 00136 {
00137 return (energy < 8.0);
00138 }
|
|
|
Definition at line 129 of file NueStandard.cxx. References ANtpEventInfoNue::phNueGeV, and NueRecord::srevent. Referenced by PassesPreSelection(). 00130 {
00131 float energy = nr->srevent.phNueGeV;
00132 return PassesHighEnergyCut(energy);
00133 }
|
|
|
Definition at line 124 of file NueStandard.cxx. 00125 {
00126 return (energy > 1.0);
00127 }
|
|
|
Definition at line 118 of file NueStandard.cxx. References ANtpEventInfoNue::phNueGeV, and NueRecord::srevent. Referenced by PassesNonHEPreSelection(). 00119 {
00120 float energy = nr->srevent.phNueGeV;
00121 return PassesLowEnergyCut(energy);
00122 }
|
|
|
Definition at line 184 of file NueStandard.cxx. References VldContext::GetDetector(), RecRecordImp< T >::GetHeader(), VldContext::GetSimFlag(), RecHeader::GetVldContext(), NueConvention::IsInsideNearFiducial_MRE_Standard(), NueRecord::mri, MuonRemovalInfo::vtxx, MuonRemovalInfo::vtxy, and MuonRemovalInfo::vtxz. Referenced by PassesMREFiducial(), and PassesSelection(). 00185 {
00186 float x = nr->mri.vtxx;
00187 float y = nr->mri.vtxy;
00188 float z = nr->mri.vtxz;
00189
00190 DetectorType::Detector_t fDet;
00191 fDet = nr->GetHeader().GetVldContext().GetDetector();
00192 if(fDet != DetectorType::kNear) return false;
00193 SimFlag::SimFlag_t sim = nr->GetHeader().GetVldContext().GetSimFlag();
00194 bool isMC = (sim == SimFlag::kMC);
00195 int retval = 0;
00196
00197 if(fDet == DetectorType::kFar) retval = 0;
00198
00199 if(fDet == DetectorType::kNear)
00200 retval = NueConvention::IsInsideNearFiducial_MRE_Standard(x,y,z, isMC);
00201
00202 return (retval == 1);
00203 }
|
|
||||||||||||||||
|
Definition at line 214 of file NueStandard.cxx. 00215 {
00216 //currently assumes DP-PID
00217 bool good = true;
00218 good = good && (bestComp > -10);
00219 good = good && (fitp == 1);
00220 good = good && (pid > -0.1);
00221
00222 return good;
00223 }
|
|
|
Definition at line 205 of file NueStandard.cxx. References MuonRemovalInfo::best_complete, MuonRemovalInfo::fitp, NueRecord::mri, and MuonRemovalInfo::orig_cc_pid. Referenced by PassesMREPreSelection(), and PassesSelection(). 00206 {
00207 double pid = nr->mri.orig_cc_pid;
00208 int fitp = nr->mri.fitp;
00209 float bestC = nr->mri.best_complete;
00210
00211 return NueStandard::PassesMRCCPreSelection(bestC, fitp, pid);
00212 }
|
|
|
Definition at line 225 of file NueStandard.cxx. References PassesMRCCFiducial(). Referenced by Trimmer::EvaluateCuts(). 00226 {
00227 return NueStandard::PassesMRCCFiducial(nr);
00228 }
|
|
||||||||||||||||
|
Definition at line 235 of file NueStandard.cxx. References PassesMRCCPreSelection(). 00236 {
00237 return NueStandard::PassesMRCCPreSelection(bestC, fitp, pid);
00238 }
|
|
|
Definition at line 230 of file NueStandard.cxx. References PassesMRCCPreSelection(). Referenced by Trimmer::EvaluateCuts(). 00231 {
00232 return NueStandard::PassesMRCCPreSelection(nr);
00233 }
|
|
||||||||||||||||
|
Definition at line 74 of file NueStandard.cxx. Referenced by PassesDataQuality(). 00075 {
00076 //Assumes it is taking:
00077 // nr->bmon.goodBeamMon, nr->srevent.coilCurrent, nr->srevent.spillType
00078 if(gbm == 1 && cc < -1000.0 && st != 3)
00079 return true;
00080
00081 return false;
00082 }
|
|
||||||||||||||||
|
Definition at line 163 of file NueStandard.cxx. References PassesLowEnergyCut(), and PassesPreSelectionTrackCuts(). 00164 {
00165 bool temp = PassesPreSelectionTrackCuts(trkplane, tlp);
00166 temp = temp && PassesLowEnergyCut(energy);
00167 return temp;
00168 }
|
|
|
Definition at line 156 of file NueStandard.cxx. References PassesLowEnergyCut(), and PassesPreSelectionTrackCuts(). Referenced by Trimmer::EvaluateCuts(), and PassesPreSelection(). 00157 {
00158 bool temp = PassesPreSelectionTrackCuts(nr);
00159 temp = temp && PassesLowEnergyCut(nr);
00160
00161 return temp;
00162 }
|
|
||||||||||||
|
Definition at line 278 of file NueStandard.cxx. References GetPIDValue(). Referenced by NueExtrapolationJB::MakeDataHistograms(), PassesSelection(), and NueExtrapolationJB::PrepareExtrapHistograms(). 00279 {
00280 bool pass = false;
00281 double val = GetPIDValue(nr, sel);
00282
00283 switch(sel) {
00284 case Selection::kCuts: pass = (int(val) == 1); break;
00285 case Selection::kANN6: pass = val > 0.5; break;
00286 case Selection::kANN30: pass = val > 0.5; break;
00287 case Selection::kSSPID: pass = val > 0.5; break;
00288 case Selection::kMCNN: pass = val > 0.4; break;
00289 default: break;
00290 }
00291
00292 return pass;
00293 }
|
|
||||||||||||||||
|
Definition at line 149 of file NueStandard.cxx. References PassesHighEnergyCut(), and PassesNonHEPreSelection(). 00150 {
00151 bool temp = PassesNonHEPreSelection(trkplane, tlp, energy);
00152 temp = temp && PassesHighEnergyCut(energy);
00153 return temp;
00154 }
|
|
|
Definition at line 141 of file NueStandard.cxx. References PassesHighEnergyCut(), and PassesNonHEPreSelection(). Referenced by NueExtrapolationJB::MakeDataHistograms(), PassesSelection(), and NueExtrapolationJB::PrepareExtrapHistograms(). 00142 {
00143 bool temp = PassesNonHEPreSelection(nr);
00144 temp = temp && PassesHighEnergyCut(nr);
00145
00146 return temp;
00147 }
|
|
||||||||||||
|
Definition at line 177 of file NueStandard.cxx. References PassesTrackLikePlaneCut(), and PassesTrackPlaneCut(). 00178 {
00179 bool temp = PassesTrackPlaneCut(trkplane);
00180 temp = temp && PassesTrackLikePlaneCut(tlp);
00181 return temp;
00182 }
|
|
|
Definition at line 170 of file NueStandard.cxx. References PassesTrackLikePlaneCut(), and PassesTrackPlaneCut(). Referenced by PassesNonHEPreSelection(). 00171 {
00172 bool temp = PassesTrackPlaneCut(nr);
00173 temp = temp && PassesTrackLikePlaneCut(nr);
00174 return temp;
00175 }
|
|
||||||||||||
|
Definition at line 296 of file NueStandard.cxx. References NueHeader::FoundMR(), RecRecordImp< T >::GetHeader(), infid(), IsInFid(), PassesCCSelection(), PassesDataQuality(), PassesMRCCFiducial(), PassesMRCCPreSelection(), PassesPIDSelection(), and PassesPreSelection(). Referenced by Trimmer::EvaluateCuts(), and NueExtrapHelper::PassCuts(). 00297 {
00298 bool pass = false;
00299
00300 bool dq = NueStandard::PassesDataQuality(nr);
00301 bool infid = NueStandard::IsInFid(nr) && dq;
00302 bool presel = dq && infid && NueStandard::PassesPreSelection(nr);
00303 bool pid = NueStandard::PassesPIDSelection(nr,sel);
00304
00305 bool isMR = nr->GetHeader().FoundMR();
00306
00307 if(isMR){
00308 bool mrfid = PassesMRCCFiducial(nr);
00309 bool mrps = PassesMRCCPreSelection(nr);
00310
00311 infid = infid && mrfid && mrps;
00312 }
00313
00314 switch(sel) {
00315 case Selection::kNone: pass = true; break;
00316 case Selection::kDataQual: pass = dq; break;
00317 case Selection::kFid: pass = infid; break;
00318 case Selection::kPre: pass = presel; break;
00319 case Selection::kCuts: pass = presel && pid; break;
00320 case Selection::kANN6: pass = presel && pid; break;
00321 case Selection::kANN30: pass = presel && pid; break;
00322 case Selection::kSSPID: pass = presel && pid; break;
00323 case Selection::kMCNN: pass = presel && pid; break;
00324 case Selection::kMDA: pass = presel && false; break;
00325 case Selection::kBDT: pass = presel && false; break;
00326 case Selection::kKNue: pass = presel && false; break;
00327 case Selection::kCC: pass = infid &&
00328 NueStandard::PassesCCSelection(nr); break;
00329 default: break;
00330 }
00331
00332 return pass;
00333 }
|
|
||||||||||||||||
|
Definition at line 249 of file NueStandard.cxx. 00250 {
00251 bool good = true;
00252 good = good && (trkplane < 28);
00253 good = good && (tlp < 18);
00254 good = good && (energy > 0.5 && energy < 10);
00255 return good;
00256 }
|
|
|
Definition at line 240 of file NueStandard.cxx. References ANtpTrackInfo::begPlane, ANtpTrackInfo::endPlane, ANtpEventInfoNue::phNueGeV, NueRecord::srevent, NueRecord::srtrack, and ANtpTrackInfoNue::trklikePlanes. Referenced by Trimmer::EvaluateCuts(). 00241 {
00242 int tp = TMath::Abs(nr->srtrack.endPlane - nr->srtrack.begPlane);
00243 int tlp = nr->srtrack.trklikePlanes;
00244 float energy = nr->srevent.phNueGeV;
00245
00246 return PassesSysPreSelection(tp, tlp, energy);
00247 }
|
|
|
Definition at line 114 of file NueStandard.cxx. 00115 { return (tlp < 16);
00116 }
|
|
|
Definition at line 108 of file NueStandard.cxx. References NueRecord::srtrack, and ANtpTrackInfoNue::trklikePlanes. Referenced by PassesPreSelectionTrackCuts(). 00109 {
00110 int tlp = nr->srtrack.trklikePlanes;
00111 return PassesTrackLikePlaneCut(tlp);
00112 }
|
|
|
Definition at line 103 of file NueStandard.cxx. 00104 {
00105 return (trkplane < 25);
00106 }
|
|
|
Definition at line 96 of file NueStandard.cxx. References ANtpTrackInfo::begPlane, ANtpTrackInfo::endPlane, and NueRecord::srtrack. Referenced by PassesPreSelectionTrackCuts(). 00097 {
00098 int tp = TMath::Abs(nr->srtrack.endPlane - nr->srtrack.begPlane);
00099
00100 return PassesTrackPlaneCut(tp);
00101 }
|
|
|
Definition at line 25 of file NueStandard.h. |
|
|
Definition at line 26 of file NueStandard.h. |
|
|
Definition at line 29 of file NueStandard.h. |
|
|
Definition at line 27 of file NueStandard.h. |
|
|
Definition at line 28 of file NueStandard.h. |
1.3.9.1