ProfDataFile::Event ProfDataFile::GetEvent(int i) { Event e; if ( i < 0 || i >= NumEvents() ) { e.event_type = Event::EVENT_TYPE_ERROR; e.event_name = "Invalid Event Index"; } else { std::string buf; CSV::GetRow(i,e.event_time, buf,e.event_name); if ( buf == "ENTER" ) { e.event_type = Event::EVENT_TYPE_ENTER; } else if (buf == "LEAVE") { e.event_type = Event::EVENT_TYPE_LEAVE; } else { e.event_type = Event::EVENT_TYPE_ERROR; e.event_name = "Invalid Event Type"; } } return e; }
void FitterUtilsSimultaneousExpOfPolyTimesX::generate(bool wantPlots, string plotsfile) { FitterUtilsExpOfPolyTimesX::generate(wantPlots, plotsfile); TFile fw(workspacename.c_str(), "UPDATE"); RooWorkspace* workspace = (RooWorkspace*)fw.Get("workspace"); RooRealVar *B_plus_M = workspace->var("B_plus_M"); RooRealVar *misPT = workspace->var("misPT"); RooDataSet* dataSetCombExt = (RooDataSet*)workspace->data("dataSetCombExt"); RooDataSet* dataSetComb = (RooDataSet*)workspace->data("dataSetComb"); // RooRealVar *l1KeeGen = workspace->var("l1KeeGen"); // RooRealVar *l2KeeGen = workspace->var("l2KeeGen"); // RooRealVar *l3KeeGen = workspace->var("l3KeeGen"); // RooRealVar *l4KeeGen = workspace->var("l4KeeGen"); // RooRealVar *l5KeeGen = workspace->var("l5KeeGen"); // // // RooExpOfPolyTimesX kemuPDF("kemuPDF", "kemuPDF", *B_plus_M, *misPT, *l1KeeGen, *l2KeeGen, *l3KeeGen, *l4KeeGen, *l5KeeGen); // // RooAbsPdf::GenSpec* GenSpecKemu = kemuPDF.prepareMultiGen(RooArgSet(*B_plus_M, *misPT), RooFit::Extended(1), NumEvents(nGenKemu)); // // cout<<"Generating Kemu"<<endl; // RooDataSet* dataGenKemu = kemuPDF.generate(*GenSpecKemu);//(argset, 100, false, true, "", false, true); // dataGenKemu->SetName("dataGenKemu"); dataGenKemu->SetTitle("dataGenKemu"); // // // RooWorkspace* workspaceGen = (RooWorkspace*)fw.Get("workspaceGen"); // workspaceGen->import(*dataGenKemu); // // workspaceGen->Write("", TObject::kOverwrite); // fw.Close(); // delete dataGenKemu; // delete GenSpecKemu; TVectorD rho(2); rho[0] = 2.5; rho[1] = 1.5; misPT->setRange(-2000, 5000); RooNDKeysPdf kemuPDF("kemuPDF", "kemuPDF", RooArgList(*B_plus_M, *misPT), *dataSetCombExt, rho, "ma",3, true); misPT->setRange(0, 5000); RooAbsPdf::GenSpec* GenSpecKemu = kemuPDF.prepareMultiGen(RooArgSet(*B_plus_M, *misPT), RooFit::Extended(1), NumEvents(nGenKemu)); cout<<"Generating Kemu"<<endl; RooDataSet* dataGenKemu = kemuPDF.generate(*GenSpecKemu);//(argset, 100, false, true, "", false, true); dataGenKemu->SetName("dataGenKemu"); dataGenKemu->SetTitle("dataGenKemu"); RooWorkspace* workspaceGen = (RooWorkspace*)fw.Get("workspaceGen"); workspaceGen->import(*dataGenKemu); if(wantPlots) PlotShape(*dataSetComb, *dataGenKemu, kemuPDF, plotsfile, "cKemuKeys", *B_plus_M, *misPT); fw.cd(); workspaceGen->Write("", TObject::kOverwrite); fw.Close(); delete dataGenKemu; delete GenSpecKemu; }
void GenericFieldContainerEditor::updateProducedEventsPanel(FieldContainer* fc) { _ProducedEventsContainer->clearChildren(); UInt32 NumEvents(fc->getNumEvents()); const EventDescription * Desc; LabelUnrecPtr TheLabel; ComponentRecPtr TheToolTip; GridBagLayoutConstraintsRefPtr LayoutConstraints; UInt32 NumRows(0); if(NumEvents != 0) { BorderLayoutRefPtr TheBorderLayout = BorderLayout::create(); BorderLayoutConstraintsRefPtr WestConstraint = BorderLayoutConstraints::create(); WestConstraint->setRegion(BorderLayoutConstraints::BORDER_WEST); BorderLayoutConstraintsRefPtr CenterConstraint = BorderLayoutConstraints::create(); CenterConstraint->setRegion(BorderLayoutConstraints::BORDER_CENTER); //Backgrounds ColorLayerRefPtr HeaderBgLayer = ColorLayer::create(); HeaderBgLayer->setColor(Color4f(0.7f,0.7f,0.7f,1.0f)); ColorLayerRefPtr LightBgLayer = ColorLayer::create(); LightBgLayer->setColor(Color4f(0.9f,0.9f,0.9f,1.0f)); ColorLayerRefPtr DarkBgLayer = ColorLayer::create(); DarkBgLayer->setColor(Color4f(0.8f,0.8f,0.8f,1.0f)); LabelRecPtr EventsLabel = Label::create(); EventsLabel->setAlignment(Vec2f(0.5f,0.5f)); EventsLabel->setText("Events"); EventsLabel->setBackgrounds(HeaderBgLayer); EventsLabel->setFont(_BoldFont); _ProducedEventsContainer->pushToChildren(EventsLabel); ++NumRows; for(UInt32 i(1) ; i<=NumEvents ; ++i) { Desc = fc->getProducerType().getEventDescription(i); if(Desc != NULL) { //Create the Label TheLabel = Label::create(); TheLabel->setText(Desc->getCName()); TheToolTip = createEventToolTip(Desc); TheLabel->setToolTip(TheToolTip); if((i%2) == 0) { TheLabel->setBackgrounds(DarkBgLayer); } else { TheLabel->setBackgrounds(LightBgLayer); } _ProducedEventsContainer->pushToChildren(TheLabel); ++NumRows; } } } //Set the number of rows for the grid layout dynamic_cast<GridLayout*>(_ProducedEventsContainer->getLayout())->setRows(NumRows); _ProducedEventsContainer->setPreferredSize(Vec2f(400.0f, NumRows*24.0f + _ProducedEventsContainer->getTopInset())); }
void FitterUtils::generate() { //***************Get the PDFs from the workspace TFile fw(workspacename.c_str(), "UPDATE"); RooWorkspace* workspace = (RooWorkspace*)fw.Get("workspace"); RooRealVar *B_plus_M = workspace->var("B_plus_M"); RooRealVar *misPT = workspace->var("misPT"); RooRealVar *T = workspace->var("T"); RooRealVar *n = workspace->var("n"); RooRealVar *expoConst = workspace->var("expoConst"); RooRealVar *trueExp = workspace->var("trueExp"); RooRealVar *fractionalErrorJpsiLeak = workspace->var("fractionalErrorJpsiLeak"); cout<<"VALUE OF T IN GENERATE: "<<T->getVal()<<" +- "<<T->getError()<<endl; cout<<"VALUE OF n IN GENERATE: "<<n->getVal()<<" +- "<<n->getError()<<endl; RooHistPdf *histPdfSignalZeroGamma = (RooHistPdf *) workspace->pdf("histPdfSignalZeroGamma"); RooHistPdf *histPdfSignalOneGamma = (RooHistPdf *) workspace->pdf("histPdfSignalOneGamma"); RooHistPdf *histPdfSignalTwoGamma = (RooHistPdf *) workspace->pdf("histPdfSignalTwoGamma"); RooHistPdf *histPdfPartReco = (RooHistPdf *) workspace->pdf("histPdfPartReco"); RooHistPdf *histPdfJpsiLeak(0); if(nGenJpsiLeak>1) histPdfJpsiLeak = (RooHistPdf *) workspace->pdf("histPdfJpsiLeak"); RooAbsPdf *combPDF; if (fit2D) { combPDF = new RooPTMVis("combPDF", "combPDF", *misPT, *B_plus_M, *T, *n, *expoConst); } else { combPDF = new RooExponential("combPDF", "combPDF", *B_plus_M, *expoConst); } double trueExpConst(trueExp->getValV()); expoConst->setVal(trueExpConst); //***************Prepare generation int nGenSignalZeroGamma(floor(nGenFracZeroGamma*nGenSignal)); int nGenSignalOneGamma(floor(nGenFracOneGamma*nGenSignal)); int nGenSignalTwoGamma(floor(nGenSignal-nGenSignalZeroGamma-nGenSignalOneGamma)); RooArgSet argset2(*B_plus_M); if (fit2D) argset2.add(*misPT); cout<<"Preparing the generation of events 1"; RooRandom::randomGenerator()->SetSeed(); RooAbsPdf::GenSpec* GenSpecSignalZeroGamma = histPdfSignalZeroGamma->prepareMultiGen(argset2, RooFit::Extended(1), NumEvents(nGenSignalZeroGamma)); cout<<" 2 "; RooAbsPdf::GenSpec* GenSpecSignalOneGamma = histPdfSignalOneGamma->prepareMultiGen(argset2, RooFit::Extended(1), NumEvents(nGenSignalOneGamma)); cout<<" 3 "; RooAbsPdf::GenSpec* GenSpecSignalTwoGamma = histPdfSignalTwoGamma->prepareMultiGen(argset2, RooFit::Extended(1), NumEvents(nGenSignalTwoGamma)); cout<<" 4 "; RooAbsPdf::GenSpec* GenSpecPartReco = histPdfPartReco->prepareMultiGen(argset2, RooFit::Extended(1), NumEvents(nGenPartReco)); cout<<" 5 "<<endl; RooAbsPdf::GenSpec* GenSpecComb = combPDF->prepareMultiGen(argset2, RooFit::Extended(1), NumEvents(nGenComb)); RooAbsPdf::GenSpec* GenSpecJpsiLeak(0); if(nGenJpsiLeak>1) GenSpecJpsiLeak = histPdfJpsiLeak->prepareMultiGen(argset2, RooFit::Extended(1), NumEvents(nGenJpsiLeak)); cout<<"Variable loaded:"<<endl; B_plus_M->Print(); expoConst->Print(); //B_plus_DTFM_M_zero->Print(); if (fit2D) misPT->Print(); //***************Generate some datasets cout<<"Generating signal Zero Photon"<<endl; RooDataSet* dataGenSignalZeroGamma = histPdfSignalZeroGamma->generate(*GenSpecSignalZeroGamma);//(argset, 250, false, true, "", false, true); dataGenSignalZeroGamma->SetName("dataGenSignalZeroGamma"); dataGenSignalZeroGamma->SetTitle("dataGenSignalZeroGamma"); cout<<"Generating signal One Photon"<<endl; RooDataSet* dataGenSignalOneGamma = histPdfSignalOneGamma->generate(*GenSpecSignalOneGamma);//(argset, 250, false, true, "", false, true); dataGenSignalOneGamma->SetName("dataGenSignalOneGamma"); dataGenSignalOneGamma->SetTitle("dataGenSignalOneGamma"); cout<<"Generating signal two Photons"<<endl; RooDataSet* dataGenSignalTwoGamma = histPdfSignalTwoGamma->generate(*GenSpecSignalTwoGamma);//(argset, 250, false, true, "", false, true); dataGenSignalTwoGamma->SetName("dataGenSignalTwoGamma"); dataGenSignalTwoGamma->SetTitle("dataGenSignalTwoGamma"); cout<<"Generating combinatorial"<<endl; RooDataSet* dataGenComb = combPDF->generate(*GenSpecComb);//(argset, 100, false, true, "", false, true); dataGenComb->SetName("dataGenComb"); dataGenComb->SetTitle("dataGenComb"); cout<<"Generating PartReco"<<endl; RooDataSet* dataGenPartReco = histPdfPartReco->generate(*GenSpecPartReco);//argset, 160, false, true, "", false, true); dataGenPartReco->SetName("dataGenPartReco"); dataGenPartReco->SetTitle("dataGenPartReco"); RooDataSet* dataGenJpsiLeak(0); if(nGenJpsiLeak>1) { cout<<"Generating Leaking JPsi"<<endl; dataGenJpsiLeak = histPdfJpsiLeak->generate(*GenSpecJpsiLeak);//argset, 160, false, true, "", false, true); dataGenJpsiLeak->SetName("dataGenJpsiLeak"); dataGenJpsiLeak->SetTitle("dataGenJpsiLeak"); } //*************Saving the generated datasets in a workspace RooWorkspace workspaceGen("workspaceGen", "workspaceGen"); workspaceGen.import(*dataGenSignalZeroGamma); workspaceGen.import(*dataGenSignalOneGamma); workspaceGen.import(*dataGenSignalTwoGamma); workspaceGen.import(*dataGenComb); workspaceGen.import(*dataGenPartReco); if(nGenJpsiLeak>1) workspaceGen.import(*dataGenJpsiLeak); workspaceGen.Write("", TObject::kOverwrite); //delete workspace; fw.Close(); delete dataGenSignalZeroGamma; delete dataGenSignalOneGamma; delete dataGenSignalTwoGamma; delete dataGenComb; delete dataGenPartReco; if(nGenJpsiLeak>1) delete dataGenJpsiLeak; delete GenSpecSignalZeroGamma; delete GenSpecSignalOneGamma; delete GenSpecSignalTwoGamma; delete GenSpecComb; delete GenSpecPartReco; delete combPDF; if(nGenJpsiLeak>1) delete GenSpecJpsiLeak; delete histPdfSignalZeroGamma; delete histPdfSignalOneGamma; delete histPdfSignalTwoGamma; delete histPdfPartReco; if(nGenJpsiLeak>1) delete histPdfJpsiLeak; }
void AnalyzeToy::prepare_gen() { genSpec_sig_mass = ws->pdf("model_signal_mass")->prepareMultiGen(*mass, NumEvents(nSignal_gen)); genSpec_bkg_mass = ws->pdf("model_bkg_mass")->prepareMultiGen(*mass, NumEvents(nBackground_gen)); genSpec_bkg_cosT = ws->pdf("model_bkg_cosT")->prepareMultiGen(*cosT, NumEvents(nBackground_gen)); }
Event CommandQueue::enqueueBarrierWithWaitList(const vector<Event> *events) { Event ev; ClCheck(::clEnqueueBarrierWithWaitList(Handle(), NumEvents(events), ToEventWaitList(events), &ev.m_h)); return ev; }
Event CommandQueue::enqueueWriteBuffer(const Buffer& buffer, bool bBlocking, size_t offset, size_t cb, const void *p, const vector<Event> *events) { Event ev; ClCheck(::clEnqueueWriteBuffer(Handle(), buffer(), bBlocking, offset, cb, p, NumEvents(events), ToEventWaitList(events), &ev.m_h)); return ev; }
Event CommandQueue::enqueueNativeKernel(void (CL_CALLBACK *pfn)(void *), pair<void*, size_t> args, const vector<Memory> *mems, const vector<const void*> *memLocs, const vector<Event> *events) { Event ev; ClCheck(::clEnqueueNativeKernel(Handle(), pfn, args.first, args.second, (mems ? mems->size() : 0), (mems ? &(*mems)[0].m_h : 0), (memLocs ? (const void **)&(*memLocs)[0]: 0), NumEvents(events), ToEventWaitList(events), &ev.m_h)); return ev; }
Event CommandQueue::enqueueNDRangeKernel(const Kernel& kernel, const NDRange& offset, const NDRange& global, const NDRange& local, const vector<Event> *events) { Event ev; ClCheck(::clEnqueueNDRangeKernel(Handle(), kernel(), global.dimensions(), offset, global, local, NumEvents(events), ToEventWaitList(events), &ev.m_h)); return ev; }
Event CommandQueue::enqueueTask(const Kernel& kernel, const vector<Event> *events) { Event ev; ClCheck(::clEnqueueTask(Handle(), kernel(), NumEvents(events), ToEventWaitList(events), &ev.m_h)); return ev; }