MarlinTPC
1.2.0
|
A processor which instantiates a TrackFitterSimpleMinimizer and fits the tracks with it. More...
#include <TrackFitterSimpleMinimizerProcessor.h>
Public Member Functions | |
TrackFitterSimpleMinimizerProcessor () | |
Default constructor. | |
~TrackFitterSimpleMinimizerProcessor () | |
Destructor. | |
Processor * | newProcessor () |
Return a new instance of this processor. | |
void | init () |
In this processor the init function set the collection parameters for the track collection. | |
void | processRunHeader (lcio::LCRunHeader *run) |
Called once per run to process the event's header. | |
virtual void | processEvent (lcio::LCEvent *evt) |
Process event requests a track fitter from the TrackFitterFactory for each event (to update possible conditions data). More... | |
virtual void | check (lcio::LCEvent *evt) |
Called for every event - right after processEvent() has been called. | |
virtual void | end () |
Called after data processing for clean up in the inverse order of the init() method so that resources allocated in the first processor also will be available for all following processors. | |
Protected Member Functions | |
std::vector< double > | calculateMeanAndRMS (EVENT::Track *track, TrackFitterBase *fitter) |
Returns meanXY, meanZ, rmsXY, rmsZ (in this order) | |
Protected Attributes | |
std::string | _input_seed_tracks_collection_name |
The name of the input collection of seed tracks. | |
std::string | _output_tracks_collection_name |
The name of the output collection with the fitted tracks. | |
bool | _writeOutput |
int | _maxIterations |
bool | _rejectOutliers |
float | _cutValue |
EVENT::LCParameters * | _trackCollectionParameters |
A processor which instantiates a TrackFitterSimpleMinimizer and fits the tracks with it.
Optionally an itterative outlier rejection can be performed. The residual distribution is calculated from the hits on the track and a CutValue
* RMS cut is applied. Afterwards the track is refit. This procedure is repeated until the cut converges or the MaxIterations is reached.
InputSeedTracks | The the name of the input collection of track candidates (default: TPCSeedTracks) |
OutputTracks | The name of the output collection with the fitted tracks (default: TPCTracks) |
WriteOutputToStorage | If true the output collection is written to file (default: true) * |
MaxIterations | Maximum number of iterations for outlier rejection (default: 10) |
CutValue | Cut outliers wich are _cutValue*RMS away from the fitted track, optional: Setting this value turns on this feature. |
|
virtual |
Process event requests a track fitter from the TrackFitterFactory for each event (to update possible conditions data).
Afterwards it loops all tracks and fits them.
References _input_seed_tracks_collection_name, _output_tracks_collection_name, calculateMeanAndRMS(), marlintpc::TrackFitterBase::calculateResiduals(), marlintpc::TrackFitterBase::fitTrack(), marlintpc::TrackFitterBase::getFitterType(), marlintpc::TrackFitterFactory::getTrackFitter(), and marlintpc::TrackFitterBase::FitterTypes::SIMPLEMINIMIZER.