hephysics.jet
Class SCJet
- java.lang.Object
-
- hephysics.jet.SCJet
-
public class SCJet extends java.lang.ObjectSCJet is an implementation of the longitudinally-invariant kT, anti-KT and Cambridge/Aachen clustering algorithms. The algorithm uses rapidity-phi for the distance parameter and double values for merging. The input and output for this algorithm isParticleDclass.This class uses double values for calculations, caching and requires more memory, compared to the light-weight
KTjetclass that uses floats and pseudo-rapidity to define the distance parameter. This implementation can access jet constituents.
This algorithm is similar to the FastJet http://fastjet.fr/ implementation that uses rapidity. Use light-weightKTjetclass when using pseudo-rapidity and phi to define distance parameters. The method uses E-scheme to combine particles (p1+p2). More details is in http://arxiv.org/pdf/hep-ph/0210022v1.pdf.
-
-
Constructor Summary
Constructors Constructor and Description SCJet(double R, double minpt)Initialize calculations of the kT algorithm.SCJet(double R, int recom, int mode, double minpt)Initialize calculations of the longitudinally invariant kT algorithm in inclusive mode.SCJet(double R, int recom, int mode, double minpt, boolean isfast)Initialize calculations of the longitudinally invariant kT algorithm in inclusive mode.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description java.util.List<ParticleD>buildJets(java.util.List<ParticleD> list)Run the jet algorithm using the list of particles.doublegetDistance(ParticleD a, ParticleD b)Calculate R distance in y-phi.java.util.ArrayList<ParticleD>getJetsSorted()Get jets after sorting in jet pT.doublegetKtDistance1(ParticleD a)This is the KT distance to the beam (assuming Z=Y=0).doublegetKtDistance12(ParticleD a, ParticleD b)Calculate delta R distance.static voidmain(java.lang.String[] args)Main class for testing.voidprintJets()Print the kT jets for debugging.voidsetDebug(boolean debug)Print debugging information.java.lang.StringtoString()Print the kT jets for debugging to a string.
-
-
-
Constructor Detail
-
SCJet
public SCJet(double R, int recom, int mode, double minpt, boolean isfast)Initialize calculations of the longitudinally invariant kT algorithm in inclusive mode. Jet can be clustered using Cambridge/Aachen or anti-kT approaches, depending on the "mode" parameter. The distance parameters are rapidity and phi.- Parameters:
R- distance measurerecom- recombination scheme.
1: The E-scheme Simple 4-vector addition.
2: The pT-scheme.
3: The pT^2 scheme.
Currently only E-scheme is implemented.mode- clustering mode dij=min(kT_i^{2* mode},kT_j^{2* mode})).
mode=1 means inclusive kT jet algorithm
mode=0 means Cambridge/Aachen jet algorithm
mode=-1 means anti-KT jet algorithmminpt- min pT for final jets.isfast- if true, use a seeded anti-KT algorithm. This algorithm is faster, but some difference may exist with the original anti-KT (i.e. when true is set) for soft jets. If false, use the traditional that scales as N^3 (slow).
-
SCJet
public SCJet(double R, int recom, int mode, double minpt)Initialize calculations of the longitudinally invariant kT algorithm in inclusive mode. Jet can be clustered using Cambridge/Aachen or anti-kT approaches, depending on the "mode" parameter. The distance parameters are rapidity and phi. Fast mode is disabled.- Parameters:
R- distance measurerecom- recombination scheme.
1: The E-scheme Simple 4-vector addition.
2: The pT-scheme.
3: The pT^2 scheme.
Currently only E-scheme is implemented.mode- clustering mode dij=min(kT_i^{2* mode},kT_j^{2* mode})).
mode=1 means inclusive kT jet algorithm
mode=0 means Cambridge/Aachen jet algorithm
mode=-1 means anti-kT jet algorithmminpt- min pT for final jets.
-
SCJet
public SCJet(double R, double minpt)Initialize calculations of the kT algorithm. Meaningful values are R=0.2- 1. Jets are clustered in rapidity and phi space. The The E-scheme with 4-vector addition is used.- Parameters:
R- distance measureminpt- min pT for final jets.
-
-
Method Detail
-
buildJets
public java.util.List<ParticleD> buildJets(java.util.List<ParticleD> list)
Run the jet algorithm using the list of particles.- Parameters:
list- list with particles- Returns:
- final jets without sorting.
-
getJetsSorted
public java.util.ArrayList<ParticleD> getJetsSorted()
Get jets after sorting in jet pT. Run buildJets before calling this method.- Returns:
- list with sorted jets
-
printJets
public void printJets()
Print the kT jets for debugging.
-
toString
public java.lang.String toString()
Print the kT jets for debugging to a string.- Overrides:
toStringin classjava.lang.Object- Returns:
- String representing a jet
-
getKtDistance12
public double getKtDistance12(ParticleD a, ParticleD b)
Calculate delta R distance.- Parameters:
a- input particleb- input particlep- power parameter- Returns:
- Kt distance
-
getDistance
public double getDistance(ParticleD a, ParticleD b)
Calculate R distance in y-phi.- Parameters:
a- input particleb- input particle- Returns:
- y-phi distance
-
getKtDistance1
public double getKtDistance1(ParticleD a)
This is the KT distance to the beam (assuming Z=Y=0). The distance measure depends on the mode parameter.- Parameters:
a- particle- Returns:
- kT distance
-
setDebug
public void setDebug(boolean debug)
Print debugging information. It shows how much time spend to make jets in ms.- Parameters:
debug- true if printing benchmark information.
-
main
public static void main(java.lang.String[] args)
Main class for testing.- Parameters:
args-
-
-
DMelt 3.0 © DataMelt by jWork.ORG