90 unsigned int iRunRange,
93 std::ofstream *&filePtr,
107 unsigned int presigmas(
const std::vector<edm::ParameterSet> &cffPresi,
bool isCorrectToRefSystem(const align::Alignables &coordDefiners) const
void correctToReferenceSystem()
std::set< const Alignable * > myNoHieraCollection
keeps track of created 'secondary' steering files
std::string fileName(const std::string &addendum) const
full name with directory and 'idenitfier'
const edm::ParameterSet myConfig
std::pair< unsigned int, unsigned int > fixParameters(const align::Alignables &, const std::string &file)
unsigned int presigmas(const std::vector< edm::ParameterSet > &cffPresi, const std::string &fileName, const align::Alignables &, AlignableTracker *aliTracker, AlignableMuon *aliMuon, AlignableExtras *aliExtras)
interprete content of presigma VPSet 'cffPresi' and call presigmasFile
PedeSteerer(AlignableTracker *aliTracker, AlignableMuon *aliMuon, AlignableExtras *aliExtras, AlignmentParameterStore *store, const PedeLabelerBase *labels, const edm::ParameterSet &config, const std::string &defaultDir, bool noSteerFiles)
Alignable * theCoordMaster
Alignables deselected for hierarchy constr.
unsigned int presigmasFile(const std::string &fileName, const align::Alignables &, const AlignablePresigmasMap &aliPresisMap)
look for active 'alis' in map of presigma values and create steering file
void hierarchyConstraint(const Alignable *ali, const align::Alignables &components, std::ofstream &file) const
unsigned int hierarchyConstraints(const align::Alignables &, const std::string &file)
align::Alignables selectCoordinateAlis(const align::Alignables &) const
unsigned int theMinHieraParPerConstr
min absolute value of coefficients in hierarchy constraints
int fixParameter(Alignable *ali, unsigned int iRunRange, unsigned int iParam, char selector, std::ofstream *&filePtr, const std::string &fileName)
std::ofstream * createSteerFile(const std::string &name, bool addToList)
create and open file with name, if (addToList) append to mySteeringFiles
int parameterSign() const
results from pede (and start values for pede) might need a sign flip
int runPede(const std::string &masterSteer) const
run pede, masterSteer should be as returned from buildMasterSteer(...)
bool checkParameterChoices(const align::Alignables &) const
const PedeLabelerBase * myLabels
not the owner!
const AlignableObjectId alignableObjectId_
pointer to labeler (not the owner)
Allows conversion between type and name, and vice-versa.
std::string myRunDirectory
directory of all files
std::string buildMasterSteer(const std::vector< std::string > &binaryFiles)
construct (and return name of) master steering file from config, binaryFiles etc. ...
int myParameterSign
whether or not to fill pede steering files with debug info
double theMinHieraConstrCoeff
old pede versions (before May '07) need a sign flip...
unsigned int theConstrPrecision
hierarchy constraints with less params are ignored
const AlignmentParameterStore * myParameterStore
bool myNoSteerFiles
directory where pede is executed
align::Alignables theCoordDefiners
master coordinates, must (?) be global frame
void buildSubSteer(AlignableTracker *aliTracker, AlignableMuon *aliMuon, AlignableExtras *aliExtras)
construct steering files about hierarchy, fixing etc. an keep track of their names ...
void defineCoordinates(const align::Alignables &, Alignable *aliMaster, const std::string &fileName)
std::vector< std::string > mySteeringFiles
precision for writing constraints to text file
std::map< const Alignable *, std::vector< float > > AlignablePresigmasMap
const std::string & directory() const
directory from constructor input, '/' is attached if needed
std::vector< Alignable * > Alignables
bool myIsSteerFileDebug
flag to write steering files to /dev/null
bool isNoHiera(const Alignable *ali) const
True if 'ali' was deselected from hierarchy and any ancestor (e.g. mother) has parameters.
Constructor of the full muon geometry.
unsigned int buildNoHierarchyCollection(const align::Alignables &)
double cmsToPedeFactor(unsigned int parNum) const