Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

fastjet Namespace Reference


Classes

class  AreaDefinition
 class that holds a generic area definition More...

class  BasicRandom
class  BasicRandom< double >
 template specialization (double) for the BasicRandom template class. More...

class  BasicRandom< int >
class  ClosestPair2D
 concrete implementation for finding closest pairs in 2D -- will use Chan's (hopefully efficient) shuffle based structures More...

class  ClosestPair2D::Point
 class for representing all info needed about a point More...

class  ClosestPair2D::Shuffle
 class that will take care of ordering of shuffles for us More...

class  ClosestPair2D::triplet
 since sets of three objects will crop up repeatedly, useful to have a triplet class? More...

class  ClosestPair2DBase
 abstract base class for finding closest pairs in 2D More...

class  ClusterSequence
 deals with clustering More...

class  ClusterSequence1GhostPassiveArea
 Class that behaves essentially like ClusterSequence except that it also provides access to the area of a jet (which will be a random quantity... More...

struct  ClusterSequence::BriefJet
 the fundamental structure which contains the minimal info about a jet, as needed for our plain N^2 algorithm -- the idea is to put all info that will be accessed N^2 times into an array of BriefJets... More...

class  ClusterSequence::Extras
 a class intended to serve as a base in case a plugin needs to associate extra information with a ClusterSequence (see SISConePlugin.* for an example). More...

struct  ClusterSequence::history_element
 a single element in the clustering history (see vector _history below). More...

struct  ClusterSequence::Tile
 The fundamental structures to be used for the tiled N^2 algorithm (see CCN27-44 for some discussion of pattern of tiling). More...

class  ClusterSequence::TiledJet
 structure analogous to BriefJet, but with the extra information needed for dealing with tiles More...

class  ClusterSequenceActiveArea
 Class that behaves essentially like ClusterSequence except that it also provides access to the area of a jet (which will be a random quantity... More...

class  ClusterSequenceActiveArea::GhostJet
 a class for our internal storage of ghost jets More...

class  ClusterSequenceActiveAreaExplicitGhosts
 Class that behaves essentially like ClusterSequence except that it also provides access to the area of a jet (which will be a random quantity... More...

class  ClusterSequenceArea
class  ClusterSequenceAreaBase
 base class that sets interface for extensions of ClusterSequence that provide information about the area of each jet; More...

class  ClusterSequencePassiveArea
 Class that behaves essentially like ClusterSequence except that it also provides access to the area of a jet (which will be a random quantity... More...

class  ClusterSequenceVoronoiArea
 Handle the computation of Voronoi jet area. More...

class  ClusterSequenceVoronoiArea::VoronoiAreaCalc
 class for carrying out a voronoi area calculation on a set of initial vectors More...

class  Coord2D
 class for representing 2d coordinates and carrying out some basic operations on them More...

class  Dnn2piCylinder
 class derived from DynamicNearestNeighbours that provides an implementation for the surface of cylinder (using one DnnPlane object spanning 0--2pi). More...

struct  Dnn2piCylinder::MirrorVertexInfo
class  Dnn3piCylinder
 class derived from DynamicNearestNeighbours that provides an implementation for the surface of cylinder (using one DnnPlane object spanning 0--3pi). More...

struct  Dnn3piCylinder::MirrorVertexInfo
class  Dnn4piCylinder
 class derived from DynamicNearestNeighbours that provides an implementation for the surface of cylinder (using two copies of DnnPlane, one running from 0--2pi, the other from pi--3pi). More...

class  DnnError
 class corresponding to errors that will be thrown by Dynamic Nearest Neighbours code More...

class  DnnPlane
 class derived from DynamicNearestNeighbours that provides an implementation for the Euclidean plane More...

struct  DnnPlane::SuperVertex
 Structure containing a vertex_handle and cached information on the nearest neighbour. More...

class  DynamicNearestNeighbours
 Abstract base class for quick location of nearest neighbours in a set of points, with facilities for adding and removing points from the set after initialisation. More...

class  Edge
class  Error
 class corresponding to errors that will be thrown by fastjet More...

class  EtaPhi
 use a class instead of a pair so that phi can be sanitized and put into proper range on initialization. More...

class  Freelist
class  Freenode
class  FreeNodeArrayList
class  GhostedAreaSpec
 Class that defines the parameters that go into the measurement of active jet areas. More...

class  GraphEdge
 handle an edge of the Voronoi Diagram. More...

class  Halfedge
class  IndexedSortHelper
 a class that helps us carry out indexed sorting. More...

class  InitialisedInt
 A class to provide an "int" with an initial value. More...

class  JetDefinition
 class that is intended to hold a full definition of the jet clusterer More...

class  JetDefinition::DefaultRecombiner
 A class that will provide the recombination scheme facilities and/or allow a user to extend these facilities. More...

class  JetDefinition::Plugin
 a class that allows a user to introduce their own "plugin" jet finder More...

class  JetDefinition::Recombiner
 An abstract base class that will provide the recombination scheme facilities and/or allow a user to extend these facilities. More...

struct  K
 the basic geometrical kernel that lies at the base of all CGAL operations More...

class  MinHeap
 A class which provides a "heap"-like structure that allows access to a the minimal value of a dynamically changing set of numbers. More...

struct  MinHeap::ValueLoc
class  Point
 class to handle a 2d point More...

class  PseudoJet
 Class to contain pseudojets, including minimal information of use to to jet-clustering routines. More...

class  RangeDefinition
 class for holding a range definition specification, given by limits on rapidity and azimuth. More...

class  SearchTree
 This is the class for a search tree designed to be especially efficient when looking for successors and predecessors (to be used in Chan's CP algorithm). More...

class  SearchTree::circulator
class  SearchTree::const_circulator
class  SearchTree::Node
class  Site
 structure used both for particle sites and for vertices. More...

class  VoronoiAreaSpec
 class for holding a "Voronoi area" specification; an area will be assigned to each particle, which is the area of the intersection of the particle's Voronoi cell with a circle of radius R*effective_Rfact. More...

class  VoronoiDiagramGenerator

Typedefs

typedef ClusterSequenceActiveAreaExplicitGhosts ClustSeqActAreaEG
typedef ClusterSequenceVoronoiArea::VoronoiAreaCalc VAC
typedef GhostedAreaSpec ActiveAreaSpec
 just provide a typedef for backwards compatibility with programs based on versions 2.0 and 2.1 of fastjet

typedef ClusterSequenceAreaBase ClusterSequenceWithArea
typedef JetAlgorithm JetFinder
 make standard Les Houches nomenclature JetAlgorithm (algorithm is general recipe without the parameters) backward-compatible with old JetFinder

typedef CGAL::Triangulation_vertex_base_with_info_2<
InitialisedInt, K
Vbb
typedef CGAL::Triangulation_hierarchy_vertex_base_2<
Vbb
Vb
typedef CGAL::Triangulation_face_base_2<
K
Fb
typedef CGAL::Triangulation_data_structure_2<
Vb, Fb
Tds
typedef CGAL::Delaunay_triangulation_2<
K, Tds
Dt
typedef CGAL::Triangulation_hierarchy_2<
Dt
Triangulation
typedef Triangulation::Vertex_handle Vertex_handle
typedef Triangulation::Point Point
typedef Triangulation::Vertex_circulator Vertex_circulator
 CGAL Point structure.

typedef Triangulation::Face_circulator Face_circulator
typedef Triangulation::Face_handle Face_handle

Enumerations

enum  AreaType {
  invalid_area = -1, active_area = 0, active_area_explicit_ghosts = 1, one_ghost_passive_area = 10,
  passive_area = 11, voronoi_area = 20
}
 the different types of area that are supported More...

enum  Strategy {
  N2MinHeapTiled = -4, N2Tiled = -3, N2PoorTiled = -2, N2Plain = -1,
  N3Dumb = 0, Best = 1, NlnN = 2, NlnN3pi = 3,
  NlnN4pi = 4, NlnNCam4pi = 14, NlnNCam2pi2R = 13, NlnNCam = 12,
  plugin_strategy = 999
}
 the various options for the algorithmic strategy to adopt in clustering events with kt and cambridge style algorithms. More...

enum  JetAlgorithm {
  kt_algorithm = 0, cambridge_algorithm = 1, antikt_algorithm = 2, genkt_algorithm = 3,
  cambridge_for_passive_algorithm = 11, genkt_for_passive_algorithm = 13, plugin_algorithm = 99
}
 the various families of jet-clustering algorithm More...

enum  RecombinationScheme {
  E_scheme = 0, pt_scheme = 1, pt2_scheme = 2, Et_scheme = 3,
  Et2_scheme = 4, BIpt_scheme = 5, BIpt2_scheme = 6, external_scheme = 99
}
 the various recombination schemes More...


Functions

int __default_random_generator (int *__iseed)
string fastjet_version_string ()
 return a string containing information about the release

PseudoJet operator+ (const PseudoJet &jet1, const PseudoJet &jet2)
PseudoJet operator- (const PseudoJet &jet1, const PseudoJet &jet2)
PseudoJet operator * (double coeff, const PseudoJet &jet)
PseudoJet operator * (const PseudoJet &jet, double coeff)
PseudoJet operator/ (const PseudoJet &jet, double coeff)
bool have_same_momentum (const PseudoJet &jeta, const PseudoJet &jetb)
 returns true if the momenta of the two input jets are identical

PseudoJet PtYPhiM (double pt, double y, double phi, double m)
 return a pseudojet with the given pt, y, phi and mass

void sort_indices (vector< int > &indices, const vector< double > &values)
template<class T> vector< T > objects_sorted_by_values (const vector< T > &objects, const vector< double > &values)
 given a vector of values with a one-to-one correspondence with the vector of objects, sort objects into an order such that the associated values would be in increasing order

vector< PseudoJetsorted_by_pt (const vector< PseudoJet > &jets)
 return a vector of jets sorted into decreasing kt2

vector< PseudoJetsorted_by_rapidity (const vector< PseudoJet > &jets)
 return a vector of jets sorted into increasing rapidity

vector< PseudoJetsorted_by_E (const vector< PseudoJet > &jets)
 return a vector of jets sorted into decreasing energy

int scomp (const void *p1, const void *p2)
std::vector< PseudoJetsorted_by_pt (const std::vector< PseudoJet > &jets)
 return a vector of jets sorted into decreasing transverse momentum

std::vector< PseudoJetsorted_by_rapidity (const std::vector< PseudoJet > &jets)
 return a vector of jets sorted into increasing rapidity

std::vector< PseudoJetsorted_by_E (const std::vector< PseudoJet > &jets)
 return a vector of jets sorted into decreasing energy

void sort_indices (std::vector< int > &indices, const std::vector< double > &values)
 sort the indices so that values[indices[0->n-1]] is sorted into increasing order

template<class T> std::vector< T > objects_sorted_by_values (const std::vector< T > &objects, const std::vector< double > &values)
 given a vector of values with a one-to-one correspondence with the vector of objects, sort objects into an order such that the associated values would be in increasing order (but don't actually touch the values vector in the process).

bool floor_ln2_less (unsigned x, unsigned y)
 returns true if floor(ln_base2(x)) < floor(ln_base2(y)), using Chan's neat trick...

double norm (const Point p)
 norm of a vector

double vector_product (const Point &p1, const Point &p2)
 2D vector product

double scalar_product (const Point &p1, const Point &p2)
 scalar product


Variables

BasicRandom< int > _G_random_int
BasicRandom< double > _G_random_double
const unsigned int huge_unsigned = 4294967295U
const unsigned int twopow31 = 2147483648U
const JetAlgorithm aachen_algorithm = cambridge_algorithm
 provide other possible names for the Cambridge/Aachen algorithm?

const JetAlgorithm cambridge_aachen_algorithm = cambridge_algorithm
const double MaxRap = 1e5
 Used to protect against parton-level events where pt can be zero for some partons, giving rapidity=infinity.

const double pi = 3.141592653589793238462643383279502884197
const double twopi = 6.283185307179586476925286766559005768394
const double pisq = 9.869604401089358618834490999876151135314
const double zeta2 = 1.644934066848226436472415166646025189219
const double zeta3 = 1.202056903159594285399738161511449990765
const double eulergamma = 0.577215664901532860606512090082402431042
const double ln2 = 0.693147180559945309417232121458176568076
const int INFINITE_VERTEX = -1
const int NEW_VERTEX = -2
const double HUGE_DOUBLE = 1e300


Typedef Documentation

typedef GhostedAreaSpec fastjet::ActiveAreaSpec
 

just provide a typedef for backwards compatibility with programs based on versions 2.0 and 2.1 of fastjet

Definition at line 41 of file ActiveAreaSpec.hh.

Referenced by main().

typedef ClusterSequenceAreaBase fastjet::ClusterSequenceWithArea
 

Definition at line 39 of file ClusterSequenceWithArea.hh.

typedef ClusterSequenceActiveAreaExplicitGhosts fastjet::ClustSeqActAreaEG
 

Definition at line 39 of file ClusterSequenceActiveAreaExplicitGhosts.cc.

typedef CGAL::Delaunay_triangulation_2<K,Tds> fastjet::Dt
 

Definition at line 85 of file Triangulation.hh.

typedef Triangulation::Face_circulator fastjet::Face_circulator
 

Definition at line 92 of file Triangulation.hh.

typedef Triangulation::Face_handle fastjet::Face_handle
 

Definition at line 93 of file Triangulation.hh.

Referenced by fastjet::DnnPlane::RemoveAndAddPoints().

typedef CGAL::Triangulation_face_base_2<K> fastjet::Fb
 

Definition at line 83 of file Triangulation.hh.

typedef JetAlgorithm fastjet::JetFinder
 

make standard Les Houches nomenclature JetAlgorithm (algorithm is general recipe without the parameters) backward-compatible with old JetFinder

Definition at line 107 of file JetDefinition.hh.

typedef Triangulation::Point fastjet::Point
 

Definition at line 90 of file Triangulation.hh.

Referenced by fastjet::DnnPlane::DnnPlane(), and fastjet::DnnPlane::RemoveAndAddPoints().

typedef CGAL::Triangulation_data_structure_2<Vb,Fb> fastjet::Tds
 

Definition at line 84 of file Triangulation.hh.

typedef CGAL::Triangulation_hierarchy_2<Dt> fastjet::Triangulation
 

Definition at line 86 of file Triangulation.hh.

typedef ClusterSequenceVoronoiArea::VoronoiAreaCalc fastjet::VAC
 

Definition at line 43 of file ClusterSequenceVoronoiArea.cc.

Referenced by fastjet::ClusterSequenceVoronoiArea::_initializeVA().

typedef CGAL::Triangulation_hierarchy_vertex_base_2<Vbb> fastjet::Vb
 

Definition at line 82 of file Triangulation.hh.

typedef CGAL::Triangulation_vertex_base_with_info_2<InitialisedInt,K> fastjet::Vbb
 

Definition at line 81 of file Triangulation.hh.

typedef Triangulation::Vertex_circulator fastjet::Vertex_circulator
 

CGAL Point structure.

Definition at line 91 of file Triangulation.hh.

Referenced by fastjet::DnnPlane::_SetAndUpdateNearest(), fastjet::DnnPlane::_SetNearest(), and fastjet::DnnPlane::RemoveAndAddPoints().

typedef Triangulation::Vertex_handle fastjet::Vertex_handle
 

Definition at line 89 of file Triangulation.hh.

Referenced by fastjet::DnnPlane::_CrashIfVertexPresent(), fastjet::DnnPlane::_SetAndUpdateNearest(), and fastjet::DnnPlane::_SetNearest().


Enumeration Type Documentation

enum fastjet::AreaType
 

the different types of area that are supported

Enumeration values:
invalid_area 
active_area 
active_area_explicit_ghosts 
one_ghost_passive_area 
passive_area 
voronoi_area 

Definition at line 68 of file AreaDefinition.hh.

Referenced by fastjet::AreaDefinition::area_type().

00068               {invalid_area = -1, 
00069                active_area = 0, active_area_explicit_ghosts = 1,
00070                one_ghost_passive_area = 10, passive_area = 11, 
00071                voronoi_area=20};

enum fastjet::JetAlgorithm
 

the various families of jet-clustering algorithm

Enumeration values:
kt_algorithm  the longitudinally invariant kt algorithm
cambridge_algorithm  the longitudinally invariant variant of the cambridge algorithm (aka Aachen algoithm).
antikt_algorithm  like the k_t but with distance measures dij = min(1/kti^2,1/ktj^2) Delta R_{ij}^2 / R^2 diB = 1/kti^2
genkt_algorithm  like the k_t but with distance measures dij = min(kti^{2p},ktj^{2p}) Delta R_{ij}^2 / R^2 diB = 1/kti^{2p}
cambridge_for_passive_algorithm  a version of cambridge with a special distance measure for particles whose pt is < extra_param()
genkt_for_passive_algorithm  a version of genkt with a special distance measure for particles whose pt is < extra_param() [relevant for passive areas when p<=0]
plugin_algorithm  any plugin algorithm supplied by the user

Definition at line 81 of file JetDefinition.hh.

Referenced by fastjet::JetDefinition::jet_algorithm(), and fastjet::JetDefinition::jet_finder().

00081                   {
00083   kt_algorithm=0,
00086   cambridge_algorithm=1,
00090   antikt_algorithm=2, 
00094   genkt_algorithm=3, 
00097   cambridge_for_passive_algorithm=11,
00100   genkt_for_passive_algorithm=13, 
00102   plugin_algorithm = 99
00103 };

enum fastjet::RecombinationScheme
 

the various recombination schemes

Enumeration values:
E_scheme  summing the 4-momenta
pt_scheme  pt weighted recombination of y,phi (and summing of pt's) with preprocessing to make things massless by rescaling E=| p|
pt2_scheme  pt^2 weighted recombination of y,phi (and summing of pt's) with preprocessing to make things massless by rescaling E=| p|
Et_scheme  pt weighted recombination of y,phi (and summing of pt's) with preprocessing to make things massless by rescaling | p|->=E
Et2_scheme  pt^2 weighted recombination of y,phi (and summing of pt's) with preprocessing to make things massless by rescaling | p|->=E
BIpt_scheme  pt weighted recombination of y,phi (and summing of pt's), with no preprocessing
BIpt2_scheme  pt^2 weighted recombination of y,phi (and summing of pt's) no preprocessing
external_scheme  for the user's external scheme

Definition at line 115 of file JetDefinition.hh.

Referenced by fastjet::JetDefinition::recombination_scheme(), and fastjet::JetDefinition::DefaultRecombiner::scheme().

00115                          {
00117   E_scheme=0,
00120   pt_scheme=1,
00123   pt2_scheme=2,
00126   Et_scheme=3,
00129   Et2_scheme=4,
00132   BIpt_scheme=5,
00135   BIpt2_scheme=6,
00137   external_scheme = 99
00138 };

enum fastjet::Strategy
 

the various options for the algorithmic strategy to adopt in clustering events with kt and cambridge style algorithms.

Enumeration values:
N2MinHeapTiled  fastest form about 500..10^4
N2Tiled  fastest from about 50..500
N2PoorTiled  legacy
N2Plain  fastest below 50
N3Dumb  worse even than the usual N^3 algorithms
Best  automatic selection of the best (based on N)
NlnN  best of the NlnN variants -- best overall for N>10^4
NlnN3pi  legacy N ln N using 3pi coverage of cylinder
NlnN4pi  legacy N ln N using 4pi coverage of cylinder
NlnNCam4pi  Chan's closest pair method (in a variant with 4pi coverage), for use exclusively with the Cambridge algorithm.
NlnNCam2pi2R 
NlnNCam 
plugin_strategy  the plugin has been used...

Definition at line 50 of file JetDefinition.hh.

Referenced by fastjet::JetDefinition::strategy(), and fastjet::ClusterSequence::strategy_used().

00050               {
00052   N2MinHeapTiled   = -4, 
00054   N2Tiled     = -3, 
00056   N2PoorTiled = -2, 
00058   N2Plain     = -1, 
00060   N3Dumb      =  0, 
00062   Best        =  1, 
00064   NlnN        =  2, 
00066   NlnN3pi     =  3, 
00068   NlnN4pi     =  4,
00071   NlnNCam4pi   = 14,
00072   NlnNCam2pi2R = 13,
00073   NlnNCam      = 12, // 2piMultD
00075   plugin_strategy = 999
00076 };


Function Documentation

int fastjet::__default_random_generator int *  __iseed  ) 
 

Definition at line 31 of file BasicRandom.cc.

References __default_random_generator().

Referenced by __default_random_generator(), fastjet::BasicRandom< double >::operator()(), and fastjet::BasicRandom< int >::operator()().

00032 {
00033   int __k = __iseed[0]/53668;
00034   __iseed[0] = (__iseed[0] - __k*53668)*40014 - __k*12211;
00035   if(__iseed[0] < 0) __iseed[0] += 2147483563;
00036   
00037   __k = __iseed[1]/52774;
00038   __iseed[1] = (__iseed[1] - __k*52774)*40692 - __k*3791;
00039   if(__iseed[1] < 0) __iseed[1] += 2147483399;
00040   
00041   int __iz = __iseed[0] - __iseed[1];
00042   if(__iz < 1) __iz += 2147483562;
00043   
00044   return __iz;
00045 }

std::string fastjet::fastjet_version_string  ) 
 

return a string containing information about the release

Definition at line 146 of file ClusterSequence.cc.

References fastjet_version.

00146                                 {
00147   return "FastJet version "+string(fastjet_version);
00148 }

bool floor_ln2_less unsigned  x,
unsigned  y
[inline]
 

returns true if floor(ln_base2(x)) < floor(ln_base2(y)), using Chan's neat trick...

Definition at line 212 of file ClosestPair2D.hh.

References floor_ln2_less().

Referenced by floor_ln2_less(), and fastjet::ClosestPair2D::Shuffle::operator<().

00212                                                    {
00213   if (x>y) return false;
00214   return (x < (x^y)); // beware of operator precedence...
00215 }

bool fastjet::have_same_momentum const PseudoJet &  jeta,
const PseudoJet &  jetb
 

returns true if the momenta of the two input jets are identical

Definition at line 283 of file PseudoJet.cc.

References fastjet::PseudoJet::E(), fastjet::PseudoJet::px(), fastjet::PseudoJet::py(), and fastjet::PseudoJet::pz().

00283                                                                         {
00284   return jeta.px() == jetb.px()
00285     &&   jeta.py() == jetb.py()
00286     &&   jeta.pz() == jetb.pz()
00287     &&   jeta.E()  == jetb.E();
00288 }

double norm const Point  p  )  [inline]
 

norm of a vector

Definition at line 107 of file Voronoi.hh.

References norm(), fastjet::Point::x, and fastjet::Point::y.

Referenced by norm().

00107                                  {
00108   return p.x*p.x+p.y*p.y;
00109 }

template<class T>
std::vector<T> objects_sorted_by_values const std::vector< T > &  objects,
const std::vector< double > &  values
 

given a vector of values with a one-to-one correspondence with the vector of objects, sort objects into an order such that the associated values would be in increasing order (but don't actually touch the values vector in the process).

template<class T>
vector<T> objects_sorted_by_values const vector< T > &  objects,
const vector< double > &  values
 

given a vector of values with a one-to-one correspondence with the vector of objects, sort objects into an order such that the associated values would be in increasing order

Definition at line 334 of file PseudoJet.cc.

References sort_indices().

Referenced by sorted_by_E(), sorted_by_pt(), and sorted_by_rapidity().

00336                                                       {
00337 
00338   assert(objects.size() == values.size());
00339 
00340   // get a vector of indices
00341   vector<int> indices(values.size());
00342   for (size_t i = 0; i < indices.size(); i++) {indices[i] = i;}
00343   
00344   // sort the indices
00345   sort_indices(indices, values);
00346   
00347   // copy the objects 
00348   vector<T> objects_sorted(objects.size());
00349   
00350   // place the objects in the correct order
00351   for (size_t i = 0; i < indices.size(); i++) {
00352     objects_sorted[i] = objects[indices[i]];
00353   }
00354 
00355   return objects_sorted;
00356 }

PseudoJet fastjet::operator * const PseudoJet &  jet,
double  coeff
 

Definition at line 177 of file PseudoJet.cc.

00177                                                           {
00178   return coeff*jet;
00179 } 

PseudoJet fastjet::operator * double  coeff,
const PseudoJet &  jet
 

Definition at line 167 of file PseudoJet.cc.

00167                                                           {
00168   //return PseudoJet(coeff*jet.four_mom());
00169   // the following code is hopefully more efficient
00170   PseudoJet coeff_times_jet(jet);
00171   coeff_times_jet *= coeff;
00172   return coeff_times_jet;
00173 } 

PseudoJet fastjet::operator+ const PseudoJet &  jet1,
const PseudoJet &  jet2
 

Definition at line 147 of file PseudoJet.cc.

References fastjet::PseudoJet::E(), fastjet::PseudoJet::px(), fastjet::PseudoJet::py(), and fastjet::PseudoJet::pz().

Referenced by fastjet::Coord2D::operator+().

00147                                                                      {
00148   //return PseudoJet(jet1.four_mom()+jet2.four_mom());
00149   return PseudoJet(jet1.px()+jet2.px(),
00150                    jet1.py()+jet2.py(),
00151                    jet1.pz()+jet2.pz(),
00152                    jet1.E() +jet2.E()  );
00153 } 

PseudoJet fastjet::operator- const PseudoJet &  jet1,
const PseudoJet &  jet2
 

Definition at line 157 of file PseudoJet.cc.

References fastjet::PseudoJet::E(), fastjet::PseudoJet::px(), fastjet::PseudoJet::py(), and fastjet::PseudoJet::pz().

Referenced by fastjet::Coord2D::operator-().

00157                                                                      {
00158   //return PseudoJet(jet1.four_mom()-jet2.four_mom());
00159   return PseudoJet(jet1.px()-jet2.px(),
00160                    jet1.py()-jet2.py(),
00161                    jet1.pz()-jet2.pz(),
00162                    jet1.E() -jet2.E()  );
00163 } 

PseudoJet fastjet::operator/ const PseudoJet &  jet,
double  coeff
 

Definition at line 183 of file PseudoJet.cc.

Referenced by fastjet::Coord2D::operator/().

00183                                                           {
00184   return (1.0/coeff)*jet;
00185 } 

PseudoJet fastjet::PtYPhiM double  pt,
double  y,
double  phi,
double  m = 0.0
 

return a pseudojet with the given pt, y, phi and mass

Definition at line 293 of file PseudoJet.cc.

00293                                                              {
00294   double ptm = sqrt(pt*pt+m*m);
00295   return PseudoJet(pt*cos(phi), pt*sin(phi), ptm*sinh(y), ptm*cosh(y));
00296 }

double scalar_product const Point &  p1,
const Point &  p2
[inline]
 

scalar product

Definition at line 119 of file Voronoi.hh.

References scalar_product(), fastjet::Point::x, and fastjet::Point::y.

Referenced by scalar_product().

00119                                                               {
00120   return p1.x*p2.x+p1.y*p2.y;
00121 }

int fastjet::scomp const void *  p1,
const void *  p2
 

Definition at line 1035 of file Voronoi.cc.

References fastjet::Point::x, and fastjet::Point::y.

Referenced by fastjet::VoronoiDiagramGenerator::generateVoronoi().

01036 {
01037   Point *s1 = (Point*)p1, *s2=(Point*)p2;
01038   if(s1->y < s2->y) return(-1);
01039   if(s1->y > s2->y) return(1);
01040   if(s1->x < s2->x) return(-1);
01041   if(s1->x > s2->x) return(1);
01042   return(0);
01043 }

void sort_indices std::vector< int > &  indices,
const std::vector< double > &  values
 

sort the indices so that values[indices[0->n-1]] is sorted into increasing order

void sort_indices vector< int > &  indices,
const vector< double > &  values
 

Definition at line 324 of file PseudoJet.cc.

Referenced by objects_sorted_by_values().

00325                                                         {
00326   IndexedSortHelper index_sort_helper(&values);
00327   sort(indices.begin(), indices.end(), index_sort_helper);
00328 }

std::vector<PseudoJet> sorted_by_E const std::vector< PseudoJet > &  jets  ) 
 

return a vector of jets sorted into decreasing energy

vector<PseudoJet> sorted_by_E const vector< PseudoJet > &  jets  ) 
 

return a vector of jets sorted into decreasing energy

Definition at line 376 of file PseudoJet.cc.

References objects_sorted_by_values().

Referenced by main().

00376                                                               {
00377   vector<double> energies(jets.size());
00378   for (size_t i = 0; i < jets.size(); i++) {energies[i] = -jets[i].E();}
00379   return objects_sorted_by_values(jets, energies);
00380 }

std::vector<PseudoJet> sorted_by_pt const std::vector< PseudoJet > &  jets  ) 
 

return a vector of jets sorted into decreasing transverse momentum

vector<PseudoJet> sorted_by_pt const vector< PseudoJet > &  jets  ) 
 

return a vector of jets sorted into decreasing kt2

Definition at line 360 of file PseudoJet.cc.

References objects_sorted_by_values().

Referenced by main(), print_jets(), and fastjet::ClusterSequenceAreaBase::subtracted_jets().

00360                                                                {
00361   vector<double> minus_kt2(jets.size());
00362   for (size_t i = 0; i < jets.size(); i++) {minus_kt2[i] = -jets[i].kt2();}
00363   return objects_sorted_by_values(jets, minus_kt2);
00364 }

std::vector<PseudoJet> sorted_by_rapidity const std::vector< PseudoJet > &  jets  ) 
 

return a vector of jets sorted into increasing rapidity

vector<PseudoJet> sorted_by_rapidity const vector< PseudoJet > &  jets  ) 
 

return a vector of jets sorted into increasing rapidity

Definition at line 368 of file PseudoJet.cc.

References objects_sorted_by_values().

Referenced by main().

00368                                                                      {
00369   vector<double> rapidities(jets.size());
00370   for (size_t i = 0; i < jets.size(); i++) {rapidities[i] = jets[i].rap();}
00371   return objects_sorted_by_values(jets, rapidities);
00372 }

double vector_product const Point &  p1,
const Point &  p2
[inline]
 

2D vector product

Definition at line 113 of file Voronoi.hh.

References vector_product(), fastjet::Point::x, and fastjet::Point::y.

Referenced by vector_product().

00113                                                               {
00114   return p1.x*p2.y-p1.y*p2.x;
00115 }


Variable Documentation

BasicRandom< double > fastjet::_G_random_double
 

Definition at line 49 of file BasicRandom.cc.

BasicRandom< int > fastjet::_G_random_int
 

Definition at line 48 of file BasicRandom.cc.

const JetAlgorithm fastjet::aachen_algorithm = cambridge_algorithm
 

provide other possible names for the Cambridge/Aachen algorithm?

Definition at line 110 of file JetDefinition.hh.

const JetAlgorithm fastjet::cambridge_aachen_algorithm = cambridge_algorithm
 

Definition at line 111 of file JetDefinition.hh.

const double fastjet::eulergamma = 0.577215664901532860606512090082402431042
 

Definition at line 47 of file numconsts.hh.

const double fastjet::HUGE_DOUBLE = 1e300
 

Definition at line 56 of file Triangulation.hh.

Referenced by fastjet::DnnPlane::_SetAndUpdateNearest(), and fastjet::DnnPlane::_SetNearest().

const unsigned int fastjet::huge_unsigned = 4294967295U
 

Definition at line 39 of file ClosestPair2D.cc.

const int fastjet::INFINITE_VERTEX = -1
 

Definition at line 54 of file Triangulation.hh.

Referenced by fastjet::DnnPlane::_SetAndUpdateNearest(), fastjet::DnnPlane::_SetNearest(), fastjet::DnnPlane::DnnPlane(), and fastjet::DnnPlane::RemoveAndAddPoints().

const double fastjet::ln2 = 0.693147180559945309417232121458176568076
 

Definition at line 48 of file numconsts.hh.

const double fastjet::MaxRap = 1e5
 

Used to protect against parton-level events where pt can be zero for some partons, giving rapidity=infinity.

KtJet fails in those cases.

Definition at line 48 of file PseudoJet.hh.

Referenced by fastjet::PseudoJet::_finish_init(), and fastjet::PseudoJet::pseudorapidity().

const int fastjet::NEW_VERTEX = -2
 

Definition at line 55 of file Triangulation.hh.

Referenced by fastjet::DnnPlane::_CrashIfVertexPresent(), and fastjet::InitialisedInt::InitialisedInt().

const double fastjet::pi = 3.141592653589793238462643383279502884197
 

Definition at line 42 of file numconsts.hh.

Referenced by fastjet::ClusterSequence::_bj_dist(), fastjet::ClusterSequence::_CP2DChan_limited_cluster(), fastjet::Dnn3piCylinder::_RegisterCylinderPoint(), fastjet::Dnn2piCylinder::_RegisterCylinderPoint(), fastjet::Dnn4piCylinder::_remap_phi(), fastjet::Dnn3piCylinder::_remap_phi(), fastjet::Dnn2piCylinder::_remap_phi(), fastjet::Dnn4piCylinder::Dnn4piCylinder(), fastjet::JetDefinition::JetDefinition(), fastjet::PseudoJet::kt_distance(), fastjet::ClusterSequenceAreaBase::n_empty_jets(), fastjet::PseudoJet::phi_std(), fastjet::PseudoJet::plain_distance(), fastjet::PseudoJet::pseudorapidity(), and fastjet::JetDefinition::DefaultRecombiner::recombine().

const double fastjet::pisq = 9.869604401089358618834490999876151135314
 

Definition at line 44 of file numconsts.hh.

const double fastjet::twopi = 6.283185307179586476925286766559005768394
 

Definition at line 43 of file numconsts.hh.

const unsigned int fastjet::twopow31 = 2147483648U
 

Definition at line 40 of file ClosestPair2D.cc.

Referenced by fastjet::ClosestPair2D::_initialize(), and fastjet::ClosestPair2D::_point2shuffle().

const double fastjet::zeta2 = 1.644934066848226436472415166646025189219
 

Definition at line 45 of file numconsts.hh.

const double fastjet::zeta3 = 1.202056903159594285399738161511449990765
 

Definition at line 46 of file numconsts.hh.


Generated on Mon Dec 3 11:53:59 2007 for fastjet by doxygen 1.3.4