hephysics.hepsim
Class PromcUtil
- java.lang.Object
-
- hephysics.hepsim.PromcUtil
-
public class PromcUtil extends java.lang.Object
Utils classes to fill particles from ProMC data format of the HepSim repository with Monte Carlo predictions.
-
-
Constructor Summary
Constructors Constructor and Description PromcUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static LParticle[]
getLParticleArray(promc.io.ProMCHeaderFile.ProMCHeader header, promc.io.ProMC.ProMCEvent.Particles pa, int status, double pTmin, double etaMax)
Fill particles from ProMC and apply into array after some cuts if available.static java.util.List<LParticle>
getLParticleList(promc.io.ProMCHeaderFile.ProMCHeader header, promc.io.ProMC.ProMCEvent.Particles pa, int status, double pTmin, double etaMax)
Fill particles from ProMC and apply some cuts if available.static HEParticle
getParticle(promc.io.ProMC.ProMCEvent.Particles pa, int energy_unit, int length_unit, int j)
For a given momentum unit, create a Lorentz particle object at the position j.static java.util.List<ParticleD>
getParticleDList(pronlo.io.ProMCHeaderFile.ProMCHeader header, pronlo.io.ProMC.ProMCEvent.Particles pa, double pTmin, double etaMax)
Fill particles from ProMC from a typical NLO program, and apply some cuts if available.static java.util.List<ParticleD>
getParticleDList(promc.io.ProMCHeaderFile.ProMCHeader header, promc.io.ProMC.ProMCEvent.Particles pa, int status, double pTmin, double etaMax)
Fill particles from ProMC and apply some cuts if available.static java.util.List<ParticleF>
getParticleFList(pronlo.io.ProMCHeaderFile.ProMCHeader header, pronlo.io.ProMC.ProMCEvent.Particles pa, double pTmin, double etaMax)
Fill particles from ProMC from a typical NLO program, and apply some cuts if available.static java.util.List<ParticleF>
getParticleFList(promc.io.ProMCHeaderFile.ProMCHeader header, promc.io.ProMC.ProMCEvent.Particles pa, int status, double pTmin, double etaMax)
Fill particles from ProMC and apply some cuts if available.static LParticle
getPosition(promc.io.ProMC.ProMCEvent.Particles pa, int unit, int j)
For a given space/time unit, create a particle with postions X, Y,Z,Time.
-
-
-
Method Detail
-
getParticle
public static HEParticle getParticle(promc.io.ProMC.ProMCEvent.Particles pa, int energy_unit, int length_unit, int j)
For a given momentum unit, create a Lorentz particle object at the position j. It keeps 4-momentum, postion, PDG ID, status etc.- Parameters:
pa
- particle record from a ProMC fileenergy_unit
- momentum / energy unit used to create a 4-momentum from a varint (int64)length_unit
- length unit used to create (x,y,z,t) from a varint (int64)j
- position of the particle in the ProMC record- Returns:
- a HEP Lorentz particle of the record.
-
getPosition
public static LParticle getPosition(promc.io.ProMC.ProMCEvent.Particles pa, int unit, int j)
For a given space/time unit, create a particle with postions X, Y,Z,Time.- Parameters:
pa
- particle record from a ProMC file.unit
- space/time lenght unit used to convert a varint to a value.j
- position of particle in the record- Returns:
- particle position
-
getLParticleList
public static java.util.List<LParticle> getLParticleList(promc.io.ProMCHeaderFile.ProMCHeader header, promc.io.ProMC.ProMCEvent.Particles pa, int status, double pTmin, double etaMax)
Fill particles from ProMC and apply some cuts if available. Also you can apply some basic cuts.- Parameters:
header
- header from ProMC filepa
- particle record from ProMC filestatus
- status code for particles to be accepted. For final state, use status==1pTmin
- minimum pT cut for filled particles. If pTmin less than, do not apply any pT cutetaMax
- maximum Eta (pseudorapidity) cut on filled particles. If etaMax greater than 1000, no any Eta cut is applied.
-
getLParticleArray
public static LParticle[] getLParticleArray(promc.io.ProMCHeaderFile.ProMCHeader header, promc.io.ProMC.ProMCEvent.Particles pa, int status, double pTmin, double etaMax)
Fill particles from ProMC and apply into array after some cuts if available. Also you can apply some basic cuts.- Parameters:
header
- header from ProMC filepa
- particle record from ProMC filestatus
- status code for particles to be accepted. For final state, use status==1pTmin
- minimum pT cut for filled particles. If pTmin less than, do not apply any pT cutetaMax
- maximum Eta (pseudorapidity) cut on filled particles. If etaMax greater than 1000, no any Eta cut is applied.
-
getParticleFList
public static java.util.List<ParticleF> getParticleFList(promc.io.ProMCHeaderFile.ProMCHeader header, promc.io.ProMC.ProMCEvent.Particles pa, int status, double pTmin, double etaMax)
Fill particles from ProMC and apply some cuts if available. Use float precisions for particle definitions. Also you can apply some basic cuts.- Parameters:
header
- header from ProMC filepa
- particle record from ProMC filestatus
- status code for particles to be accepted. For final state, use status==1pTmin
- minimum pT cut for filled particles. If pTmin less than, do not apply any pT cutetaMax
- maximum Eta (pseudorapidity) cut on filled particles. If etaMax greater than 1000, no any Eta cut is applied.
-
getParticleFList
public static java.util.List<ParticleF> getParticleFList(pronlo.io.ProMCHeaderFile.ProMCHeader header, pronlo.io.ProMC.ProMCEvent.Particles pa, double pTmin, double etaMax)
Fill particles from ProMC from a typical NLO program, and apply some cuts if available. Use float precisions for particle definitions. Also you can apply some basic cuts.- Parameters:
header
- header from ProMC filepa
- particle record from ProMC filepTmin
- minimum pT cut for filled particles. If pTmin less than, do not apply any pT cutetaMax
- maximum Eta (pseudorapidity) cut on filled particles. If etaMax greater than 1000, no any Eta cut is applied.
-
getParticleDList
public static java.util.List<ParticleD> getParticleDList(pronlo.io.ProMCHeaderFile.ProMCHeader header, pronlo.io.ProMC.ProMCEvent.Particles pa, double pTmin, double etaMax)
Fill particles from ProMC from a typical NLO program, and apply some cuts if available. Use double precisions for particle definitions. Also you can apply some basic cuts.- Parameters:
header
- header from ProMC filepa
- particle record from ProMC filepTmin
- minimum pT cut for filled particles. If pTmin less than, do not apply any pT cutetaMax
- maximum Eta (pseudorapidity) cut on filled particles. If etaMax greater than 1000, no any Eta cut is applied.
-
getParticleDList
public static java.util.List<ParticleD> getParticleDList(promc.io.ProMCHeaderFile.ProMCHeader header, promc.io.ProMC.ProMCEvent.Particles pa, int status, double pTmin, double etaMax)
Fill particles from ProMC and apply some cuts if available. Use double precision particle definition. Also you can apply some basic cuts.- Parameters:
header
- header from ProMC filepa
- particle record from ProMC filestatus
- status code for particles to be accepted. For final state, use status==1pTmin
- minimum pT cut for filled particles. If pTmin less than, do not apply any pT cutetaMax
- maximum Eta (pseudorapidity) cut on filled particles. If etaMax greater than 1000, no any Eta cut is applied.
-
-
DMelt 3.0 © DataMelt by jWork.ORG