1 #ifndef Alignment_TrackerAlignment_AlignableModifier_H 2 #define Alignment_TrackerAlignment_AlignableModifier_H 35 bool isPropagated(
const std::string& parameterName)
const;
41 void moveAlignableLocal(
Alignable* alignable,
bool random,
bool gaussian,
float sigmaX,
float sigmaY,
float sigmaZ);
45 Alignable* alignable,
bool random,
bool gaussian,
float sigmaPhiX,
float sigmaPhiY,
float sigmaPhiZ);
48 void rotateAlignableLocal(
49 Alignable* alignable,
bool random,
bool gaussian,
float sigmaPhiX,
float sigmaPhiY,
float sigmaPhiZ);
52 void addAlignmentPositionError(
Alignable* alignable,
float dx,
float dy,
float dz);
55 void addAlignmentPositionErrorLocal(
Alignable* alignable,
float dx,
float dy,
float dz);
58 void addAlignmentPositionErrorFromRotation(
Alignable* alignable,
float phiX,
float phiY,
float phiZ);
61 void addAlignmentPositionErrorFromLocalRotation(
Alignable* alignable,
float phiX,
float phiY,
float phiZ);
73 void setSeed(
long seed);
76 const std::vector<float> gaussianRandomVector(
float sigmaX,
float sigmaY,
float sigmaZ)
const;
78 const std::vector<float> flatRandomVector(
float sigmaX,
float sigmaY,
float sigmaZ)
const;
82 void randomise(std::vector<double>& rnd,
bool gaussian)
const;
87 Alignable* alignable,
const DeformationMemberType& deformation,
bool random,
bool gaussian,
double scale);
111 #endif //AlignableModifier_H
std::string distribution_
CLHEP::DRand48Engine * theDRand48Engine
Unique random number generator.
DeformationMemberType deformation_
std::pair< std::string, std::vector< double > > DeformationMemberType
void moveAlignable(Alignable *ali, AlgebraicVector diff)
Moves the alignable by the AlgebraicVector.