public class FastMCTrackFactory extends Object
Modifier and Type | Field and Description |
---|---|
private double |
_Bz |
private ConditionsManager |
_manager |
private SimpleTables |
_simpleTables |
private HelixSwimmer |
_swimmer |
private TrackResolutionTables |
_tables |
private static SpacePoint |
pDummy |
private static Random |
rDummy |
Constructor and Description |
---|
FastMCTrackFactory(EventHeader event,
boolean beamConstraint)
This constructor obtains the necessary information for construction like the field and the resolution tables from the event.
|
FastMCTrackFactory(String detectorName,
double field,
boolean beamConstraint)
This constructor is only to be used by unit tests.
|
Modifier and Type | Method and Description |
---|---|
Track |
getTrack(Hep3Vector momentum,
Hep3Vector location,
int charge) |
Track |
getTrack(MCParticle part)
Creates a track from an MCParticle
|
Track |
getTrack(SpaceVector momentum,
SpacePoint location,
int charge)
Creates a new Track with the given parameters.
|
Track |
getTrack(SpaceVector momentum,
SpacePoint location,
int charge,
Random random)
Creates a new Track with the given parameters.
|
Track |
getTrack(SpaceVector momentum,
SpacePoint location,
SpacePoint referencePoint,
int charge)
Creates a new Track with the given parameters.
|
Track |
getTrack(SpaceVector momentum,
SpacePoint location,
SpacePoint referencePoint,
int charge,
Random random)
Returns a new Track object initialized with the given values, and with its parameters smeared according to the Tables that are read from the detector.
|
Track |
getTrack(SpaceVector momentum,
SpacePoint location,
SpacePoint referencePoint,
int charge,
Random random,
boolean shouldISmear)
This version is only to be used in unit tests.
|
Track |
getUnsmearedTrack(MCParticle part)
Creates a track from an MCParticle without smearing the parameters
|
void |
setNewReferencePoint(Track track,
SpacePoint referencePoint)
Swims the Track to a new reference point and calculates the parameters anew.
|
private static LCIOParameters |
smearParameters(LCIOParameters oldParams,
SymmetricMatrix sm,
Random random)
Smears the measurement matrix with a Gaussian error
|
private TrackResolutionTables _tables
private SimpleTables _simpleTables
private ConditionsManager _manager
private double _Bz
private HelixSwimmer _swimmer
private static Random rDummy
private static SpacePoint pDummy
public FastMCTrackFactory(EventHeader event, boolean beamConstraint)
event
- The current eventbeamConstraint
- A switch to obtain the resolution tables with or without beamconstraintpublic FastMCTrackFactory(String detectorName, double field, boolean beamConstraint)
public Track getTrack(MCParticle part)
part
- The MCParticle that is transformed to a trackpublic Track getUnsmearedTrack(MCParticle part)
part
- The MCParticle that is transformed to a trackpublic Track getTrack(SpaceVector momentum, SpacePoint location, int charge)
#getTrack(SpacePoint, SpacePoint, SpacePoint, int, Random)
for details.momentum
- The momentum at a given locationlocation
- The location where the momentum is measuredcharge
- The charge of the Particle that created the Trackpublic Track getTrack(SpaceVector momentum, SpacePoint location, int charge, Random random)
#getTrack(SpacePoint, SpacePoint, SpacePoint, int, Random)
for details.momentum
- The momentum at a given locationlocation
- The location where the momentum is measuredcharge
- The charge of the Particle that created the Trackrandom
- A random generator instancepublic Track getTrack(SpaceVector momentum, SpacePoint location, SpacePoint referencePoint, int charge)
#getTrack(SpacePoint, SpacePoint, SpacePoint, int, Random)
for details.momentum
- The momentum at a given locationlocation
- The location where the momentum is measuredreferencePoint
- The point with respect to which the parameters are measuredcharge
- The charge of the Particle that created the Trackpublic Track getTrack(SpaceVector momentum, SpacePoint location, SpacePoint referencePoint, int charge, Random random, boolean shouldISmear)
momentum
- The momentum at a given locationlocation
- The location where the momentum is measuredreferencePoint
- The point with respect to which the parameters are measuredcharge
- The charge of the Particle that created the Trackrandom
- A random generator instanceshouldISmear
- This parameter switches smearing on/off. It should always be true except in Unit tests.public Track getTrack(SpaceVector momentum, SpacePoint location, SpacePoint referencePoint, int charge, Random random)
momentum
- The momentum at a given locationlocation
- The location where the momentum is measuredreferencePoint
- The point with respect to which the parameters are measuredcharge
- The charge of the Particle that created the Trackrandom
- A random generator instancepublic Track getTrack(Hep3Vector momentum, Hep3Vector location, int charge)
public void setNewReferencePoint(Track track, SpacePoint referencePoint)
track
- The track to be swumreferencePoint
- The new reference point for the track to swim toprivate static LCIOParameters smearParameters(LCIOParameters oldParams, SymmetricMatrix sm, Random random)
oldParams
- The unsmeared ParameterserrorMatrix
- The measurement error matrixrandom
- A random generatorCopyright © 2016 Linear Collider Detector (LCD). All rights reserved.