diff --git a/Contrib/AcerDetInterface/AcerDet.cc b/Contrib/AcerDetInterface/AcerDet.cc deleted file mode 100644 --- a/Contrib/AcerDetInterface/AcerDet.cc +++ /dev/null @@ -1,153 +0,0 @@ -// -*- C++ -*- -// -// This is the implementation of the non-inlined, non-templated member -// functions of the AcerDet class. -// - -#include "AcerDet.h" -#include "ThePEG/Interface/ClassDocumentation.h" -#include "ThePEG/Persistency/PersistentOStream.h" -#include "ThePEG/Persistency/PersistentIStream.h" -#include "ThePEG/Config/HepMCHelper.h" - -using namespace Herwig; - -// maximum number of leptons in the common block -const int acdleptt_maxlept = 12; -// maximum number of photons in the common block -const int acdphot_maxphot = 12; -// maximum number of jets in the common block -const int acdjets_maxjet = 20; - -extern "C" { - // main AcerDet driving routine - void acerdet_(int*); - // convert from HEPEVT to internal format - void acdherwig6_(); - // open the files for input/output - void acerdet_files_(); - // common block for reconstructed leptons - extern struct { - int nlept; - int kflept[acdleptt_maxlept]; - float pxlept[acdleptt_maxlept]; - float pylept[acdleptt_maxlept]; - float pzlept[acdleptt_maxlept]; - float eelept[acdleptt_maxlept]; - } acdleptt_; - // common block for reconstructed photons - extern struct { - int nphot; - int kfphot[acdphot_maxphot]; - float pxphot[acdphot_maxphot]; - float pyphot[acdphot_maxphot]; - float pzphot[acdphot_maxphot]; - float eephot[acdphot_maxphot]; - } acdphot_; - // common block for reconstructed jets - extern struct { - int njets; - int kfjets[acdjets_maxjet]; - float pxjets[acdjets_maxjet]; - float pyjets[acdjets_maxjet]; - float pzjets[acdjets_maxjet]; - float eejets[acdjets_maxjet]; - } acdjets_; - // common block for reconstructed etmiss - extern struct { - float pxmiss; - float pymiss; - float pxnues; - float pynues; - float pxcalo; - float pycalo; - } acdmiss_; -} - -void AcerDet::analyze(tEventPtr event, long ieve, int loop, int state) { - // check energy unit - if(HepMC::Units::default_momentum_unit()!=HepMC::Units::GEV) - throw Exception() << "Must be using GeV in HepMC if using AcerDet" - << " in AcerDet::analyze()" - << Exception::runerror; - // clear storage - _nphoton=0; - _photonMomentum.clear(); - _nlepton=0; - _leptonMomentum.clear(); - _leptonID; - _njet=0; - _jetMomentum.clear(); - _jetID; - // convert the event to HepMC - HepMC::GenEvent * hepmc = HepMCConverter::convert(*event); - // convert the event from HepMC to HEPEVT - HepMC::HEPEVT_Wrapper::set_max_number_entries(4000); - _converter->write_event(hepmc); - // convert the event to AcerDet internal format - acdherwig6_(); - int imode=0; - acerdet_(&imode); - // number of photons and momenta - _nphoton = acdphot_.nphot; - for(int ix=0;ix<_nphoton;++ix) { - _photonMomentum.push_back(LorentzMomentum(acdphot_.pxphot[ix]*GeV, - acdphot_.pyphot[ix]*GeV, - acdphot_.pzphot[ix]*GeV, - acdphot_.eephot[ix]*GeV)); - } - // number of leptons, momenta and PDG codes - _nlepton = acdleptt_.nlept; - for(int ix=0;ix<_nlepton;++ix) { - _leptonMomentum.push_back(LorentzMomentum(acdleptt_.pxlept[ix]*GeV, - acdleptt_.pylept[ix]*GeV, - acdleptt_.pzlept[ix]*GeV, - acdleptt_.eelept[ix]*GeV)); - _leptonID.push_back(acdleptt_.kflept[ix]); - } - // number of jets, momenta and PDG codes - _njet = acdjets_.njets; - for(int ix=0;ix<_njet;++ix) { - _jetMomentum.push_back(LorentzMomentum(acdjets_.pxjets[ix]*GeV, - acdjets_.pyjets[ix]*GeV, - acdjets_.pzjets[ix]*GeV, - acdjets_.eejets[ix]*GeV)); - _jetID.push_back(acdjets_.kfjets[ix]); - } - // missing ET - _etcalo = make_pair(acdmiss_.pxcalo*GeV,acdmiss_.pycalo*GeV); - _etneutrino = make_pair(acdmiss_.pxnues*GeV,acdmiss_.pynues*GeV); - _etstable = make_pair(acdmiss_.pxmiss*GeV,acdmiss_.pymiss*GeV); - delete hepmc; -} - -NoPIOClassDescription AcerDet::initAcerDet; -// Definition of the static class description member. - -void AcerDet::Init() { - - static ClassDocumentation documentation - ("The AcerDet class provides an interface to the AcerDet fast" - " dectector simulation."); - -} - -void AcerDet::dofinish() { - AnalysisHandler::dofinish(); - // delete the converter from HepMC to HEPEVT - delete _converter; - int imode=1; - acerdet_(&imode); -} - -void AcerDet::doinitrun() { - AnalysisHandler::doinitrun(); - // create the converter from HepMC to HEPEVT - _converter = new HepMC::IO_HEPEVT(); - // initialise AcerDet - int mode=-1; - generator()->log() << "testing in init run \n"; - acerdet_files_(); - generator()->log() << "testing read files\n"; - acerdet_(&mode); -} diff --git a/Contrib/AcerDetInterface/AcerDet.h b/Contrib/AcerDetInterface/AcerDet.h deleted file mode 100644 --- a/Contrib/AcerDetInterface/AcerDet.h +++ /dev/null @@ -1,278 +0,0 @@ -// -*- C++ -*- -#ifndef HERWIG_AcerDet_H -#define HERWIG_AcerDet_H -// -// This is the declaration of the AcerDet class. -// - -#include "ThePEG/Handlers/AnalysisHandler.h" -#include "HepMC/GenEvent.h" -#include "HepMC/IO_HEPEVT.h" - -namespace Herwig { - -using namespace ThePEG; - -/** - * The AcerDet class is designed to interface Herwig with the - * AcerDet fast detector simulation - * - * @see \ref AcerDetInterfaces "The interfaces" - * defined for AcerDet. - */ -class AcerDet: public AnalysisHandler { - -public: - - /** - * The default constructor. - */ - inline AcerDet() {} - - /** @name Virtual functions required by the AnalysisHandler class. */ - //@{ - /** - * Analyze a given Event. Note that a fully generated event - * may be presented several times, if it has been manipulated in - * between. The default version of this function will call transform - * to make a lorentz transformation of the whole event, then extract - * all final state particles and call analyze(tPVector) of this - * analysis object and those of all associated analysis objects. The - * default version will not, however, do anything on events which - * have not been fully generated, or have been manipulated in any - * way. - * @param event pointer to the Event to be analyzed. - * @param ieve the event number. - * @param loop the number of times this event has been presented. - * If negative the event is now fully generated. - * @param state a number different from zero if the event has been - * manipulated in some way since it was last presented. - */ - virtual void analyze(tEventPtr event, long ieve, int loop, int state); - //@} - -public: - - /** - * Members to analyse the information from AcerDet - */ - //@{ - /** - * Number of photons - */ - inline unsigned int numberOfPhotons() const {return _nphoton;} - - /** - * Momenta of the photons - */ - inline const vector & photonMomentum() const {return _photonMomentum;} - - /** - * Number of leptons - */ - inline unsigned int numberOfLeptons() const {return _nlepton;} - - /** - * Momenta of the leptons - */ - inline const vector & leptonMomentum() const {return _leptonMomentum;} - - /** - * PDG codes for the leptons - */ - inline const vector & leptonID() const {return _leptonID;} - - /** - * Number of jets - */ - inline unsigned int numberOfJets() const {return _njet;} - - /** - * Momenta of the jets - */ - inline const vector & jetMomentum() const {return _jetMomentum;} - - /** - * PDG codes for the jets (0 for light 5 for bottom) - * probably not very relible - */ - inline const vector & jetID() const {return _jetID;} - - /** - * The missing \f$E_T\f$ from the calorimeter - * @return \f$p_x\f$, \f$p_y\f$ - */ - inline const pair & missingETCalorimeter() const {_etcalo;} - - /** - * The missing \f$E_T\f$ from the neutrinos - * @return \f$p_x\f$, \f$p_y\f$ - */ - inline const pair & missingETNeutrino() const {_etneutrino;} - - /** - * The missing \f$E_T\f$ from the user identified stable neutral particles - * @return \f$p_x\f$, \f$p_y\f$ - */ - inline const pair & missingETStable() const {_etstable;} - //@} - -public: - - /** - * The standard Init function used to initialize the interfaces. - * Called exactly once for each class by the class description system - * before the main function starts or - * when this class is dynamically loaded. - */ - static void Init(); - -protected: - - /** @name Clone Methods. */ - //@{ - /** - * Make a simple clone of this object. - * @return a pointer to the new object. - */ - inline virtual IBPtr clone() const {return new_ptr(*this);} - - /** Make a clone of this object, possibly modifying the cloned object - * to make it sane. - * @return a pointer to the new object. - */ - inline virtual IBPtr fullclone() const {return new_ptr(*this);} - //@} - -protected: - - /** @name Standard Interfaced functions. */ - //@{ - /** - * Initialize this object. Called in the run phase just before - * a run begins. - */ - virtual void doinitrun(); - - /** - * Finalize this object. Called in the run phase just after a - * run has ended. Used eg. to write out statistics. - */ - virtual void dofinish(); - //@} - -private: - - /** - * The static object used to initialize the description of this class. - * Indicates that this is a concrete class with persistent data. - */ - static NoPIOClassDescription initAcerDet; - - /** - * The assignment operator is private and must never be called. - * In fact, it should not even be implemented. - */ - AcerDet & operator=(const AcerDet &) = delete; - -private: - - /** - * Converter from HepMC to HEPEVT - */ - HepMC::IO_HEPEVT * _converter; - - /** - * Number of photons - */ - unsigned int _nphoton; - - /** - * Momenta of the photons - */ - vector _photonMomentum; - - /** - * Number of leptons - */ - unsigned int _nlepton; - - /** - * Momenta of the leptons - */ - vector _leptonMomentum; - - /** - * PDG codes for the leptons - */ - vector _leptonID; - - /** - * Number of jets - */ - unsigned int _njet; - - /** - * Momenta of the jets - */ - vector _jetMomentum; - - /** - * PDG codes for the jets - */ - vector _jetID; - - /** - * The missing \f$E_T\f$ from the calorimeter - */ - pair _etcalo; - - /** - * The missing \f$E_T\f$ from the neutrinos - */ - pair _etneutrino; - - /** - * The missing \f$E_T\f$ from the user identified stable neutral particles - */ - pair _etstable; -}; - -} - -#include "ThePEG/Utilities/ClassTraits.h" - -namespace ThePEG { - -/** @cond TRAITSPECIALIZATIONS */ - -/** This template specialization informs ThePEG about the - * base classes of AcerDet. */ -template <> -struct BaseClassTrait { - /** Typedef of the first base class of AcerDet. */ - typedef AnalysisHandler NthBase; -}; - -/** This template specialization informs ThePEG about the name of - * the AcerDet class and the shared object where it is defined. */ -template <> -struct ClassTraits - : public ClassTraitsBase { - /** Return a platform-independent class name */ - static string className() { return "Herwig::AcerDet"; } - /** - * The name of a file containing the dynamic library where the class - * AcerDet is implemented. It may also include several, space-separated, - * libraries if the class AcerDet depends on other classes (base classes - * excepted). In this case the listed libraries will be dynamically - * linked in the order they are specified. - */ - static string library() { return "HwAcerDet.so"; } -}; - -/** @endcond */ - -} - -#endif /* HERWIG_AcerDet_H */ diff --git a/Contrib/AcerDetInterface/AcerDet_files.f b/Contrib/AcerDetInterface/AcerDet_files.f deleted file mode 100755 --- a/Contrib/AcerDetInterface/AcerDet_files.f +++ /dev/null @@ -1,18 +0,0 @@ - subroutine acerdet_files - implicit none - integer nwpawc - real hmemor - PARAMETER (NWPAWC = 5 000 000) - COMMON /PAWC/ HMEMOR(NWPAWC) - INCLUDE "acdnout.inc" -C--unit numbers for the inpt and output files - NINP = 16 - NOUT = 11 -C--open the files - OPEN(NINP ,file='acerdet.dat',status='old') - OPEN(NOUT ,file='acerdet.out') -C--hbook - CALL HLIMIT(NWPAWC) -C------initialize histo output - CALL HOUTPU(NOUT) - end diff --git a/Contrib/AcerDetInterface/LHC.in b/Contrib/AcerDetInterface/LHC.in deleted file mode 100644 --- a/Contrib/AcerDetInterface/LHC.in +++ /dev/null @@ -1,41 +0,0 @@ -# -*- ThePEG-repository -*- -################################################## -# Example generator based on LHC parameters -# usage: Herwig read LHC.in -################################################## -read snippets/PPCollider.in -################################################## -# Technical parameters for this run -################################################## -cd /Herwig/Generators -set EventGenerator:NumberOfEvents 10000000 -set EventGenerator:RandomNumberGenerator:Seed 31122001 -set EventGenerator:PrintEvent 10 -set EventGenerator:MaxErrors 10000 - -################################################## -# LHC physics parameters (override defaults here) -################################################## -set EventGenerator:EventHandler:LuminosityFunction:Energy 14000.0 - -# Intrinsic pT tune extrapolated to LHC energy -set /Herwig/Shower/ShowerHandler:IntrinsicPtGaussian 2.2*GeV - -################################################## -# Matrix Elements for hadron-hadron collisions -# (by default only gamma/Z switched on) -################################################## -cd /Herwig/MatrixElements/ - -insert SubProcess:MatrixElements[0] MEqq2gZ2ff -set MEqq2gZ2ff:Process Electron -cd /Herwig/Generators - -library HwAcerDet.so -create Herwig::ZAnalysis /Herwig/Analysis/ZAnalysis ZAnalysis.so -insert EventGenerator:AnalysisHandlers 0 /Herwig/Analysis/ZAnalysis - -################################################## -# Save run for later usage with 'Herwig run' -################################################## -saverun LHC EventGenerator diff --git a/Contrib/AcerDetInterface/Makefile.in b/Contrib/AcerDetInterface/Makefile.in deleted file mode 100644 --- a/Contrib/AcerDetInterface/Makefile.in +++ /dev/null @@ -1,50 +0,0 @@ -# -*- Makefile -*- (for emacs) - -# -# This Makefile is intended for compiling Herwig++ plugins -# You can find plugins here: INSERT URL -# -# This Makefile received very little testing, -# any bug reports are very welcome! -# - -# location of include files -THEPEGINCLUDE = -GSLINCLUDE = -HERWIGINCLUDE = -FC = -FCLIBS = -LDFLAGS = -SHARED_FLAG = -HEPMCLIBS = -L/scratch/richardn/montecarlo/utilities/lib -ACERDETPATH = /scratch/richardn/montecarlo/detector/AcerDET-1.0 -ACERDETINCLUDE = -I$(ACERDETPATH)/acerdet_inc -ACERDETLIB = -L$(ACERDETPATH)/acerdet_lib -lacerdet -CERNPATH = /scratch/richardn/montecarlo/detector/lib -CERNLIB = -L$(CERNPATH) -lpacklib -lmathlib -lkernlib -lnsl -lcrypt -ldl -INCLUDE = $(THEPEGINCLUDE) $(GSLINCLUDE) $(HERWIGINCLUDE) -# -# C++ flags -# -CXX = -CXXFLAGS = - -ALLCCFILES=$(shell echo *.cc) - -default : HwAcerDet.so ZAnalysis.so - -HwAcerDet.so : AcerDet.cc AcerDet.h AcerDet_files.o - $(CXX) -fPIC $(INCLUDE) $(CXXFLAGS) $(SHARED_FLAG) $(LDFLAGS) \ - AcerDet_files.o AcerDet.cc -o HwAcerDet.so \ - $(ACERDETLIB) $(CERNLIB) $(HEPMCLIBS) -lHepMC -lHepMCfio $(FCLIBS) - -ZAnalysis.so : ZAnalysis.cc ZAnalysis.h - $(CXX) -fPIC $(INCLUDE) $(CXXFLAGS) $(SHARED_FLAG) $(LDFLAGS) \ - ZAnalysis.cc -o ZAnalysis.so \ - $(ACERDETLIB) $(CERNLIB) $(HEPMCLIBS) -lHepMC -lHepMCfio $(FCLIBS) - -AcerDet_files.o: AcerDet_files.f - $(FC) -fPIC $(ACERDETINCLUDE) -c -fno-second-underscore AcerDet_files.f - -clean: - rm -f *.o *.so \ No newline at end of file diff --git a/Contrib/AcerDetInterface/ZAnalysis.cc b/Contrib/AcerDetInterface/ZAnalysis.cc deleted file mode 100644 --- a/Contrib/AcerDetInterface/ZAnalysis.cc +++ /dev/null @@ -1,84 +0,0 @@ -// -*- C++ -*- -// -// This is the implementation of the non-inlined, non-templated member -// functions of the ZAnalysis class. -// - -#include "ZAnalysis.h" -#include "ThePEG/Repository/EventGenerator.h" -#include "ThePEG/EventRecord/Event.h" -#include "ThePEG/Interface/ClassDocumentation.h" -#include "ThePEG/PDT/EnumParticles.h" - -using namespace Herwig; - -ZAnalysis::ZAnalysis() : ZmassHadron_(82.,102.,100), ZmassDetector_(82.,102.,100) -{} - -void ZAnalysis::analyze(tEventPtr event, long ieve, int loop, int state) { - AcerDet::analyze(event, ieve, loop, state); - // detector level - // require 2 leptons - if(numberOfLeptons()!=2) return; - // require opposite sign - if(leptonID()[0]!=-leptonID()[1]) return; - Lorentz5Momentum pz = leptonMomentum()[0]+leptonMomentum()[1]; - double mz = pz.m()/GeV; - ZmassDetector_ += mz; - // hadron level - StepVector::const_iterator sit =event->primaryCollision()->steps().begin(); - StepVector::const_iterator stest =event->primaryCollision()->steps().end(); - StepVector::const_iterator send=sit; - ++send; - if(send==stest) --send; - ++send; - if(send==stest) --send; - ++send; - pz = LorentzMomentum(); - for(;sit!=send;++sit) { - ParticleSet part=(**sit).all(); - ParticleSet::const_iterator iter = part.begin(), end = part.end(); - for( ;iter!=end;++iter) { - if((**iter).children().size()!=2) continue; - if((**iter).id()==ParticleID::Z0||(**iter).id()==ParticleID::gamma) { - pz=(*iter)->momentum(); - double mz = pz.mass()/GeV; - ZmassHadron_ += mz; - } - } - } -} - -IBPtr ZAnalysis::clone() const { - return new_ptr(*this); -} - -IBPtr ZAnalysis::fullclone() const { - return new_ptr(*this); -} - - -// If needed, insert default implementations of virtual function defined -// in the InterfacedBase class here (using ThePEG-interfaced-impl in Emacs). - - -NoPIOClassDescription ZAnalysis::initZAnalysis; -// Definition of the static class description member. - -void ZAnalysis::Init() { - - static ClassDocumentation documentation - ("There is no documentation for the ZAnalysis class"); - -} - -void ZAnalysis::dofinish() { - string fname = generator()->filename() + string("-") + name() + string(".top"); - ofstream outfile(fname.c_str()); - string title; - using namespace HistogramOptions; - ZmassHadron_ .topdrawOutput(outfile,Frame,"BLACK","Z mass"); - ZmassDetector_.topdrawOutput(outfile,None,"RED"); - outfile.close(); - AcerDet::dofinish(); -} diff --git a/Contrib/AcerDetInterface/ZAnalysis.h b/Contrib/AcerDetInterface/ZAnalysis.h deleted file mode 100644 --- a/Contrib/AcerDetInterface/ZAnalysis.h +++ /dev/null @@ -1,157 +0,0 @@ -// -*- C++ -*- -#ifndef HERWIG_ZAnalysis_H -#define HERWIG_ZAnalysis_H -// -// This is the declaration of the ZAnalysis class. -// - -#include "AcerDet.h" -#include "Herwig/Utilities/Histogram.h" - -namespace Herwig { - -using namespace ThePEG; - -/** - * The ZAnalysis class is a simple example of using the interface - * to AcerDet to look at the Z mass at the hadron and detector levels - * - * @see \ref ZAnalysisInterfaces "The interfaces" - * defined for ZAnalysis. - */ -class ZAnalysis: public AcerDet { - -public: - - /** - * The default constructor. - */ - ZAnalysis(); - - /** @name Virtual functions required by the AnalysisHandler class. */ - //@{ - /** - * Analyze a given Event. Note that a fully generated event - * may be presented several times, if it has been manipulated in - * between. The default version of this function will call transform - * to make a lorentz transformation of the whole event, then extract - * all final state particles and call analyze(tPVector) of this - * analysis object and those of all associated analysis objects. The - * default version will not, however, do anything on events which - * have not been fully generated, or have been manipulated in any - * way. - * @param event pointer to the Event to be analyzed. - * @param ieve the event number. - * @param loop the number of times this event has been presented. - * If negative the event is now fully generated. - * @param state a number different from zero if the event has been - * manipulated in some way since it was last presented. - */ - virtual void analyze(tEventPtr event, long ieve, int loop, int state); - //@} - -public: - - /** - * The standard Init function used to initialize the interfaces. - * Called exactly once for each class by the class description system - * before the main function starts or - * when this class is dynamically loaded. - */ - static void Init(); - -protected: - - /** @name Clone Methods. */ - //@{ - /** - * Make a simple clone of this object. - * @return a pointer to the new object. - */ - virtual IBPtr clone() const; - - /** Make a clone of this object, possibly modifying the cloned object - * to make it sane. - * @return a pointer to the new object. - */ - virtual IBPtr fullclone() const; - //@} - -protected: - - /** @name Standard Interfaced functions. */ - //@{ - /** - * Finalize this object. Called in the run phase just after a - * run has ended. Used eg. to write out statistics. - */ - virtual void dofinish(); - //@} - - -private: - - /** - * The static object used to initialize the description of this class. - * Indicates that this is an concrete class without persistent data. - */ - static NoPIOClassDescription initZAnalysis; - - /** - * The assignment operator is private and must never be called. - * In fact, it should not even be implemented. - */ - ZAnalysis & operator=(const ZAnalysis &) = delete; - -private: - - /** - * Z mass at the hadron level - */ - Histogram ZmassHadron_; - - /** - * Z mass at the detector level - */ - Histogram ZmassDetector_; - -}; - -} - -#include "ThePEG/Utilities/ClassTraits.h" - -namespace ThePEG { - -/** @cond TRAITSPECIALIZATIONS */ - -/** This template specialization informs ThePEG about the - * base classes of ZAnalysis. */ -template <> -struct BaseClassTrait { - /** Typedef of the first base class of ZAnalysis. */ - typedef Herwig::AcerDet NthBase; -}; - -/** This template specialization informs ThePEG about the name of - * the ZAnalysis class and the shared object where it is defined. */ -template <> -struct ClassTraits - : public ClassTraitsBase { - /** Return a platform-independent class name */ - static string className() { return "Herwig::ZAnalysis"; } - /** - * The name of a file containing the dynamic library where the class - * ZAnalysis is implemented. It may also include several, space-separated, - * libraries if the class ZAnalysis depends on other classes (base classes - * excepted). In this case the listed libraries will be dynamically - * linked in the order they are specified. - */ - static string library() { return "HwAcerDet.so ZAnalysis.so"; } -}; - -/** @endcond */ - -} - -#endif /* HERWIG_ZAnalysis_H */ diff --git a/Contrib/AcerDetInterface/acerdet.dat b/Contrib/AcerDetInterface/acerdet.dat deleted file mode 100755 --- a/Contrib/AcerDetInterface/acerdet.dat +++ /dev/null @@ -1,59 +0,0 @@ -C------ flags and switches --------------- - 10000 --- LPAR(1) ....id for histograms - 1 --- LPAR(2) ....smearing on=1, off=0 - 1 --- LPAR(3) ....B-field on=1, off=0 - 66 --- LPAR(4) ....code for SUSY LSP particle - 1 --- LPAR(5) ....b- and c-jets labeling on=1, off=0 - 1 --- LPAR(6) ....tau-jets labeling on=1, off=0 - 1 --- LPAR(7) ....jet calibration on=1, off=0 -C------ parameters for ACDCEL --------------- - 5.000 --- YPAR(1) ....rapidity coverage - 0.500 --- YPAR(2) ....min p_T for B-field - 0.000 --- YPAR(3) ....min E_T for cell - 3.200 --- YPAR(4) ....eta transition in cells granularity - 0.100 --- YPAR(5) ....granularity in eta (within YPAR(17)), 2x outside - 0.100 --- YPAR(6) ....granularity in phi (within YPAR(17)), 2x outside -C------ parameters for ACDCLU --------------- - 5.000 --- YPAR(10) ....minimum E_T for cluster - 0.400 --- YPAR(11) ....cone R for clustering - 5.000 --- YPAR(12) ....rapidity coverage - 1.500 --- YPAR(13) ....min E_T for cluster initiator -C------ parameters for ACDMUO --------------- - 6.000 --- YPAR(20) ....minimum muon-momenta to be detected - 2.500 --- YPAR(21) ....maximum muon eta to be detected - 0.400 --- YPAR(27) ....min R_lj for muon-isolation - 0.200 --- YPAR(28) ....R_cone for energy deposition - 10.000 --- YPAR(29) ....max energy deposition for isol -C------ parameters for ACDPHO --------------- - 5.000 --- YPAR(30) ....minimum photon-momenta to be isol - 2.500 --- YPAR(31) ....maximum photon eta to be isol - 0.150 --- YPAR(35) ....min R_lj for photon-jet - 0.400 --- YPAR(37) ....min R_lj for photon-isolation - 0.200 --- YPAR(38) ....R_cone for energy deposition - 10.000 --- YPAR(39) ....max energy deposition for isol -C------ parameters for ACDELE --------------- - 5.000 --- YPAR(40) ....minimum electron-momenta to be isol - 2.500 --- YPAR(41) ....maximum electron eta to be isol - 0.150 --- YPAR(45) ....min R_lj for electron-jet - 0.400 --- YPAR(47) ....min R_lj for electron-isolation - 0.200 --- YPAR(48) ....R_cone for energy deposition - 10.000 --- YPAR(49) ....max energy deposition for isol -C------ parameters for ACDJET --------------- - 10.000 --- YPAR(51) ....jets energy_min threshold - 5.000 --- YPAR(52) ....rapidity coverage for jets -C------ parameters for ACDBJE --------------- - 5.000 --- YPAR(61) ....minimum b-quark pT (after FSR) momenta for b-jet label - 2.500 --- YPAR(62) ....maximum b-quark eta for b-jet label - 0.200 --- YPAR(63) ....max R_bj for b-jet label -C------ parameters for ACDCJE --------------- - 5.000 --- YPAR(71) ....minimum c-quark pT (after FSR) momenta for c-jet label - 2.500 --- YPAR(72) ....maximum c-quark eta for c-jet label - 0.200 --- YPAR(73) ....max R_cj for c-jet label -C------ parameters for ACDTAU --------------- - 10.000 --- YPAR(90) ....minimum tau-had pT for tau-jet label - 2.500 --- YPAR(91) ....maximum tau-eta for tau-jet label - 0.300 --- YPAR(92) ....max R_tauj for tau-jet - 0.900 --- YPAR(93) ....max R_tauj for tau-jet -C------ parameters for ACDMIS --------------- - 0.000 --- YPAR(80) ....min E_T for energy in cell to count unused cell -C------ end of data files --------------- diff --git a/Contrib/PGSInterface/LHC.in b/Contrib/PGSInterface/LHC.in deleted file mode 100644 --- a/Contrib/PGSInterface/LHC.in +++ /dev/null @@ -1,42 +0,0 @@ -# -*- ThePEG-repository -*- -################################################## -# Example generator based on LHC parameters -# usage: Herwig read LHC.in -################################################## -read snippets/PPCollider.in -################################################## -# Technical parameters for this run -################################################## -cd /Herwig/Generators -set EventGenerator:NumberOfEvents 10000000 -set EventGenerator:RandomNumberGenerator:Seed 31122001 -set EventGenerator:PrintEvent 10 -set EventGenerator:MaxErrors 10000 - -################################################## -# LHC physics parameters (override defaults here) -################################################## -set EventGenerator:EventHandler:LuminosityFunction:Energy 14000.0 - -# Intrinsic pT tune extrapolated to LHC energy -set /Herwig/Shower/ShowerHandler:IntrinsicPtGaussian 2.2*GeV - -################################################## -# Matrix Elements for hadron-hadron collisions -# (by default only gamma/Z switched on) -################################################## -cd /Herwig/MatrixElements/ - -insert SubProcess:MatrixElements[0] MEqq2gZ2ff -set MEqq2gZ2ff:Process Electron -cd /Herwig/Generators - -library HwPGSInterface.so -create Herwig::ZAnalysis /Herwig/Analysis/ZAnalysis ZAnalysis.so -insert EventGenerator:AnalysisHandlers 0 /Herwig/Analysis/ZAnalysis - - -################################################## -# Save run for later usage with 'Herwig run' -################################################## -saverun LHC EventGenerator diff --git a/Contrib/PGSInterface/Makefile.in b/Contrib/PGSInterface/Makefile.in deleted file mode 100644 --- a/Contrib/PGSInterface/Makefile.in +++ /dev/null @@ -1,47 +0,0 @@ -# -*- Makefile -*- (for emacs) - -# -# This Makefile is intended for compiling Herwig++ plugins -# You can find plugins here: INSERT URL -# -# This Makefile received very little testing, -# any bug reports are very welcome! -# - -# location of include files (etc) -THEPEGINCLUDE = -GSLINCLUDE = -HERWIGINCLUDE = -FC = -FCLIBS = -LDFLAGS = -SHARED_FLAG = -HEPMCLIBS = -L/scratch/richardn/montecarlo/utilities/lib -PGSPATH = /scratch/richardn/montecarlo/detector/PGS/ -PGSLIB = -L$(PGSPATH)/lib -lpgslib -lstdhep -lFmcfio -lpythia -ltauola -lherwig -INCLUDE = $(THEPEGINCLUDE) $(GSLINCLUDE) $(HERWIGINCLUDE) -# -# C++ flags -# -CXX = -CXXFLAGS = - -ALLCCFILES=$(shell echo *.cc) - -default : HwPGSInterface.so ZAnalysis.so - -HwPGSInterface.so : PGSInterface.cc PGSInterface.h PGSInterface.o - $(CXX) -fPIC $(CPPFLAGS) $(INCLUDE) $(CXXFLAGS) $(SHARED_FLAG) $(LDFLAGS) \ - PGSInterface.o PGSInterface.cc -o HwPGSInterface.so \ - $(PGSLIB) $(HEPMCLIBS) -lHepMC -lHepMCfio $(FCLIBS) - -ZAnalysis.so : ZAnalysis.cc ZAnalysis.h - $(CXX) -fPIC $(CPPFLAGS) $(INCLUDE) $(CXXFLAGS) $(SHARED_FLAG) $(LDFLAGS) \ - ZAnalysis.cc -o ZAnalysis.so \ - $(PGSLIB) $(HEPMCLIBS) -lHepMC -lHepMCfio $(FCLIBS) - -PGSInterface.o: PGSInterface.f - $(FC) -c -fPIC -fno-second-underscore PGSInterface.f - -clean: - rm -f *.o *.so diff --git a/Contrib/PGSInterface/PGSInterface.cc b/Contrib/PGSInterface/PGSInterface.cc deleted file mode 100644 --- a/Contrib/PGSInterface/PGSInterface.cc +++ /dev/null @@ -1,265 +0,0 @@ -// -*- C++ -*- -// -// This is the implementation of the non-inlined, non-templated member -// functions of the PGSInterface class. -// - -#include "PGSInterface.h" -#include "ThePEG/Utilities/DescribeClass.h" -#include "ThePEG/Interface/ClassDocumentation.h" -#include "ThePEG/Interface/Parameter.h" -#include "ThePEG/Persistency/PersistentOStream.h" -#include "ThePEG/Persistency/PersistentIStream.h" -#include "ThePEG/PDT/EnumParticles.h" -#include "ThePEG/Config/HepMCHelper.h" -#include "HepMC/HEPEVT_Wrapper.h" - -using namespace Herwig; - -extern "C" { - // initialize PGS - void pgs_initialize_(); - // call PGS trigger code - void pgs_trigger_(); - // call PGS reconstruction code - void pgs_recon_(); - // common block for PGS input parameters - extern struct { - int numarg; // number of arguments supplied to program - char pgs_args[10][40]; // list of arguments (char*80) - int nevpgs; // number of events to generate/read - int target_lum; // target luminosity (in pb-1) - int nprpgs; // number of events to print out - int pgs_iseed,pgs_jseed; // seeds for pgs_ranmar - int pgs_log_unit; // log file unit number - char optpgs[6]; // type of run: 'PYTHIA', 'ISAJET', 'FILE', - char evtlum[6]; // number of events ('events') or luminosity ('pb-1') - char pgs_input_file[80]; // input file - char pgs_output_file[80]; // output file - char pgs_log_file[80]; // log file - char pgs_param_file[80]; // detector parameter file - char pgs_isajet_decay[80];// ISAJET decay table file name - char pgs_isajet_cards[80];// ISAJET card file name - char pgs_pythia_cards[80];// PYTHIA card file name - int pgs_herwig_proc; // HERWIG process to generate - char pgs_herwig_susy[80]; // HERWIG SUSY data file - char pgs_alpgen_stem[80]; // ALPGEN unweighted events file stem - } pgsevt_; - // common block for PGS reconstructed objects - const int pgsrec_nojmx = 500; - extern struct { - int numobj,dumobj; // number of reconstructed objects - int indobj[pgsrec_nojmx]; // index to HEPEVT particle (where relevant) - int typobj[pgsrec_nojmx]; // reconstructed type - double pobj[pgsrec_nojmx][4]; // four vector of reconstructed object - double qobj[pgsrec_nojmx]; // charge of reconstructed object - double vecobj[pgsrec_nojmx][10]; // interesting object quantities - int unique[pgsrec_nojmx]; // true for object if it is uniquely identified - // and passes cuts in pgs_object_cuts - } pgsrec_; - - const int pgsnetamax=600; - const int pgsnphimax=600; - extern struct { - double ecal[pgsnetamax][pgsnphimax]; // electromagnetic energy in each tower - double hcal[pgsnetamax][pgsnphimax]; // hadronic energy in each tower - double met_cal; // calorimeter missing ET - double phi_met_cal; // calorimeter missing ET phi - double met_cor; // missing ET corrected for muons - double phi_met_cor; // corrected missing ET phi - } pgscal_; - -} - -void PGSInterface::persistentOutput(PersistentOStream & os) const { - os << _pgs_param_file; -} - -void PGSInterface::persistentInput(PersistentIStream & is, int) { - is >> _pgs_param_file; -} - -// The following static variable is needed for the type -// description system in ThePEG. -DescribeClass -describeHerwigPGSInterface("Herwig::PGSInterface", "HwPGSInterface.so"); - -void PGSInterface::Init() { - - static ClassDocumentation documentation - ("The PGSInterface class is designed to allow the PGS detector" - " simulation to be used as an analysis handler in Herwig"); - -} - -void PGSInterface::dofinish() { - AnalysisHandler::dofinish(); - // delete the converter from HepMC to HEPEVT - delete _converter; -} - -void PGSInterface::doinitrun() { - AnalysisHandler::doinitrun(); - // create the converter from HepMC to HEPEVT - _converter = new HepMC::IO_HEPEVT(); - // convert variables and pass to PGS - // name of detector parameters file - const char *temp; - temp = _pgs_param_file.c_str(); - for(unsigned int ix=0;ix<80;++ix) { - if(temp[ix]=='\0') break; - pgsevt_.pgs_param_file[ix]=temp[ix]; - } - // initialize PGS - pgs_initialize_(); -} - -void PGSInterface::analyze(tEventPtr event, long ieve, int loop, int state) { - // check energy unit - if(HepMC::Units::default_momentum_unit()!=HepMC::Units::GEV) - throw Exception() << "Must be using GeV in HepMC if using PGS" - << " in PGSInterface::analyze()" - << Exception::runerror; - // convert the event to HepMC - HepMC::GenEvent * hepmc = HepMCConverter::convert(*event); - HepMC::HEPEVT_Wrapper::set_max_number_entries(4000); - // convert to HEPEVT - _converter->write_event(hepmc); - // call PGS trigger code - pgs_trigger_(); - // call PGS reconstruction code - pgs_recon_(); - // convert the unique reconstructed objects - _objects.clear(); - for(int ix=0;ix0.001&&pgsrec_.vecobj[ix][7]>0.001) - _objects.back().btagging = Both; - else if(pgsrec_.vecobj[ix][6]>0.001) - _objects.back().btagging = Loose; - else if(pgsrec_.vecobj[ix][7]>0.001) - _objects.back().btagging = Tight; - else - _objects.back().btagging = None; - // cluster width - _objects.back().clusterWidth = pgsrec_.vecobj[ix][4]*GeV; - } - // heavy charged - else { - _objects.back().PDGcode = 0; - } - } - // missing ET - _calorimeterMET = make_pair(pgscal_.met_cal*GeV,pgscal_.phi_met_cal); - _muonMET = make_pair(pgscal_.met_cor*GeV,pgscal_.phi_met_cor); - // delete the HepMC event - delete hepmc; -} diff --git a/Contrib/PGSInterface/PGSInterface.f b/Contrib/PGSInterface/PGSInterface.f deleted file mode 100644 --- a/Contrib/PGSInterface/PGSInterface.f +++ /dev/null @@ -1,15 +0,0 @@ -c dummy routines to make linker happy - subroutine pgs_user_herwig(process) - print *,'pgs_user_herwig called' - stop - end - - subroutine pgs_user_pythia - print *,'pgs_user_pythia called' - stop - end - - subroutine pgs_user_event - print *,'pgs_user_event called' - stop - end diff --git a/Contrib/PGSInterface/PGSInterface.h b/Contrib/PGSInterface/PGSInterface.h deleted file mode 100644 --- a/Contrib/PGSInterface/PGSInterface.h +++ /dev/null @@ -1,301 +0,0 @@ -// -*- C++ -*- -#ifndef HERWIG_PGSInterface_H -#define HERWIG_PGSInterface_H -// -// This is the declaration of the PGSInterface class. -// - -#include "ThePEG/Handlers/AnalysisHandler.h" -#include "ThePEG/Vectors/Lorentz5Vector.h" -#include "HepMC/GenEvent.h" -#include "HepMC/IO_HEPEVT.h" - -namespace Herwig { -using namespace ThePEG; - -/** - * Enumeration for the different types of reconstructed objects - */ -enum ObjectType { - Photon=0, /**< Photons */ - Electron, /**< Electrons */ - Muon, /**< Muons */ - Tau, /**< Taus */ - Jet, /**< Jets */ - HeavyCharged /**< Heavy Charged Objects */ -}; - -/** - * Enumeration for the type of b-tag - */ -enum bTag { - None=0, /**< No b-tag */ - Loose, /**< Loose b-tag */ - Tight, /**< Tight b-tag */ - Both , /**< Both loose and tight b-tag */ -}; - -/** - * Struct to store the properties of the reconstructed objects - */ -struct ReconstructedObject { - - /** - * Type of object - */ - ObjectType type; - - /** - * Momentum of the object - */ - Lorentz5Momentum momentum; - - /** - * Charge of the particle - */ - double charge; - - /** - * Electromagnetic energy - */ - Energy emenergy; - - /** - * Hadronic energy - */ - Energy hadenergy; - - /** - * Track energy - */ - Energy trackenergy; - - /** - * Number of tracks - */ - int numtracks; - - /** - * PDG Code for the particle - */ - int PDGcode; - - /** - * Whether it is a loose or tight b-tag - */ - bTag btagging; - - /** - * Transverse energy - */ - Energy ET; - - /** - * Transverse energy in the isolation cone - */ - Energy isolationET; - - /** - * Transverse momentum in the isolation cone - */ - Energy isolationpT; - - /** - * Ratio of hadronic to electromagentic energy - */ - double hadronicem; - - /** - * Ratio of electromagnetic energy to track momentum - */ - double ep; - - /** - * track isolation energy - */ - Energy trkisoEnergy; - - /** - * Number of pi0 in cone for tau - */ - int npi0; - - /** - * Sum of pt of pi0 not in cone for tau - */ - Energy taupTpi0; - - /** - * Sum of pt of tracks not in cone for tau - */ - Energy taupTtracks; - - /** - * pT of highest track in tau decays - */ - Energy ptHightestTrack; - - /** - * Cluster width - */ - Energy clusterWidth; -}; - -/** - * Here is the documentation of the PGSInterface class. - * - * @see \ref PGSInterfaceInterfaces "The interfaces" - * defined for PGSInterface. - */ -class PGSInterface: public AnalysisHandler { - -public: - - /** - * The default constructor. - */ - inline PGSInterface() : _pgs_param_file("lhc.par") - {} - - /** @name Virtual functions required by the AnalysisHandler class. */ - //@{ - /** - * Analyze a given Event. Note that a fully generated event - * may be presented several times, if it has been manipulated in - * between. The default version of this function will call transform - * to make a lorentz transformation of the whole event, then extract - * all final state particles and call analyze(tPVector) of this - * analysis object and those of all associated analysis objects. The - * default version will not, however, do anything on events which - * have not been fully generated, or have been manipulated in any - * way. - * @param event pointer to the Event to be analyzed. - * @param ieve the event number. - * @param loop the number of times this event has been presented. - * If negative the event is now fully generated. - * @param state a number different from zero if the event has been - * manipulated in some way since it was last presented. - */ - virtual void analyze(tEventPtr event, long ieve, int loop, int state); - //@} - - /** - * Public access to the reconstructed objects - */ - inline vector reconstructedObjects() const { - return _objects; - } - - /** - * Missing transverse energy in calorimeter and azimuthal angle - */ - inline pair missingETCalorimeter() const { - return _calorimeterMET; - } - /** - * Missing transverse energy after muon correction and azimuthal angle - */ - inline pair missingETCorrected() const { - return _muonMET; - } - -public: - - /** @name Functions used by the persistent I/O system. */ - //@{ - /** - * Function used to write out object persistently. - * @param os the persistent output stream written to. - */ - void persistentOutput(PersistentOStream & os) const; - - /** - * Function used to read in object persistently. - * @param is the persistent input stream read from. - * @param version the version number of the object when written. - */ - void persistentInput(PersistentIStream & is, int version); - //@} - - /** - * The standard Init function used to initialize the interfaces. - * Called exactly once for each class by the class description system - * before the main function starts or - * when this class is dynamically loaded. - */ - static void Init(); - -protected: - - /** @name Clone Methods. */ - //@{ - /** - * Make a simple clone of this object. - * @return a pointer to the new object. - */ - inline virtual IBPtr clone() const {return new_ptr(*this);} - - /** Make a clone of this object, possibly modifying the cloned object - * to make it sane. - * @return a pointer to the new object. - */ - inline virtual IBPtr fullclone() const {return new_ptr(*this);} - //@} - - -protected: - - /** @name Standard Interfaced functions. */ - //@{ - /** - * Initialize this object. Called in the run phase just before - * a run begins. - */ - virtual void doinitrun(); - - /** - * Finalize this object. Called in the run phase just after a - * run has ended. Used eg. to write out statistics. - */ - virtual void dofinish(); - //@} - -private: - - /** - * The assignment operator is private and must never be called. - * In fact, it should not even be implemented. - */ - PGSInterface & operator=(const PGSInterface &) = delete; - -private: - - /** - * Converter from HepMC to HEPEVT - */ - HepMC::IO_HEPEVT * _converter; - - /** - * file name for the PGS parameters - */ - string _pgs_param_file; - - /** - * The reconstructed objects after PGS - */ - vector _objects; - - /** - * missing ET measured in calorimeter - */ - pair _calorimeterMET; - - /** - * missing ET aftrer muon correction - */ - pair _muonMET; -}; - -} - -#endif /* HERWIG_PGSInterface_H */ diff --git a/Contrib/PGSInterface/ZAnalysis.cc b/Contrib/PGSInterface/ZAnalysis.cc deleted file mode 100644 --- a/Contrib/PGSInterface/ZAnalysis.cc +++ /dev/null @@ -1,101 +0,0 @@ -// -*- C++ -*- -// -// This is the implementation of the non-inlined, non-templated member -// functions of the ZAnalysis class. -// - -#include "ZAnalysis.h" -#include "ThePEG/Utilities/DescribeClass.h" -#include "ThePEG/Repository/EventGenerator.h" -#include "ThePEG/EventRecord/Event.h" -#include "ThePEG/Interface/ClassDocumentation.h" -#include "ThePEG/PDT/EnumParticles.h" - -using namespace Herwig; - -ZAnalysis::ZAnalysis() : ZmassHadron_(82.,102.,100), ZmassDetector_(82.,102.,100) -{} - -void ZAnalysis::analyze(tEventPtr event, long ieve, int loop, int state) { - PGSInterface::analyze(event, ieve, loop, state); - // detector level - // require two opposite sign same flavour leptons - unsigned int neminus(0),neplus(0),nmuminus(0),nmuplus(0); - Lorentz5Momentum pz; - for(unsigned int ix=0;ixprimaryCollision()->steps().begin(); - StepVector::const_iterator stest =event->primaryCollision()->steps().end(); - StepVector::const_iterator send=sit; - ++send; - if(send==stest) --send; - ++send; - if(send==stest) --send; - ++send; - pz = LorentzMomentum(); - for(;sit!=send;++sit) { - ParticleSet part=(**sit).all(); - ParticleSet::const_iterator iter = part.begin(), end = part.end(); - for( ;iter!=end;++iter) { - if((**iter).children().size()!=2) continue; - if((**iter).id()==ParticleID::Z0||(**iter).id()==ParticleID::gamma) { - pz=(*iter)->momentum(); - double mz = pz.mass()/GeV; - ZmassHadron_ += mz; - } - } - } -} - -IBPtr ZAnalysis::clone() const { - return new_ptr(*this); -} - -IBPtr ZAnalysis::fullclone() const { - return new_ptr(*this); -} - - -// If needed, insert default implementations of virtual function defined -// in the InterfacedBase class here (using ThePEG-interfaced-impl in Emacs). - - -// The following static variable is needed for the type -// description system in ThePEG. -DescribeNoPIOClass -describeHerwigZAnalysis("Herwig::ZAnalysis", "HwPGSInterface.so ZAnalysis.so"); - -void ZAnalysis::Init() { - - static ClassDocumentation documentation - ("There is no documentation for the ZAnalysis class"); - -} - -void ZAnalysis::dofinish() { - string fname = generator()->filename() + string("-") + name() + string(".top"); - ofstream outfile(fname.c_str()); - string title; - using namespace HistogramOptions; - ZmassHadron_ .topdrawOutput(outfile,Frame,"BLACK","Z mass"); - ZmassDetector_.topdrawOutput(outfile,HistogramOptions::None,"RED"); - outfile.close(); - PGSInterface::dofinish(); -} diff --git a/Contrib/PGSInterface/ZAnalysis.h b/Contrib/PGSInterface/ZAnalysis.h deleted file mode 100644 --- a/Contrib/PGSInterface/ZAnalysis.h +++ /dev/null @@ -1,116 +0,0 @@ -// -*- C++ -*- -#ifndef HERWIG_ZAnalysis_H -#define HERWIG_ZAnalysis_H -// -// This is the declaration of the ZAnalysis class. -// - -#include "PGSInterface.h" -#include "Herwig/Utilities/Histogram.h" - -namespace Herwig { - -using namespace ThePEG; - -/** - * The ZAnalysis class is a simple example of using the interface - * to PGS to look at the Z mass at the hadron and detector levels - * - * @see \ref ZAnalysisInterfaces "The interfaces" - * defined for ZAnalysis. - */ -class ZAnalysis: public PGSInterface { - -public: - - /** - * The default constructor. - */ - ZAnalysis(); - - /** @name Virtual functions required by the AnalysisHandler class. */ - //@{ - /** - * Analyze a given Event. Note that a fully generated event - * may be presented several times, if it has been manipulated in - * between. The default version of this function will call transform - * to make a lorentz transformation of the whole event, then extract - * all final state particles and call analyze(tPVector) of this - * analysis object and those of all associated analysis objects. The - * default version will not, however, do anything on events which - * have not been fully generated, or have been manipulated in any - * way. - * @param event pointer to the Event to be analyzed. - * @param ieve the event number. - * @param loop the number of times this event has been presented. - * If negative the event is now fully generated. - * @param state a number different from zero if the event has been - * manipulated in some way since it was last presented. - */ - virtual void analyze(tEventPtr event, long ieve, int loop, int state); - //@} - -public: - - /** - * The standard Init function used to initialize the interfaces. - * Called exactly once for each class by the class description system - * before the main function starts or - * when this class is dynamically loaded. - */ - static void Init(); - -protected: - - /** @name Clone Methods. */ - //@{ - /** - * Make a simple clone of this object. - * @return a pointer to the new object. - */ - virtual IBPtr clone() const; - - /** Make a clone of this object, possibly modifying the cloned object - * to make it sane. - * @return a pointer to the new object. - */ - virtual IBPtr fullclone() const; - //@} - -protected: - - /** @name Standard Interfaced functions. */ - //@{ - /** - * Finalize this object. Called in the run phase just after a - * run has ended. Used eg. to write out statistics. - */ - virtual void dofinish(); - //@} - - -private: - - /** - * The assignment operator is private and must never be called. - * In fact, it should not even be implemented. - */ - ZAnalysis & operator=(const ZAnalysis &) = delete; - -private: - - /** - * Z mass at the hadron level - */ - Histogram ZmassHadron_; - - /** - * Z mass at the detector level - */ - Histogram ZmassDetector_; - -}; - -} - -#endif /* HERWIG_ZAnalysis_H */ diff --git a/Contrib/PGSInterface/lhc.par b/Contrib/PGSInterface/lhc.par deleted file mode 100644 --- a/Contrib/PGSInterface/lhc.par +++ /dev/null @@ -1,23 +0,0 @@ -LHC ! parameter set name -320 ! eta cells in calorimeter -200 ! phi cells in calorimeter -0.0314159 ! eta width of calorimeter cells |eta| < 5 -0.0314159 ! phi width of calorimeter cells -0.0044 ! electromagnetic calorimeter resolution const -0.024 ! electromagnetic calorimeter resolution * sqrt(E) -0.8 ! hadronic calolrimeter resolution * sqrt(E) -0.2 ! MET resolution -0.01 ! calorimeter cell edge crack fraction -cone ! jet finding algorithm (cone or ktjet) -5.0 ! calorimeter trigger cluster finding seed threshold (GeV) -1.0 ! calorimeter trigger cluster finding shoulder threshold (GeV) -0.5 ! calorimeter kt cluster finder cone size (delta R) -2.0 ! outer radius of tracker (m) -4.0 ! magnetic field (T) -0.000013 ! sagitta resolution (m) -0.98 ! track finding efficiency -1.00 ! minimum track pt (GeV/c) -3.0 ! tracking eta coverage -3.0 ! e/gamma eta coverage -2.4 ! muon eta coverage -2.0 ! tau eta coverage diff --git a/Contrib/PGSInterface/mass_width_2004.mc b/Contrib/PGSInterface/mass_width_2004.mc deleted file mode 100644 --- a/Contrib/PGSInterface/mass_width_2004.mc +++ /dev/null @@ -1,360 +0,0 @@ -* -* MASSES, WIDTHS, AND MC ID NUMBERS FROM 2004 EDITION OF RPP -* -* The following values were generated on 22-Jun-2004 by the Berkeley Particle -* Data Group from the Review of Particle Properties database and are intended -* for use in Monte Carlo programs. -* -* For questions regarding distribution or content of this file, contact -* the Particle Data Group at pdg@lbl.gov. -* -* To process the images in this file: -* 1) ignore documentation lines that begin with an asterisk -* 2) in a FORTRAN program, process data lines with -* FORMAT (BN, A1, 4I8, 1X, E15.0, 2(1X, E8.0), 1X, A21) -* 3) column 1 contains either "M" or "W" indicating mass or width -* 2 - 9 \ Monte Carlo particle numbers as described in the "Review of -* 10 - 17 | Particle Properties". Charge states appear, as appropriate, -* 18 - 25 | from left-to-right in the order -, 0, +, ++. -* 26 - 33 / -* 34 blank -* 35 - 49 central value of the mass or width (double precision) -* 50 blank -* 51 - 58 positive error -* 59 blank -* 60 - 67 negative error -* 68 blank -* 69 - 89 particle name left-justified in the field and -* charge states right-justified in the field. -* This field is for ease of visual examination of the file and -* should not be taken as a standardized presentation of -* particle names. -* -* Particle ID(s) Value (GeV) Errors (GeV) Name Charges -M 22 0.E+00 +0.0E+00 -0.0E+00 gamma 0 -W 22 0.E+00 +0.0E+00 -0.0E+00 gamma 0 -M 24 8.042E+01 +4.0E-02 -4.0E-02 W + -W 24 2.12E+00 +4.0E-02 -4.0E-02 W + -M 23 9.11876E+01 +2.1E-03 -2.1E-03 Z 0 -W 23 2.4952E+00 +2.3E-03 -2.3E-03 Z 0 -W 11 0.E+00 +0.0E+00 -0.0E+00 e - -M 11 5.1099892E-04 +4.0E-11 -4.0E-11 e - -M 13 1.05658369E-01 +9.0E-09 -9.0E-09 mu - -W 13 2.99591E-19 +5.0E-24 -5.0E-24 mu - -M 15 1.77699E+00 +2.9E-04 -2.6E-04 tau - -W 15 2.265E-12 +9.0E-15 -9.0E-15 tau - -M 12 0.E+00 +0.0E+00 -0.0E+00 nu(e) 0 -W 12 0.E+00 +0.0E+00 -0.0E+00 nu(e) 0 -M 14 0.E+00 +0.0E+00 -0.0E+00 nu(mu) 0 -W 14 0.E+00 +0.0E+00 -0.0E+00 nu(mu) 0 -M 16 0.E+00 +0.0E+00 -0.0E+00 nu(tau) 0 -W 16 0.E+00 +0.0E+00 -0.0E+00 nu(tau) 0 -M 6 1.74E+02 +5.0E+00 -5.0E+00 t 2/3 -M 211 1.3957018E-01 +3.5E-07 -3.5E-07 pi + -W 211 2.5284E-17 +5.0E-21 -5.0E-21 pi + -M 111 1.349766E-01 +6.0E-07 -6.0E-07 pi 0 -W 111 7.8E-09 +6.0E-10 -5.0E-10 pi 0 -M 221 5.4775E-01 +1.2E-04 -1.2E-04 eta 0 -W 221 1.29E-06 +7.0E-08 -7.0E-08 eta 0 -M 113 213 7.758E-01 +5.0E-04 -5.0E-04 rho(770) 0,+ -W 113 213 1.503E-01 +1.6E-03 -1.6E-03 rho(770) 0,+ -M 223 7.8259E-01 +1.1E-04 -1.1E-04 omega(782) 0 -W 223 8.49E-03 +8.0E-05 -8.0E-05 omega(782) 0 -M 331 9.5778E-01 +1.4E-04 -1.4E-04 eta'(958) 0 -W 331 2.02E-04 +1.6E-05 -1.6E-05 eta'(958) 0 -M 9010221 9.80E-01 +1.0E-02 -1.0E-02 f(0)(980) 0 -M 9000111 9000211 9.847E-01 +1.2E-03 -1.2E-03 a(0)(980) 0,+ -M 333 1.019456E+00 +2.0E-05 -2.0E-05 phi(1020) 0 -W 333 4.26E-03 +5.0E-05 -5.0E-05 phi(1020) 0 -M 10223 1.170E+00 +2.0E-02 -2.0E-02 h(1)(1170) 0 -W 10223 3.6E-01 +4.0E-02 -4.0E-02 h(1)(1170) 0 -M 10113 10213 1.2295E+00 +3.2E-03 -3.2E-03 b(1)(1235) 0,+ -W 10113 10213 1.42E-01 +9.0E-03 -9.0E-03 b(1)(1235) 0,+ -M 20113 20213 1.23E+00 +4.0E-02 -4.0E-02 a(1)(1260) 0,+ -M 225 1.2754E+00 +1.2E-03 -1.2E-03 f(2)(1270) 0 -W 225 1.851E-01 +3.5E-03 -2.6E-03 f(2)(1270) 0 -M 20223 1.2818E+00 +6.0E-04 -6.0E-04 f(1)(1285) 0 -W 20223 2.41E-02 +1.1E-03 -1.1E-03 f(1)(1285) 0 -M 100221 1.294E+00 +4.0E-03 -4.0E-03 eta(1295) 0 -W 100221 5.5E-02 +5.0E-03 -5.0E-03 eta(1295) 0 -M 100111 100211 1.30E+00 +1.0E-01 -1.0E-01 pi(1300) 0,+ -M 115 215 1.3183E+00 +6.0E-04 -6.0E-04 a(2)(1320) 0,+ -W 115 215 1.07E-01 +5.0E-03 -5.0E-03 a(2)(1320) 0,+ -M 9000113 9000213 1.376E+00 +1.7E-02 -1.7E-02 pi(1)(1400) 0,+ -W 9000113 9000213 3.0E-01 +4.0E-02 -4.0E-02 pi(1)(1400) 0,+ -M 9020221 1.4103E+00 +2.6E-03 -2.6E-03 eta(1405) 0 -W 9020221 5.1E-02 +4.0E-03 -4.0E-03 eta(1405) 0 -M 20333 1.4263E+00 +9.0E-04 -9.0E-04 f(1)(1420) 0 -W 20333 5.49E-02 +2.6E-03 -2.6E-03 f(1)(1420) 0 -M 10111 10211 1.474E+00 +1.9E-02 -1.9E-02 a(0)(1450) 0,+ -W 10111 10211 2.65E-01 +1.3E-02 -1.3E-02 a(0)(1450) 0,+ -M 100113 100213 1.465E+00 +2.5E-02 -2.5E-02 rho(1450) 0,+ -W 100113 100213 4.0E-01 +6.0E-02 -6.0E-02 rho(1450) 0,+ -M 100331 1.476E+00 +4.0E-03 -4.0E-03 eta(1475) 0 -W 100331 8.7E-02 +9.0E-03 -9.0E-03 eta(1475) 0 -M 9030221 1.507E+00 +5.0E-03 -5.0E-03 f(0)(1500) 0 -W 9030221 1.09E-01 +7.0E-03 -7.0E-03 f(0)(1500) 0 -M 335 1.525E+00 +5.0E-03 -5.0E-03 f(2)'(1525) 0 -W 335 7.3E-02 +6.0E-03 -5.0E-03 f(2)'(1525) 0 -M 9010113 9010213 1.596E+00 +2.5E-02 -1.4E-02 pi(1)(1600) 0,+ -W 9010113 9010213 3.12E-01 +6.4E-02 -2.4E-02 pi(1)(1600) 0,+ -M 10225 1.617E+00 +5.0E-03 -5.0E-03 eta(2)(1645) 0 -W 10225 1.81E-01 +1.1E-02 -1.1E-02 eta(2)(1645) 0 -M 30223 1.670E+00 +3.0E-02 -3.0E-02 omega(1650) 0 -W 30223 3.15E-01 +3.5E-02 -3.5E-02 omega(1650) 0 -M 227 1.667E+00 +4.0E-03 -4.0E-03 omega(3)(1670) 0 -W 227 1.68E-01 +1.0E-02 -1.0E-02 omega(3)(1670) 0 -M 10115 10215 1.6724E+00 +3.2E-03 -3.2E-03 pi(2)(1670) 0,+ -W 10115 10215 2.59E-01 +9.0E-03 -9.0E-03 pi(2)(1670) 0,+ -M 100333 1.680E+00 +2.0E-02 -2.0E-02 phi(1680) 0 -W 100333 1.5E-01 +5.0E-02 -5.0E-02 phi(1680) 0 -M 117 217 1.6888E+00 +2.1E-03 -2.1E-03 rho(3)(1690) 0,+ -W 117 217 1.61E-01 +1.0E-02 -1.0E-02 rho(3)(1690) 0,+ -M 30113 30213 1.720E+00 +2.0E-02 -2.0E-02 rho(1700) 0,+ -W 30113 30213 2.5E-01 +1.0E-01 -1.0E-01 rho(1700) 0,+ -M 10331 1.714E+00 +5.0E-03 -5.0E-03 f(0)(1710) 0 -W 10331 1.40E-01 +1.0E-02 -1.0E-02 f(0)(1710) 0 -M 9010111 9010211 1.812E+00 +1.4E-02 -1.4E-02 pi(1800) 0,+ -W 9010111 9010211 2.07E-01 +1.3E-02 -1.3E-02 pi(1800) 0,+ -M 337 1.854E+00 +7.0E-03 -7.0E-03 phi(3)(1850) 0 -W 337 8.7E-02 +2.8E-02 -2.3E-02 phi(3)(1850) 0 -M 9050225 1.945E+00 +1.3E-02 -1.3E-02 f(2)(1950) 0 -W 9050225 4.75E-01 +1.9E-02 -1.9E-02 f(2)(1950) 0 -M 9060225 2.01E+00 +6.0E-02 -8.0E-02 f(2)(2010) 0 -W 9060225 2.0E-01 +6.0E-02 -6.0E-02 f(2)(2010) 0 -M 119 219 2.010E+00 +1.2E-02 -1.2E-02 a(4)(2040) 0,+ -W 119 219 3.5E-01 +4.0E-02 -4.0E-02 a(4)(2040) 0,+ -M 229 2.034E+00 +1.1E-02 -1.1E-02 f(4)(2050) 0 -W 229 2.22E-01 +1.9E-02 -1.9E-02 f(4)(2050) 0 -M 9080225 2.297E+00 +2.8E-02 -2.8E-02 f(2)(2300) 0 -W 9080225 1.5E-01 +4.0E-02 -4.0E-02 f(2)(2300) 0 -M 9090225 2.34E+00 +6.0E-02 -6.0E-02 f(2)(2340) 0 -W 9090225 3.2E-01 +8.0E-02 -7.0E-02 f(2)(2340) 0 -M 321 4.93677E-01 +1.6E-05 -1.6E-05 K + -W 321 5.315E-17 +1.0E-19 -1.0E-19 K + -M 311 4.97648E-01 +2.2E-05 -2.2E-05 K 0 -M 310 4.97648E-01 +2.2E-05 -2.2E-05 K(S) 0 -M 130 4.97648E-01 +2.2E-05 -2.2E-05 K(L) 0 -W 310 7.352E-15 +5.0E-18 -5.0E-18 K(S) 0 -W 130 1.272E-17 +1.0E-19 -1.0E-19 K(L) 0 -M 323 8.9166E-01 +2.6E-04 -2.6E-04 K*(892) + -M 313 8.9610E-01 +2.7E-04 -2.7E-04 K*(892) 0 -W 323 5.08E-02 +9.0E-04 -9.0E-04 K*(892) + -W 313 5.07E-02 +6.0E-04 -6.0E-04 K*(892) 0 -M 10313 10323 1.272E+00 +7.0E-03 -7.0E-03 K(1)(1270) 0,+ -W 10313 10323 9.0E-02 +2.0E-02 -2.0E-02 K(1)(1270) 0,+ -M 20313 20323 1.402E+00 +7.0E-03 -7.0E-03 K(1)(1400) 0,+ -W 20313 20323 1.74E-01 +1.3E-02 -1.3E-02 K(1)(1400) 0,+ -M 100313 100323 1.414E+00 +1.5E-02 -1.5E-02 K*(1410) 0,+ -W 100313 100323 2.32E-01 +2.1E-02 -2.1E-02 K*(1410) 0,+ -M 10311 10321 1.412E+00 +6.0E-03 -6.0E-03 K(0)*(1430) 0,+ -W 10311 10321 2.94E-01 +2.3E-02 -2.3E-02 K(0)*(1430) 0,+ -M 325 1.4256E+00 +1.5E-03 -1.5E-03 K(2)*(1430) + -M 315 1.4324E+00 +1.3E-03 -1.3E-03 K(2)*(1430) 0 -W 325 9.85E-02 +2.7E-03 -2.7E-03 K(2)*(1430) + -W 315 1.09E-01 +5.0E-03 -5.0E-03 K(2)*(1430) 0 -M 30313 30323 1.717E+00 +2.7E-02 -2.7E-02 K*(1680) 0,+ -W 30313 30323 3.2E-01 +1.1E-01 -1.1E-01 K*(1680) 0,+ -M 10315 10325 1.773E+00 +8.0E-03 -8.0E-03 K(2)(1770) 0,+ -W 10315 10325 1.86E-01 +1.4E-02 -1.4E-02 K(2)(1770) 0,+ -M 317 327 1.776E+00 +7.0E-03 -7.0E-03 K(3)*(1780) 0,+ -W 317 327 1.59E-01 +2.1E-02 -2.1E-02 K(3)*(1780) 0,+ -M 20315 20325 1.816E+00 +1.3E-02 -1.3E-02 K(2)(1820) 0,+ -W 20315 20325 2.76E-01 +3.5E-02 -3.5E-02 K(2)(1820) 0,+ -M 319 329 2.045E+00 +9.0E-03 -9.0E-03 K(4)*(2045) 0,+ -W 319 329 1.98E-01 +3.0E-02 -3.0E-02 K(4)*(2045) 0,+ -M 411 1.8694E+00 +5.0E-04 -5.0E-04 D + -W 411 6.33E-13 +4.0E-15 -4.0E-15 D + -M 421 1.8646E+00 +5.0E-04 -5.0E-04 D 0 -W 421 1.604E-12 +6.0E-15 -6.0E-15 D 0 -M 423 2.0067E+00 +5.0E-04 -5.0E-04 D*(2007) 0 -M 413 2.0100E+00 +5.0E-04 -5.0E-04 D*(2010) + -W 413 9.6E-05 +2.2E-05 -2.2E-05 D*(2010) + -M 10423 2.4222E+00 +1.8E-03 -1.8E-03 D(1)(2420) 0 -W 10423 1.89E-02 +4.6E-03 -3.5E-03 D(1)(2420) 0 -M 425 2.4589E+00 +2.0E-03 -2.0E-03 D(2)*(2460) 0 -W 425 2.3E-02 +5.0E-03 -5.0E-03 D(2)*(2460) 0 -M 415 2.459E+00 +4.0E-03 -4.0E-03 D(2)*(2460) + -W 415 2.5E-02 +8.0E-03 -7.0E-03 D(2)*(2460) + -M 431 1.9683E+00 +5.0E-04 -5.0E-04 D(s) + -W 431 1.342E-12 +2.6E-14 -2.6E-14 D(s) + -M 433 2.1121E+00 +7.0E-04 -7.0E-04 D(s)* + -M 10431 2.3174E+00 +9.0E-04 -9.0E-04 D(sJ)(2317) + -M 20433 2.4593E+00 +1.3E-03 -1.3E-03 D(sJ)(2460) + -M 10433 2.5353E+00 +6.0E-04 -6.0E-04 D(s1)(2536) + -M 435 2.5724E+00 +1.5E-03 -1.5E-03 D(s2)(2573) + -W 435 1.5E-02 +5.0E-03 -4.0E-03 D(s2)(2573) + -M 521 5.2790E+00 +5.0E-04 -5.0E-04 B + -W 521 3.94E-13 +4.0E-15 -4.0E-15 B + -M 511 5.2794E+00 +5.0E-04 -5.0E-04 B 0 -W 511 4.29E-13 +4.0E-15 -4.0E-15 B 0 -M 513 523 5.3250E+00 +6.0E-04 -6.0E-04 B* 0,+ -M 531 5.3696E+00 +2.4E-03 -2.4E-03 B(s) 0 -W 531 4.51E-13 +1.8E-14 -1.8E-14 B(s) 0 -M 541 6.4E+00 +4.0E-01 -4.0E-01 B(c) + -W 541 1.4E-12 +8.0E-13 -4.0E-13 B(c) + -M 441 2.9796E+00 +1.2E-03 -1.2E-03 eta(c)(1S) 0 -W 441 1.73E-02 +2.7E-03 -2.5E-03 eta(c)(1S) 0 -M 443 3.096916E+00 +1.1E-05 -1.1E-05 J/psi(1S) 0 -W 443 9.10E-05 +3.2E-06 -3.2E-06 J/psi(1S) 0 -M 10441 3.41519E+00 +3.4E-04 -3.4E-04 chi(c0)(1P) 0 -W 10441 1.01E-02 +8.0E-04 -8.0E-04 chi(c0)(1P) 0 -M 20443 3.51059E+00 +1.0E-04 -1.0E-04 chi(c1)(1P) 0 -W 20443 9.1E-04 +1.3E-04 -1.3E-04 chi(c1)(1P) 0 -M 445 3.55626E+00 +1.1E-04 -1.1E-04 chi(c2)(1P) 0 -W 445 2.11E-03 +1.6E-04 -1.6E-04 chi(c2)(1P) 0 -M 100443 3.686093E+00 +3.4E-05 -3.4E-05 psi(2S) 0 -W 100443 2.81E-04 +1.7E-05 -1.7E-05 psi(2S) 0 -M 30443 3.7700E+00 +2.4E-03 -2.4E-03 psi(3770) 0 -W 30443 2.36E-02 +2.7E-03 -2.7E-03 psi(3770) 0 -M 9000443 4.040E+00 +1.0E-02 -1.0E-02 psi(4040) 0 -W 9000443 5.2E-02 +1.0E-02 -1.0E-02 psi(4040) 0 -M 9010443 4.159E+00 +2.0E-02 -2.0E-02 psi(4160) 0 -W 9010443 7.8E-02 +2.0E-02 -2.0E-02 psi(4160) 0 -M 9020443 4.415E+00 +6.0E-03 -6.0E-03 psi(4415) 0 -W 9020443 4.3E-02 +1.5E-02 -1.5E-02 psi(4415) 0 -M 553 9.46030E+00 +2.6E-04 -2.6E-04 Upsilon(1S) 0 -W 553 5.30E-05 +1.5E-06 -1.5E-06 Upsilon(1S) 0 -M 10551 9.8599E+00 +1.0E-03 -1.0E-03 chi(b0)(1P) 0 -M 20553 9.8927E+00 +6.0E-04 -6.0E-04 chi(b1)(1P) 0 -M 555 9.9126E+00 +5.0E-04 -5.0E-04 chi(b2)(1P) 0 -M 100553 1.002326E+01 +3.1E-04 -3.1E-04 Upsilon(2S) 0 -W 100553 4.3E-05 +6.0E-06 -6.0E-06 Upsilon(2S) 0 -M 110551 1.02321E+01 +6.0E-04 -6.0E-04 chi(b0)(2P) 0 -M 120553 1.02552E+01 +5.0E-04 -5.0E-04 chi(b1)(2P) 0 -M 100555 1.02685E+01 +4.0E-04 -4.0E-04 chi(b2)(2P) 0 -M 200553 1.03552E+01 +5.0E-04 -5.0E-04 Upsilon(3S) 0 -W 200553 2.63E-05 +3.4E-06 -3.4E-06 Upsilon(3S) 0 -M 300553 1.05800E+01 +3.5E-03 -3.5E-03 Upsilon(4S) 0 -W 300553 2.0E-02 +4.0E-03 -4.0E-03 Upsilon(4S) 0 -M 9000553 1.0865E+01 +8.0E-03 -8.0E-03 Upsilon(10860) 0 -W 9000553 1.10E-01 +1.3E-02 -1.3E-02 Upsilon(10860) 0 -M 9010553 1.1019E+01 +8.0E-03 -8.0E-03 Upsilon(11020) 0 -W 9010553 7.9E-02 +1.6E-02 -1.6E-02 Upsilon(11020) 0 -W 2212 0.E+00 +0.0E+00 -0.0E+00 p + -M 2212 9.3827203E-01 +8.0E-08 -8.0E-08 p + -M 2112 9.3956536E-01 +8.0E-08 -8.0E-08 n 0 -W 2112 7.431E-28 +7.0E-31 -7.0E-31 n 0 -M 12112 12212 1.440E+00 +3.0E-02 -1.0E-02 N(1440) 0,+ -W 12112 12212 3.5E-01 +1.0E-01 -1.0E-01 N(1440) 0,+ -M 1214 2124 1.520E+00 +1.0E-02 -5.0E-03 N(1520) 0,+ -W 1214 2124 1.20E-01 +1.5E-02 -1.0E-02 N(1520) 0,+ -M 22112 22212 1.535E+00 +2.0E-02 -1.5E-02 N(1535) 0,+ -W 22112 22212 1.5E-01 +5.0E-02 -5.0E-02 N(1535) 0,+ -M 32112 32212 1.650E+00 +3.0E-02 -1.0E-02 N(1650) 0,+ -W 32112 32212 1.50E-01 +4.0E-02 -5.0E-03 N(1650) 0,+ -M 2116 2216 1.675E+00 +1.0E-02 -5.0E-03 N(1675) 0,+ -W 2116 2216 1.50E-01 +3.0E-02 -1.0E-02 N(1675) 0,+ -M 12116 12216 1.680E+00 +1.0E-02 -5.0E-03 N(1680) 0,+ -W 12116 12216 1.30E-01 +1.0E-02 -1.0E-02 N(1680) 0,+ -M 21214 22124 1.70E+00 +5.0E-02 -5.0E-02 N(1700) 0,+ -W 21214 22124 1.0E-01 +5.0E-02 -5.0E-02 N(1700) 0,+ -M 42112 42212 1.710E+00 +3.0E-02 -3.0E-02 N(1710) 0,+ -W 42112 42212 1.0E-01 +1.5E-01 -5.0E-02 N(1710) 0,+ -M 31214 32124 1.720E+00 +3.0E-02 -7.0E-02 N(1720) 0,+ -W 31214 32124 1.5E-01 +5.0E-02 -5.0E-02 N(1720) 0,+ -M 1218 2128 2.190E+00 +1.0E-02 -9.0E-02 N(2190) 0,+ -W 1218 2128 4.5E-01 +1.0E-01 -1.0E-01 N(2190) 0,+ -M 1114 2114 2214 2224 1.2320E+00 +2.0E-03 -2.0E-03 Delta(1232) -,0,+,++ -W 1114 2114 2214 2224 1.20E-01 +5.0E-03 -5.0E-03 Delta(1232) -,0,+,++ -M 31114 32114 32214 32224 1.60E+00 +1.0E-01 -5.0E-02 Delta(1600) -,0,+,++ -W 31114 32114 32214 32224 3.5E-01 +1.0E-01 -1.0E-01 Delta(1600) -,0,+,++ -M 1112 1212 2122 2222 1.620E+00 +6.0E-02 -5.0E-03 Delta(1620) -,0,+,++ -W 1112 1212 2122 2222 1.50E-01 +3.0E-02 -3.0E-02 Delta(1620) -,0,+,++ -M 11114 12114 12214 12224 1.700E+00 +7.0E-02 -3.0E-02 Delta(1700) -,0,+,++ -W 11114 12114 12214 12224 3.0E-01 +1.0E-01 -1.0E-01 Delta(1700) -,0,+,++ -M 1116 1216 2126 2226 1.905E+00 +1.5E-02 -3.5E-02 Delta(1905) -,0,+,++ -W 1116 1216 2126 2226 3.5E-01 +9.0E-02 -7.0E-02 Delta(1905) -,0,+,++ -M 21112 21212 22122 22222 1.910E+00 +1.0E-02 -4.0E-02 Delta(1910) -,0,+,++ -W 21112 21212 22122 22222 2.50E-01 +2.0E-02 -6.0E-02 Delta(1910) -,0,+,++ -M 21114 22114 22214 22224 1.920E+00 +5.0E-02 -2.0E-02 Delta(1920) -,0,+,++ -W 21114 22114 22214 22224 2.0E-01 +1.0E-01 -5.0E-02 Delta(1920) -,0,+,++ -M 11116 11216 12126 12226 1.930E+00 +4.0E-02 -1.0E-02 Delta(1930) -,0,+,++ -W 11116 11216 12126 12226 3.5E-01 +1.0E-01 -1.0E-01 Delta(1930) -,0,+,++ -M 1118 2118 2218 2228 1.950E+00 +1.0E-02 -1.0E-02 Delta(1950) -,0,+,++ -W 1118 2118 2218 2228 3.00E-01 +5.0E-02 -1.0E-02 Delta(1950) -,0,+,++ -M 9221132 1.5392E+00 +1.6E-03 -1.6E-03 Theta(1540) + -W 9221132 9.0E-04 +3.0E-04 -3.0E-04 Theta(1540) + -M 3122 1.115683E+00 +6.0E-06 -6.0E-06 Lambda 0 -W 3122 2.501E-15 +1.9E-17 -1.9E-17 Lambda 0 -M 13122 1.407E+00 +4.0E-03 -4.0E-03 Lambda(1405) 0 -W 13122 5.00E-02 +2.0E-03 -2.0E-03 Lambda(1405) 0 -M 3124 1.5195E+00 +1.0E-03 -1.0E-03 Lambda(1520) 0 -W 3124 1.56E-02 +1.0E-03 -1.0E-03 Lambda(1520) 0 -M 23122 1.60E+00 +1.0E-01 -4.0E-02 Lambda(1600) 0 -W 23122 1.5E-01 +1.0E-01 -1.0E-01 Lambda(1600) 0 -M 33122 1.670E+00 +1.0E-02 -1.0E-02 Lambda(1670) 0 -W 33122 3.5E-02 +1.5E-02 -1.0E-02 Lambda(1670) 0 -M 13124 1.690E+00 +5.0E-03 -5.0E-03 Lambda(1690) 0 -W 13124 6.0E-02 +1.0E-02 -1.0E-02 Lambda(1690) 0 -M 43122 1.80E+00 +5.0E-02 -8.0E-02 Lambda(1800) 0 -W 43122 3.0E-01 +1.0E-01 -1.0E-01 Lambda(1800) 0 -M 53122 1.81E+00 +4.0E-02 -6.0E-02 Lambda(1810) 0 -W 53122 1.5E-01 +1.0E-01 -1.0E-01 Lambda(1810) 0 -M 3126 1.820E+00 +5.0E-03 -5.0E-03 Lambda(1820) 0 -W 3126 8.0E-02 +1.0E-02 -1.0E-02 Lambda(1820) 0 -M 13126 1.830E+00 +0.0E+00 -2.0E-02 Lambda(1830) 0 -W 13126 9.5E-02 +1.5E-02 -3.5E-02 Lambda(1830) 0 -M 23124 1.890E+00 +2.0E-02 -4.0E-02 Lambda(1890) 0 -W 23124 1.0E-01 +1.0E-01 -4.0E-02 Lambda(1890) 0 -M 3128 2.100E+00 +1.0E-02 -1.0E-02 Lambda(2100) 0 -W 3128 2.0E-01 +5.0E-02 -1.0E-01 Lambda(2100) 0 -M 23126 2.110E+00 +3.0E-02 -2.0E-02 Lambda(2110) 0 -W 23126 2.0E-01 +5.0E-02 -5.0E-02 Lambda(2110) 0 -M 3222 1.18937E+00 +7.0E-05 -7.0E-05 Sigma + -W 3222 8.209E-15 +2.7E-17 -2.7E-17 Sigma + -M 3212 1.192642E+00 +2.4E-05 -2.4E-05 Sigma 0 -W 3212 8.9E-06 +9.0E-07 -8.0E-07 Sigma 0 -M 3112 1.197449E+00 +3.0E-05 -3.0E-05 Sigma - -W 3112 4.450E-15 +3.2E-17 -3.2E-17 Sigma - -M 3224 1.3828E+00 +4.0E-04 -4.0E-04 Sigma(1385) + -M 3214 1.3837E+00 +1.0E-03 -1.0E-03 Sigma(1385) 0 -M 3114 1.3872E+00 +5.0E-04 -5.0E-04 Sigma(1385) - -W 3224 3.58E-02 +8.0E-04 -8.0E-04 Sigma(1385) + -W 3214 3.6E-02 +5.0E-03 -5.0E-03 Sigma(1385) 0 -W 3114 3.94E-02 +2.1E-03 -2.1E-03 Sigma(1385) - -M 13112 13212 13222 1.660E+00 +3.0E-02 -3.0E-02 Sigma(1660) -,0,+ -W 13112 13212 13222 1.0E-01 +1.0E-01 -6.0E-02 Sigma(1660) -,0,+ -M 13114 13214 13224 1.670E+00 +1.5E-02 -5.0E-03 Sigma(1670) -,0,+ -W 13114 13214 13224 6.0E-02 +2.0E-02 -2.0E-02 Sigma(1670) -,0,+ -M 23112 23212 23222 1.750E+00 +5.0E-02 -2.0E-02 Sigma(1750) -,0,+ -W 23112 23212 23222 9.0E-02 +7.0E-02 -3.0E-02 Sigma(1750) -,0,+ -M 3116 3216 3226 1.775E+00 +5.0E-03 -5.0E-03 Sigma(1775) -,0,+ -W 3116 3216 3226 1.20E-01 +1.5E-02 -1.5E-02 Sigma(1775) -,0,+ -M 13116 13216 13226 1.915E+00 +2.0E-02 -1.5E-02 Sigma(1915) -,0,+ -W 13116 13216 13226 1.2E-01 +4.0E-02 -4.0E-02 Sigma(1915) -,0,+ -M 23114 23214 23224 1.940E+00 +1.0E-02 -4.0E-02 Sigma(1940) -,0,+ -W 23114 23214 23224 2.2E-01 +8.0E-02 -7.0E-02 Sigma(1940) -,0,+ -M 3118 3218 3228 2.030E+00 +1.0E-02 -5.0E-03 Sigma(2030) -,0,+ -W 3118 3218 3228 1.80E-01 +2.0E-02 -3.0E-02 Sigma(2030) -,0,+ -M 3322 1.31483E+00 +2.0E-04 -2.0E-04 Xi 0 -W 3322 2.27E-15 +7.0E-17 -7.0E-17 Xi 0 -M 3312 1.32131E+00 +1.3E-04 -1.3E-04 Xi - -W 3312 4.02E-15 +4.0E-17 -4.0E-17 Xi - -M 3324 1.53180E+00 +3.2E-04 -3.2E-04 Xi(1530) 0 -M 3314 1.5350E+00 +6.0E-04 -6.0E-04 Xi(1530) - -W 3324 9.1E-03 +5.0E-04 -5.0E-04 Xi(1530) 0 -W 3314 9.9E-03 +1.7E-03 -1.9E-03 Xi(1530) - -M 13314 13324 1.823E+00 +5.0E-03 -5.0E-03 Xi(1820) -,0 -W 13314 13324 2.4E-02 +1.5E-02 -1.0E-02 Xi(1820) -,0 -M 3334 1.67245E+00 +2.9E-04 -2.9E-04 Omega - -W 3334 8.02E-15 +1.1E-16 -1.1E-16 Omega - -M 4122 2.2849E+00 +6.0E-04 -6.0E-04 Lambda(c) + -W 4122 3.30E-12 +9.0E-14 -9.0E-14 Lambda(c) + -M 14122 2.5939E+00 +8.0E-04 -8.0E-04 Lambda(c)(2593) + -W 14122 3.6E-03 +2.0E-03 -1.3E-03 Lambda(c)(2593) + -M 4222 2.4525E+00 +6.0E-04 -6.0E-04 Sigma(c)(2455) ++ -M 4212 2.4513E+00 +7.0E-04 -7.0E-04 Sigma(c)(2455) + -M 4112 2.4522E+00 +6.0E-04 -6.0E-04 Sigma(c)(2455) 0 -W 4222 2.23E-03 +3.0E-04 -3.0E-04 Sigma(c)(2455) ++ -W 4112 2.2E-03 +4.0E-04 -4.0E-04 Sigma(c)(2455) 0 -M 4232 2.4663E+00 +1.4E-03 -1.4E-03 Xi(c) + -W 4232 1.49E-12 +9.0E-14 -9.0E-14 Xi(c) + -M 4132 2.4718E+00 +1.4E-03 -1.4E-03 Xi(c) 0 -W 4132 5.9E-12 +6.0E-13 -6.0E-13 Xi(c) 0 -M 4322 2.5741E+00 +3.3E-03 -3.3E-03 Xi(c)' + -M 4312 2.5788E+00 +3.2E-03 -3.2E-03 Xi(c)' 0 -M 4332 2.6975E+00 +2.6E-03 -2.6E-03 Omega(c) 0 -W 4332 9.6E-12 +2.1E-12 -1.4E-12 Omega(c) 0 -M 5122 5.624E+00 +9.0E-03 -9.0E-03 Lambda(b) 0 -W 5122 5.36E-13 +3.7E-14 -3.3E-14 Lambda(b) 0