9 #include "TObjString.h" 10 #include "TMVA/Reader.h" 11 #include "TMVA/IMethod.h" 12 #include "TMVA/Factory.h" 13 #include "TMVA/DataLoader.h" 14 #include "TMVA/Tools.h" 16 #pragma GCC diagnostic push 17 #pragma GCC diagnostic ignored "-Wunused-but-set-variable" 19 #pragma GCC diagnostic pop 75 shwhitasymm = shwhitx -
shwhity;
101 TMVA2020vars[0] =
vtxx ;
102 TMVA2020vars[1] =
vtxy ;
103 TMVA2020vars[2] =
vtxz ;
122 TMVA2020specs[0] =
run ;
123 TMVA2020specs[1] =
subrun ;
124 TMVA2020specs[2] =
evt ;
125 TMVA2020specs[3] =
subevt ;
127 float score = fReader2020BDTG->EvaluateMVA(
"BDTAGrad");
128 memset(TMVA2020vars, 0,
sizeof(TMVA2020vars));
129 memset(TMVA2020specs, 0,
sizeof(TMVA2020specs));
137 if(!fReader2020BDTG) fReader2020BDTG =
new TMVA::Reader;
139 const char* libpath =
getenv(
"NCID_LIB_PATH");
143 fReader2020BDTG->AddVariable(
"vtxx" , &TMVA2020vars[0]);
144 fReader2020BDTG->AddVariable(
"vtxy" , &TMVA2020vars[1]);
145 fReader2020BDTG->AddVariable(
"vtxz" , &TMVA2020vars[2]);
146 fReader2020BDTG->AddVariable(
"closestslicemindist" , &TMVA2020vars[3]);
147 fReader2020BDTG->AddVariable(
"ncontplanes" , &TMVA2020vars[4]);
148 fReader2020BDTG->AddVariable(
"shwhitx" , &TMVA2020vars[5]);
149 fReader2020BDTG->AddVariable(
"shwhity" , &TMVA2020vars[6]);
150 fReader2020BDTG->AddVariable(
"shwhittot" , &TMVA2020vars[7]);
151 fReader2020BDTG->AddVariable(
"shwhitasymm" , &TMVA2020vars[8]);
152 fReader2020BDTG->AddVariable(
"shwhitratio" , &TMVA2020vars[9]);
153 fReader2020BDTG->AddVariable(
"nshowers" , &TMVA2020vars[10]);
154 fReader2020BDTG->AddVariable(
"showerwidth" , &TMVA2020vars[11]);
155 fReader2020BDTG->AddVariable(
"showerlength" , &TMVA2020vars[12]);
156 fReader2020BDTG->AddVariable(
"showerdirycosine" , &TMVA2020vars[13]);
157 fReader2020BDTG->AddVariable(
"showergap" , &TMVA2020vars[14]);
158 fReader2020BDTG->AddVariable(
"showercale" , &TMVA2020vars[15]);
159 fReader2020BDTG->AddVariable(
"nhitsperplane" , &TMVA2020vars[16]);
160 fReader2020BDTG->AddVariable(
"nmiphits" , &TMVA2020vars[17]);
161 fReader2020BDTG->AddVariable(
"nhitsperslice" , &TMVA2020vars[18]);
162 fReader2020BDTG->AddVariable(
"partptp" , &TMVA2020vars[19]);
163 fReader2020BDTG->AddVariable(
"closestslicetime" , &TMVA2020vars[20]);
164 fReader2020BDTG->AddSpectator(
"run" , &TMVA2020specs[0]);
165 fReader2020BDTG->AddSpectator(
"subrun", &TMVA2020specs[1]);
166 fReader2020BDTG->AddSpectator(
"evt" , &TMVA2020specs[2]);
167 fReader2020BDTG->AddSpectator(
"subevt", &TMVA2020specs[3]);
169 fReader2020BDTG->BookMVA(
"BDTAGrad", pidlib);
187 float cosmicid= -5.f,
shwnhit= -5.f,
shwnhitx = -5.f,
shwnhity= -5.f,
shwxminusy= -5.f,
shwxplusy= -5.f,
shwxovery = -5.f,
shwcalE= -5.f,
shwlen = -5.f,
shwwidth = -5.f,
shwGap= -5.f,
nshwlid = -5.f,
nmiphit= -5.f,
shwdirY= -5.f;
200 std::cout <<
"ERROR::GetNCCosRejG. Looking for cvn2017. Branch no longer exists." <<
std::endl;
221 TMVAGvars[0] = cosmicid;
222 TMVAGvars[1] = partptp;
235 ncid = fReaderGBDT->EvaluateMVA(
"BDTG");
248 std::cout <<
"ERROR::GetNCCosRej. Looking for cvn2017. Branch no longer exists." <<
std::endl;
269 TMVAvars[0] = cosmicid;
270 TMVAvars[1] = partptp;
283 ncid = fReaderBDT->EvaluateMVA(
"BDT");
284 memset(TMVAvars, 0,
sizeof(TMVAvars));
296 std::cout <<
"ERROR::GetNCCosRejP1. Looking for cvn2017. Branch no longer exists." <<
std::endl;
317 TMVAvars[0] = cosmicid;
318 TMVAvars[1] = partptp;
331 ncid = fReaderBDT1->EvaluateMVA(
"BDT");
332 memset(TMVAvars, 0,
sizeof(TMVAvars));
344 std::cout <<
"ERROR::GetNCCosRejP2. Looking for cvn2017. Branch no longer exists." <<
std::endl;
365 TMVAvars[0] = cosmicid;
366 TMVAvars[1] = partptp;
379 ncid = fReaderBDT2->EvaluateMVA(
"BDT");
380 memset(TMVAvars, 0,
sizeof(TMVAvars));
393 std::cout <<
"ERROR::GetNCCosRejP3_5. Looking for cvn2017. Branch no longer exists." <<
std::endl;
414 TMVAvars[0] = cosmicid;
415 TMVAvars[1] = partptp;
428 ncid = fReaderBDT3->EvaluateMVA(
"BDT");
429 memset(TMVAvars, 0,
sizeof(TMVAvars));
441 std::cout <<
"ERROR::GetNCCosRejP4_6. Looking for cvn2017. Branch no longer exists." <<
std::endl;
462 TMVAvars[0] = cosmicid;
463 TMVAvars[1] = partptp;
476 ncid = fReaderBDT4->EvaluateMVA(
"BDT");
477 memset(TMVAvars, 0,
sizeof(TMVAvars));
486 if(!fModel) InitKeras();
491 std::cout <<
"ERROR::GetNCCosRejKeras. Looking for cvn2017. Branch no longer exists." <<
std::endl;
512 float myfloats[] = {partptp,
528 std::vector<float> vec_myfloats(myfloats, myfloats +
sizeof(myfloats) /
sizeof(
float));
529 sample->set_data(vec_myfloats);
543 if(!fReaderGBDT) fReaderGBDT =
new TMVA::Reader;
545 const char* libpath =
getenv(
"NCID_LIB_PATH");
549 fReaderGBDT->AddVariable(
"cosmicid", &TMVAGvars[0]);
550 fReaderGBDT->AddVariable(
"partptp", &TMVAGvars[1]);
551 fReaderGBDT->AddVariable(
"shwnhit", &TMVAGvars[2]);
552 fReaderGBDT->AddVariable(
"shwxminusy", &TMVAGvars[3]);
553 fReaderGBDT->AddVariable(
"shwxplusy", &TMVAGvars[4]);
554 fReaderGBDT->AddVariable(
"shwxovery", &TMVAGvars[5]);
555 fReaderGBDT->AddVariable(
"shwcalE", &TMVAGvars[6]);
556 fReaderGBDT->AddVariable(
"shwdirY", &TMVAGvars[7]);
557 fReaderGBDT->AddVariable(
"shwlen", &TMVAGvars[8]);
558 fReaderGBDT->AddVariable(
"shwwwidth", &TMVAGvars[9]);
559 fReaderGBDT->AddVariable(
"shwGap", &TMVAGvars[10]);
560 fReaderGBDT->AddVariable(
"nshwlid", &TMVAGvars[11]);
561 fReaderGBDT->AddVariable(
"nmiphit", &TMVAGvars[12]);
562 fReaderGBDT->BookMVA(
"BDTG", pidlib);
567 if(!fReaderBDT) fReaderBDT =
new TMVA::Reader;
569 const char* libpath =
getenv(
"NCID_LIB_PATH");
573 fReaderBDT->AddVariable(
"cosmicid", &TMVAvars[0]);
574 fReaderBDT->AddVariable(
"partptp", &TMVAvars[1]);
575 fReaderBDT->AddVariable(
"shwnhit", &TMVAvars[2]);
576 fReaderBDT->AddVariable(
"shwxminusy", &TMVAvars[3]);
577 fReaderBDT->AddVariable(
"shwxplusy", &TMVAvars[4]);
578 fReaderBDT->AddVariable(
"shwxovery", &TMVAvars[5]);
579 fReaderBDT->AddVariable(
"shwcalE", &TMVAvars[6]);
580 fReaderBDT->AddVariable(
"shwdirY", &TMVAvars[7]);
581 fReaderBDT->AddVariable(
"shwlen", &TMVAvars[8]);
582 fReaderBDT->AddVariable(
"shwwwidth", &TMVAvars[9]);
583 fReaderBDT->AddVariable(
"shwGap", &TMVAvars[10]);
584 fReaderBDT->AddVariable(
"nshwlid", &TMVAvars[11]);
585 fReaderBDT->AddVariable(
"nmiphit", &TMVAvars[12]);
586 fReaderBDT->BookMVA(
"BDT", pidlib);
593 if(!fReaderBDT1) fReaderBDT1 =
new TMVA::Reader;
594 const char* libpath =
getenv(
"NCID_LIB_PATH");
598 fReaderBDT1->AddVariable(
"cosmicid", &TMVAvars[0]);
599 fReaderBDT1->AddVariable(
"partptp", &TMVAvars[1]);
600 fReaderBDT1->AddVariable(
"shwnhit", &TMVAvars[2]);
601 fReaderBDT1->AddVariable(
"shwxminusy", &TMVAvars[3]);
602 fReaderBDT1->AddVariable(
"shwxplusy", &TMVAvars[4]);
603 fReaderBDT1->AddVariable(
"shwxovery", &TMVAvars[5]);
604 fReaderBDT1->AddVariable(
"shwcalE", &TMVAvars[6]);
605 fReaderBDT1->AddVariable(
"shwdirY", &TMVAvars[7]);
606 fReaderBDT1->AddVariable(
"shwlen", &TMVAvars[8]);
607 fReaderBDT1->AddVariable(
"shwwwidth", &TMVAvars[9]);
608 fReaderBDT1->AddVariable(
"shwGap", &TMVAvars[10]);
609 fReaderBDT1->AddVariable(
"nshwlid", &TMVAvars[11]);
610 fReaderBDT1->AddVariable(
"nmiphit", &TMVAvars[12]);
611 fReaderBDT1->BookMVA(
"BDT", pidlib);
619 if(!fReaderBDT2) fReaderBDT2 =
new TMVA::Reader;
620 const char* libpath =
getenv(
"NCID_LIB_PATH");
623 fReaderBDT2->AddVariable(
"cosmicid", &TMVAvars[0]);
624 fReaderBDT2->AddVariable(
"partptp", &TMVAvars[1]);
625 fReaderBDT2->AddVariable(
"shwnhit", &TMVAvars[2]);
626 fReaderBDT2->AddVariable(
"shwxminusy", &TMVAvars[3]);
627 fReaderBDT2->AddVariable(
"shwxplusy", &TMVAvars[4]);
628 fReaderBDT2->AddVariable(
"shwxovery", &TMVAvars[5]);
629 fReaderBDT2->AddVariable(
"shwcalE", &TMVAvars[6]);
630 fReaderBDT2->AddVariable(
"shwdirY", &TMVAvars[7]);
631 fReaderBDT2->AddVariable(
"shwlen", &TMVAvars[8]);
632 fReaderBDT2->AddVariable(
"shwwwidth", &TMVAvars[9]);
633 fReaderBDT2->AddVariable(
"shwGap", &TMVAvars[10]);
634 fReaderBDT2->AddVariable(
"nshwlid", &TMVAvars[11]);
635 fReaderBDT2->AddVariable(
"nmiphit", &TMVAvars[12]);
636 fReaderBDT2->BookMVA(
"BDT", pidlib);
643 if(!fReaderBDT3) fReaderBDT3 =
new TMVA::Reader;
644 const char* libpath =
getenv(
"NCID_LIB_PATH");
647 fReaderBDT3->AddVariable(
"cosmicid", &TMVAvars[0]);
648 fReaderBDT3->AddVariable(
"partptp", &TMVAvars[1]);
649 fReaderBDT3->AddVariable(
"shwnhit", &TMVAvars[2]);
650 fReaderBDT3->AddVariable(
"shwxminusy", &TMVAvars[3]);
651 fReaderBDT3->AddVariable(
"shwxplusy", &TMVAvars[4]);
652 fReaderBDT3->AddVariable(
"shwxovery", &TMVAvars[5]);
653 fReaderBDT3->AddVariable(
"shwcalE", &TMVAvars[6]);
654 fReaderBDT3->AddVariable(
"shwdirY", &TMVAvars[7]);
655 fReaderBDT3->AddVariable(
"shwlen", &TMVAvars[8]);
656 fReaderBDT3->AddVariable(
"shwwwidth", &TMVAvars[9]);
657 fReaderBDT3->AddVariable(
"shwGap", &TMVAvars[10]);
658 fReaderBDT3->AddVariable(
"nshwlid", &TMVAvars[11]);
659 fReaderBDT3->AddVariable(
"nmiphit", &TMVAvars[12]);
660 fReaderBDT3->BookMVA(
"BDT", pidlib);
667 if(!fReaderBDT4) fReaderBDT4 =
new TMVA::Reader;
669 const char* libpath =
getenv(
"NCID_LIB_PATH");
672 fReaderBDT4->AddVariable(
"cosmicid", &TMVAvars[0]);
673 fReaderBDT4->AddVariable(
"partptp", &TMVAvars[1]);
674 fReaderBDT4->AddVariable(
"shwnhit", &TMVAvars[2]);
675 fReaderBDT4->AddVariable(
"shwxminusy", &TMVAvars[3]);
676 fReaderBDT4->AddVariable(
"shwxplusy", &TMVAvars[4]);
677 fReaderBDT4->AddVariable(
"shwxovery", &TMVAvars[5]);
678 fReaderBDT4->AddVariable(
"shwcalE", &TMVAvars[6]);
679 fReaderBDT4->AddVariable(
"shwdirY", &TMVAvars[7]);
680 fReaderBDT4->AddVariable(
"shwlen", &TMVAvars[8]);
681 fReaderBDT4->AddVariable(
"shwwwidth", &TMVAvars[9]);
682 fReaderBDT4->AddVariable(
"shwGap", &TMVAvars[10]);
683 fReaderBDT4->AddVariable(
"nshwlid", &TMVAvars[11]);
684 fReaderBDT4->AddVariable(
"nmiphit", &TMVAvars[12]);
685 fReaderBDT4->BookMVA(
"BDT", pidlib);
691 const char* libpath =
getenv(
"NCID_LIB_PATH");
caf::Proxy< size_t > npng
caf::Proxy< unsigned int > nshwlid
int isinf(const stan::math::var &a)
static TMVA::Reader * fReaderBDT
caf::Proxy< caf::SRFuzzyK > fuzzyk
Cuts and Vars for the 2020 FD DiF Study.
static TMVA::Reader * fReaderGBDT
float operator()(const caf::SRProxy *sr) const
caf::Proxy< caf::SRHeader > hdr
Proxy for caf::StandardRecord.
float operator()(const caf::SRProxy *sr) const
static TMVA::Reader * fReaderBDT3
caf::Proxy< unsigned int > ncontplanes
float operator()(const caf::SRProxy *sr) const
std::vector< float > compute_output(keras::DataChunk *dc)
int isnan(const stan::math::var &a)
static TMVA::Reader * fReader2020BDTG
caf::Proxy< float > closestslicetime
caf::Proxy< caf::SRElastic > elastic
caf::Proxy< caf::SRNueCosRej > nuecosrej
caf::Proxy< std::vector< caf::SRFuzzyKProng > > png
caf::Proxy< unsigned int > nhit
static keras::KerasModel * fModel
caf::Proxy< unsigned int > nmiphit
std::string getenv(std::string const &name)
static TMVA::Reader * fReaderBDT2
caf::Proxy< float > hitsperplane
caf::Proxy< float > partptp
float operator()(const caf::SRProxy *sr) const
float operator()(const caf::SRProxy *sr) const
static TMVA::Reader * fReaderBDT1
caf::Proxy< bool > IsValid
caf::Proxy< caf::SRSlice > slc
caf::Proxy< float > closestslicemindist
float operator()(const caf::SRProxy *sr) const
caf::Proxy< caf::SRVector3D > vtx
assert(nhit_max >=nhit_nbins)
caf::Proxy< caf::SRIDBranch > sel
float closestslicemindist
caf::Proxy< caf::SRVertexBranch > vtx
float operator()(const caf::SRProxy *sr) const
static TMVA::Reader * fReaderBDT4
float operator()(const caf::SRProxy *sr) const