1 #ifndef Alignment_HIPAlignmentAlgorithm_HIPAlignmentAlgorithm_h 2 #define Alignment_HIPAlignmentAlgorithm_HIPAlignmentAlgorithm_h 12 #include "Riostream.h" 79 double calcAPE(
double* par,
int iter,
int function);
TTree * theTrackMonitorTree
std::string uniEtaFormula
std::vector< float > m_Phi
std::vector< HIPAlignableSpecificParameters > theAlignableSpecifics
HIPAlignableSpecificParameters defaultAlignableSpecs
AlignmentParameterStore * theAlignmentParameterStore
TFile * theAlignablesMonitorIORootFile
std::vector< int > m_nhTEC
HIPAlignableSpecificParameters * findAlignableSpecs(const Alignable *ali)
std::vector< int > m_nhTIB
align::StructureType m2_ObjId
std::vector< float > m_wt
def setup(process, global_tag, zero_tesla=False)
void writeIterationFile(std::string filename, int iter)
TFile * theTrackHitMonitorIORootFile
Interface/Base class for alignment algorithms, each alignment algorithm has to be derived from this c...
std::vector< float > m_Eta
std::unique_ptr< AlignableNavigator > theAlignableDetAccessor
unsigned int m_rawQualityWord
define event information passed to algorithms
std::vector< unsigned > theIOVrangeSet
std::vector< float > m_d0
bool calcParameters(Alignable *ali, int setDet, double start, double step)
std::vector< float > m_Pt
std::vector< std::pair< std::vector< Alignable * >, std::vector< double > > > theAPEParameters
~HIPAlignmentAlgorithm()
Destructor.
std::vector< int > m_Nhits
void startNewLoop(void)
Called at start of new loop.
std::vector< float > m_Chi2n
HIPAlignmentAlgorithm(const edm::ParameterSet &cfg)
Constructor.
std::vector< edm::ParameterSet > theCutsPerComponent
TTree * theHitMonitorTree
std::vector< float > m_dz
std::vector< int > m_nhTID
void initialize(const edm::EventSetup &setup, AlignableTracker *tracker, AlignableMuon *muon, AlignableExtras *extras, AlignmentParameterStore *store)
Call at beginning of job.
std::string siterationfile
int readIterationFile(std::string filename)
std::vector< double > SetScanDet
void setAlignmentPositionError(void)
TFile * theSurveyIORootFile
void collectMonitorTrees(const std::vector< std::string > &filenames)
double calcAPE(double *par, int iter, int function)
std::string suvarfilecore
bool theApplyCutsPerComponent
std::unique_ptr< AlignableObjectId > alignableObjectId_
std::string smisalignedfile
std::vector< edm::ParameterSet > theAPEParameterSet
align::StructureType m3_ObjId
std::unique_ptr< TFormula > theEtaFormula
std::vector< int > m_nhPXF
virtual void terminate()
Called at end of job (must be implemented in derived class)
std::vector< float > m2_surfDef
HIPMonitorConfig theMonitorConfig
void fillAlignablesMonitor(const edm::EventSetup &setup)
const std::vector< std::string > surveyResiduals_
bool processHit2D(const AlignableDetOrUnitPtr &alidet, const Alignable *ali, const HIPAlignableSpecificParameters *alispecifics, const TrajectoryStateOnSurface &tsos, const TrackingRecHit *hit, double hitwt)
eventInfo
add run, event number and lumi section
bool processHit1D(const AlignableDetOrUnitPtr &alidet, const Alignable *ali, const HIPAlignableSpecificParameters *alispecifics, const TrajectoryStateOnSurface &tsos, const TrackingRecHit *hit, double hitwt)
std::vector< int > m_nhTOB
TTree * theAlignablesMonitorTree
Constructor of the full muon geometry.
std::vector< int > m_nhPXB
std::vector< align::StructureType > theLevels
std::vector< Alignable * > theAlignables
const bool doTrackHitMonitoring
std::string theCollectorPath
void run(const edm::EventSetup &setup, const EventInfo &eventInfo)
Run the algorithm.
SurfaceDeformationFactory::Type m2_dtype
std::string sparameterfile