|
[Rivet] unusual segfault:11 while getting a simple jet projectionRaghav Kunnawalkam Elayavalli raghav.k.e at cern.chThu May 12 11:19:34 BST 2016
Hi David, Yeah i you are correct :) it was the veto event that fixed it. I missed that i added that in the beginning when i responded rather too quickly. Cheers Raghav > On May 12, 2016, at 11:37 AM, David Grellscheid <david.grellscheid at durham.ac.uk> wrote: > > Hi Raghav, > > I'm not convinced the problem isn't just hidden. Your two versions are functionally the same. Can you send me the analysis and a _short_ :) HepMC file that fails? > > Thanks, > > David > > On 12/05/2016 11:01, Raghav Kunnawalkam Elayavalli wrote: >> Hi Holger, >> >> I just realized what i was doing. The veto wasnt the issue since it did print the correct jet pT. due to the type cast of the fastjet vs jets i think. >> I needed to have >> const FastJets& Ajets = applyProjection<FastJets>(event, "Jets"); >> const Jets ajets = Ajets.jetsByPt(30*GeV); >> instead of >> Jets ajets = applyProjection<FastJets>(event, "Jets").jetsByPt(30*GeV); >> >> So now it does what its supposed to do. >> >> Cheers, >> Raghav >> >> >> On May 12, 2016, at 10:53 AM, Holger Schulz <holger.schulz at durham.ac.uk<mailto:holger.schulz at durham.ac.uk>> wrote: >> >> >> Hi Raghav, >> >> >> Looks like you don't have a jet, i.e. ajet.size() might be 0 and >> by explicitly accessing ajets[0] the segafault seems to come in. >> >> Could you try a >> if (ajets.size()==0) vetoEvent; >> >> just before the cout? >> >> Holger >> >> >> On 12/05/16 09:21, Raghav Kunnawalkam Elayavalli wrote: >> Hi Rivet Experts, >> >> Im seeing a very weird seg fault when i get the jet projection. I attached the analysis code below in [1] and the error message in [2]. I cant for the life of me figure out what is causing this seg fault when i have other (much more complicated) analysis which use the exact same setup and those work fine. >> >> Cheers >> Raghav >> >> [1] simple code: >> // -*- C++ -*- >> #include "Rivet/Analysis.hh" >> #include "Rivet/Projections/FinalState.hh" >> #include "Rivet/Projections/FastJets.hh" >> >> namespace Rivet { >> >> class JEWEL_test : public Analysis { >> public: >> >> JEWEL_test() >> : Analysis("JEWEL_test") >> { } >> >> void init() { >> FinalState fs(-5.0, 5.0, 0.150*GeV); >> addProjection(fs, "FS"); >> addProjection(FastJets(fs, FastJets::ANTIKT, 0.4), "Jets"); >> _h_njets = bookHisto1D("njets", 10, 0, 10); >> } >> >> void analyze(const Event& event) { >> const double weight = event.weight(); >> Jets ajets = applyProjection<FastJets>(event, "Jets").jetsByPt(30*GeV); >> std::cout<<"ajets leading jet pT = "<<ajets[0].pT()<<std::endl; >> _h_njets->fill(ajets.size(), weight); >> } >> >> void finalize() { >> scale(_h_njets, crossSection()/picobarn/sumOfWeights()); >> } >> private: >> Histo1DPtr _h_njets; >> }; >> >> DECLARE_RIVET_PLUGIN(JEWEL_test); >> } >> >> [2]: Error message: >> pb-d-128-141-166-103:ANALYSIS raghav$ rivet -a JEWEL_test ../out.hepmc >> Rivet 2.4.1 running on machine pb-d-128-141-166-103.cern.ch<http://pb-d-128-141-166-103.cern.ch/> (x86_64) at 2016-05-12 10:17:31 >> Rivet.Analysis.Handler: WARN Analysis 'JEWEL_test' is unvalidated: be careful, it may be broken! >> Reading events from '../out.hepmc' >> #-------------------------------------------------------------------------- >> # FastJet release 3.2.0 >> # M. Cacciari, G.P. Salam and G. Soyez >> # A software package for jet finding and analysis at colliders >> # http://fastjet.fr<http://fastjet.fr/> >> # >> # Please cite EPJC72(2012)1896 [arXiv:1111.6097] if you use this package >> # for scientific work and optionally PLB641(2006)57 [hep-ph/0512210]. >> # >> # FastJet is provided without warranty under the terms of the GNU GPLv2. >> # It uses T. Chan's closest pair algorithm, S. Fortune's Voronoi code >> # and 3rd party plugin jet algorithms. See COPYING file for details. >> #-------------------------------------------------------------------------- >> ajets leading jet pT = 48.0278 >> Segmentation fault: 11 >> >> >> >> >> >> _______________________________________________ >> Rivet mailing list >> Rivet at projects.hepforge.org<mailto:Rivet at projects.hepforge.org> >> https://www.hepforge.org/lists/listinfo/rivet >> >> >> >> >> >> _______________________________________________ >> Rivet mailing list >> Rivet at projects.hepforge.org >> https://www.hepforge.org/lists/listinfo/rivet >>
More information about the Rivet mailing list |