FastJet 3.0beta1
D0RunIConePlugin.hh
00001 #ifndef __D0RUNICONEPLUGIN_HH__
00002 #define __D0RUNICONEPLUGIN_HH__
00003 
00004 //STARTHEADER
00005 // $Id: D0RunIConePlugin.hh 1778 2010-10-25 10:02:58Z soyez $
00006 //
00007 // Copyright (c) 2009-2010, Matteo Cacciari, Gavin Salam and Gregory Soyez
00008 //
00009 //----------------------------------------------------------------------
00010 // This file is part of FastJet.
00011 //
00012 //  FastJet is free software; you can redistribute it and/or modify
00013 //  it under the terms of the GNU General Public License as published by
00014 //  the Free Software Foundation; either version 2 of the License, or
00015 //  (at your option) any later version.
00016 //
00017 //  The algorithms that underlie FastJet have required considerable
00018 //  development and are described in hep-ph/0512210. If you use
00019 //  FastJet as part of work towards a scientific publication, please
00020 //  include a citation to the FastJet paper.
00021 //
00022 //  FastJet is distributed in the hope that it will be useful,
00023 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
00024 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00025 //  GNU General Public License for more details.
00026 //
00027 //  You should have received a copy of the GNU General Public License
00028 //  along with FastJet; if not, write to the Free Software
00029 //  Foundation, Inc.:
00030 //      59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00031 //----------------------------------------------------------------------
00032 //ENDHEADER
00033 
00034 #include "fastjet/D0RunIBaseConePlugin.hh"
00035 
00036 // questionable whether this should be in fastjet namespace or not...
00037 
00038 FASTJET_BEGIN_NAMESPACE      // defined in fastjet/internal/base.hh
00039 
00040 //----------------------------------------------------------------------
00041 //
00042 /// @ingroup plugins
00043 /// \class D0RunIConePlugin
00044 ///
00045 /// A plugin for fastjet (v3.0 upwards) that provides an interface to
00046 /// the D0 version of Run-I cone algorithm
00047 ///
00048 /// The D0 code has been taken from Lars Sonnenschein's web-space
00049 /// http://www-d0.fnal.gov/~sonne/D0RunIcone.tgz
00050 ///
00051 /// The version of the D0 Run I code distributed
00052 /// here has been modified by the FastJet authors, so as to provide
00053 /// access to the contents of the jets (as is necessary for the
00054 /// plugin). This does not modify the results of the clustering.
00055 ///
00056 /// The difference between this algorithm and the post-1996 version
00057 /// relates to the way the final jet momenta are calculated. Details
00058 /// are to be found in FERMILAB-PUB-97-242-E.
00059 //
00060 //----------------------------------------------------------------------
00061 class D0RunIConePlugin : public D0RunIBaseConePlugin {
00062 public:
00063   /// The D0RunIConePlugin constructor, which sets the "free" parameters of the
00064   /// algorithm:
00065   ///
00066   ///  \param CONErad is the cone radius
00067   ///
00068   ///  \param JETmne is a minimum ET requirement on every iteration
00069   ///    (jet dropped if Et < JETmne * Et_min_ratio ).
00070   ///    The value that has been used by D0 for JETmne: 8 GeV 
00071   ///    (and Et_min_ratio is 0.5)
00072   ///
00073   ///  \param SPlifr is the shared Et fraction splitting threshold, and
00074   ///    a value of 0.5 was usually used by D0
00075   ///
00076   /// The remaining parameters of the algorithm are not to be modified if the algorithm
00077   /// is to correspond to the one actually used by D0.
00078   ///
00079   D0RunIConePlugin (double CONrad, double JETmne , double SPLifr = _DEFAULT_SPLifr)
00080     : D0RunIBaseConePlugin(CONrad, JETmne , SPLifr){}
00081 
00082   // the things that are required by base class
00083   virtual std::string description () const;
00084 
00085   // the part that really does the clustering
00086   virtual void run_clustering(ClusterSequence &) const;
00087 };
00088 
00089 
00090 
00091 FASTJET_END_NAMESPACE      // defined in fastjet/internal/base.hh
00092 
00093 #endif // __D0RUNICONEPLUGIN_HH__
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends