Go to the documentation of this file.
7 #ifndef CalibPPS_AlignmentRelative_StraightTrackAlignment_h
8 #define CalibPPS_AlignmentRelative_StraightTrackAlignment_h
73 std::vector<unsigned int>
rpIds;
174 std::map<std::set<unsigned int>,
unsigned long>
242 const std::set<unsigned int> &selectedRPs,
signed int eventsFitted
counter of processed tracks
TH1D * chisqn_log_selected
Track-based alignment using straight tracks.
std::map< std::set< unsigned int >, TH1D * > perRPSet_fitted
signed int maxEvents
stops after this event number has been reached
Represents an alignment task.
bool requireAtLeast3PotsInOverlap
if a track goes through overlap, select it only if it leaves signal in at least 3 pots
std::map< std::set< unsigned int >, unsigned long > fittedTracksPerRPSet
counter of fitted tracks in a certain RP set
TGraph * fitAxVsAyGraph_fitted
plots ax vs. ay
std::map< unsigned int, unsigned int > selectedHitsPerPlane
counter of selected hits per plane
signed int eventsTotal
counter of events
TFile * taskDataFile
the file with task data
std::string diagnosticsFile
file name for some event selection statistics
bool saveIntermediateResults
whether itermediate results (S, CS matrices) of alignments shall be saved
std::map< unsigned int, ResiduaHistogramSet > residuaHistograms
residua histograms
std::string factoredFileNamePrefix
file name prefix for cumulative factored result files
TGraph * fitBxVsByGraph_selected
TH1D * chisqn_lin_fitted
normalised chi^2 histograms for all/selected tracks, in linear/logarithmic scale
TH1D * fitBxHist_selected
fit bx histograms for all/selected tracks
void printAlgorithmsLine(const std::vector< std::map< unsigned int, AlignmentResult > > &)
signed int eventsSelected
counter of processed tracks
LocalTrackFitter fitter
track fitter
std::string cumulativeFileNamePrefix
file name prefix for cumulative result files
std::string taskDataFileName
the name task data file
virtual void finish()
performs analyses and fill results variable
RPSetPlots globalPlots
global (all RP sets) chi^2 histograms
TH1D * fitNdfHist_selected
fit num. of degrees of freedom histograms for all/selected tracks
CTPPSRPAlignmentCorrectionsData initialAlignments
(real geometry) alignments before this alignment iteration
AlignmentTask task
the alignment task to be solved
unsigned int verbosity
verbosity level
void updateDiagnosticHistograms(const HitCollection &selection, const std::set< unsigned int > &selectedRPs, const LocalTrackFit &trackFit, bool trackSelected)
fills diagnostic (chi^2, residua, ...) histograms
bool requireOverlap
if true, only track through vertical-horizontal overlap are seleceted
ConstraintsType
constraint types
TH1D * fitPHist_selected
fit p-value histograms for all/selected tracks
bool cutOnChiSqPerNdf
whether to cut on chi^2/ndf
std::vector< std::set< unsigned int > > additionalAcceptedRPSets
list of RP sets accepted irrespective of the other "require" settings
StraightTrackAlignment(const edm::ParameterSet &)
std::vector< unsigned int > excludePlanes
list of planes to be excluded from processing
std::map< std::set< unsigned int >, TH1D * > perRPSet_selected
bool removeImpossible
remove events with impossible signatures (i.e. simultaneously top and bottom)
map: detector id --> residua histogram
bool buildDiagnosticPlots
whether to build and save diagnostic plots
TH1D * newResiduaHist(const char *name)
creates a new residua histogram
virtual void processEvent(const edm::EventID &eventId, const edm::DetSetVector< TotemRPUVPattern > &uvPatternsStrip, const edm::DetSetVector< CTPPSDiamondRecHit > &hitsDiamond, const edm::DetSetVector< CTPPSPixelRecHit > &hitsPixel, const edm::DetSetVector< CTPPSPixelLocalTrack > &tracksPixel)
TH1D * chisqn_lin_selected
void fitLocalTrack(HitCollection &, LocalTrackFit &, bool &failed, bool &selectionChanged)
std::string fileNamePrefix
file name prefix for result files
bool preciseXMLFormat
whether to use long format (many decimal digits) when saving XML files
std::map< std::set< unsigned int >, RPSetPlots > rpSetPlots
chi^2 histograms per RP set
void printLineSeparator(const std::vector< std::map< unsigned int, AlignmentResult > > &)
void buildConstraints(std::vector< AlignmentConstraint > &)
builds a selected set of constraints
void saveDiagnostics() const
saves a ROOT file with diagnostic plots
TGraph * fitBxVsByGraph_fitted
plots bx vs. by
ConstraintsType constraintsType
the chosen type of constraints
std::vector< unsigned int > rpIds
list of RPs for which the alignment parameters shall be optimized
unsigned int requireNumberOfUnits
select only tracks with activity in minimal number of units
static std::string setToString(const std::set< unsigned int > &)
converts a set to string
double maxTrackAx
cuts on absolute values of the track angle
std::map< std::set< unsigned int >, unsigned long > selectedTracksPerRPSet
counter of selected tracks in a certain RP set
TGraph * selected_vs_chiSq
std::vector< Hit > HitCollection
void printN(const char *str, unsigned int N)
result pretty printing routines
double chiSqPerNdfCut
the value of chi^2/ndf cut threshold
Local (linear) track description (or a fit result). Uses global reference system.
Container for CTPPS RP alignment corrections. The corrections are stored on two levels - RP and senso...
TGraph * fitAxVsAyGraph_selected
void printQuantitiesLine(const std::vector< std::map< unsigned int, AlignmentResult > > &)
bool saveXMLUncertainties
whether to save uncertainties in the result XML files
TH1D * fitAxHist_selected
fit ax histograms for all/selected tracks
std::vector< AlignmentAlgorithm * > algorithms
the collection of the alignment algorithms
TH1D * fitAyHist_selected
fit ay histograms for all/selected tracks
virtual void begin(edm::ESHandle< CTPPSRPAlignmentCorrectionsData > hRealAlignment, edm::ESHandle< CTPPSGeometry > hRealGeometry, edm::ESHandle< CTPPSGeometry > hMisalignedGeometry)
virtual ~StraightTrackAlignment()
TH1D * fitByHist_selected
fit by histograms for all/selected tracks
void removeInsufficientPots(HitCollection &, bool &selectionChanged)
removes the hits of pots with too few planes active
std::string expandedFileNamePrefix
file name prefix for cumulative expanded result files
Performs straight-line fit and outlier rejection.