Analysis Software
Documentation for sPHENIX simulation software
|
#include <coresoftware/blob/master/offline/packages/trackbase/AlignmentTransformation.h>
Public Member Functions | |
AlignmentTransformation ()=default | |
~AlignmentTransformation () | |
void | createMap (PHCompositeNode *topNode) |
void | createAlignmentTransformContainer (PHCompositeNode *topNode) |
void | generateRandomPerturbations (Eigen::Vector3d angleDev, Eigen::Vector3d transformDev) |
void | setMVTXParams (double mvtxDevs[6]) |
void | setINTTParams (double inttDevs[6]) |
void | setTPCParams (double tpcDevs[6]) |
void | setMMParams (double mmDevs[6]) |
void | verbosity () |
void | misalignmentFactor (uint8_t layer, const double factor) |
void | useInttSurveyGeometry (bool sur) |
Public Attributes | |
bool | perturbMVTX = false |
bool | perturbINTT = false |
bool | perturbTPC = false |
bool | perturbMM = false |
Eigen::Vector3d | perturbationAngles = Eigen::Vector3d(0.0,0.0,0.0) |
Eigen::Vector3d | perturbationTranslation = Eigen::Vector3d(0.0,0.0,0.0) |
Private Member Functions | |
Acts::Transform3 | newMakeTransform (Surface surf, Eigen::Vector3d &millepedeTranslation, Eigen::Vector3d &sensorAngles, bool survey) |
int | getNodes (PHCompositeNode *topNode) |
Private Attributes | |
Eigen::Vector3d | mvtxAngleDev |
Eigen::Vector3d | mvtxTransDev |
Eigen::Vector3d | inttAngleDev |
Eigen::Vector3d | inttTransDev |
Eigen::Vector3d | tpcAngleDev |
Eigen::Vector3d | tpcTransDev |
Eigen::Vector3d | mmAngleDev |
Eigen::Vector3d | mmTransDev |
std::default_random_engine | generator |
std::string | alignmentParamsFile = "./localAlignmentParamsFile.txt" |
int | localVerbosity = 0 |
bool | use_global_millepede_translations = true |
bool | use_intt_survey_geometry = false |
alignmentTransformationContainer * | transformMap = NULL |
alignmentTransformationContainer * | transformMapTransient = NULL |
ActsGeometry * | m_tGeometry = NULL |
Definition at line 19 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 19 of file AlignmentTransformation.h
|
default |
|
inline |
Definition at line 24 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 24 of file AlignmentTransformation.h
void AlignmentTransformation::createAlignmentTransformContainer | ( | PHCompositeNode * | topNode | ) |
Definition at line 353 of file AlignmentTransformation.cc.
View newest version in sPHENIX GitHub at line 353 of file AlignmentTransformation.cc
References PHCompositeNode::addNode(), PHNodeIterator::findFirst(), transformMap, and transformMapTransient.
Referenced by MakeActsGeometry::InitRun().
void AlignmentTransformation::createMap | ( | PHCompositeNode * | topNode | ) |
Definition at line 33 of file AlignmentTransformation.cc.
View newest version in sPHENIX GitHub at line 33 of file AlignmentTransformation.cc
References alignmentTransformationContainer::addTransform(), alignmentParamsFile, alpha, dy, dz, generateRandomPerturbations(), ActsTrackingGeometry::geoContext, ActsGeometry::geometry(), ActsTrackingGeometry::getGeoContext(), TrkrDefs::getLayer(), ActsSurfaceMaps::getMMSurface(), getNodes(), TpcDefs::getSectorId(), TpcDefs::getSide(), ActsSurfaceMaps::getSiliconSurface(), ActsSurfaceMaps::getTpcSurface(), TrkrDefs::getTrkrId(), CDBInterface::getUrl(), i, CDBInterface::instance(), inttAngleDev, TrkrDefs::inttId, inttTransDev, layer, localVerbosity, m_tGeometry, ActsGeometry::maps(), TrkrDefs::micromegasId, mmAngleDev, mmTransDev, mvtxAngleDev, TrkrDefs::mvtxId, mvtxTransDev, newMakeTransform(), perturbationAngles, perturbationTranslation, perturbINTT, perturbMM, perturbMVTX, perturbTPC, surf(), tpcAngleDev, TrkrDefs::tpcId, tpcTransDev, Acts::Test::transform, transformMap, transformMapTransient, alignmentTransformationContainer::use_alignment, use_global_millepede_translations, and use_intt_survey_geometry.
void AlignmentTransformation::generateRandomPerturbations | ( | Eigen::Vector3d | angleDev, |
Eigen::Vector3d | transformDev | ||
) |
Definition at line 383 of file AlignmentTransformation.cc.
View newest version in sPHENIX GitHub at line 383 of file AlignmentTransformation.cc
References generator, localVerbosity, perturbationAngles, and perturbationTranslation.
Referenced by createMap().
|
private |
Definition at line 335 of file AlignmentTransformation.cc.
View newest version in sPHENIX GitHub at line 335 of file AlignmentTransformation.cc
References Fun4AllReturnCodes::ABORTEVENT, and m_tGeometry.
Referenced by createMap().
void AlignmentTransformation::misalignmentFactor | ( | uint8_t | layer, |
const double | factor | ||
) |
Definition at line 349 of file AlignmentTransformation.cc.
View newest version in sPHENIX GitHub at line 349 of file AlignmentTransformation.cc
References alignmentTransformationContainer::setMisalignmentFactor(), and transformMap.
|
private |
If we read the survey parameters direcly, that is the full transform
The millepede affines will just be what was read in, which was the survey information. This should (in principle) be equivalent to the ideal position + any misalignment
Otherwise in sim we use the ideal * misalignment transforms
Definition at line 213 of file AlignmentTransformation.cc.
View newest version in sPHENIX GitHub at line 213 of file AlignmentTransformation.cc
References KFPMath::a, alpha, KFPMath::b, Acts::UnitConstants::g, ActsGeometry::geometry(), ActsTrackingGeometry::getGeoContext(), localVerbosity, m_tGeometry, train_ambiguity_solver::test, Acts::Test::transform, and use_global_millepede_translations.
Referenced by createMap().
|
inline |
Definition at line 56 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 56 of file AlignmentTransformation.h
References inttAngleDev, inttTransDev, localVerbosity, and perturbINTT.
|
inline |
Definition at line 88 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 88 of file AlignmentTransformation.h
References localVerbosity, mmAngleDev, mmTransDev, and perturbMM.
|
inline |
Definition at line 39 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 39 of file AlignmentTransformation.h
References localVerbosity, mvtxAngleDev, mvtxTransDev, and perturbMVTX.
|
inline |
Definition at line 72 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 72 of file AlignmentTransformation.h
References localVerbosity, perturbTPC, tpcAngleDev, and tpcTransDev.
|
inline |
Definition at line 107 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 107 of file AlignmentTransformation.h
References use_intt_survey_geometry.
|
inline |
Definition at line 105 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 105 of file AlignmentTransformation.h
References localVerbosity.
|
private |
Definition at line 122 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 122 of file AlignmentTransformation.h
Referenced by createMap().
|
private |
Definition at line 120 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 120 of file AlignmentTransformation.h
Referenced by generateRandomPerturbations().
|
private |
Definition at line 113 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 113 of file AlignmentTransformation.h
Referenced by createMap(), and setINTTParams().
|
private |
Definition at line 114 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 114 of file AlignmentTransformation.h
Referenced by createMap(), and setINTTParams().
|
private |
Definition at line 124 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 124 of file AlignmentTransformation.h
Referenced by createMap(), generateRandomPerturbations(), newMakeTransform(), setINTTParams(), setMMParams(), setMVTXParams(), setTPCParams(), and verbosity().
|
private |
Definition at line 133 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 133 of file AlignmentTransformation.h
Referenced by createMap(), getNodes(), and newMakeTransform().
|
private |
Definition at line 117 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 117 of file AlignmentTransformation.h
Referenced by createMap(), and setMMParams().
|
private |
Definition at line 118 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 118 of file AlignmentTransformation.h
Referenced by createMap(), and setMMParams().
|
private |
Definition at line 111 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 111 of file AlignmentTransformation.h
Referenced by createMap(), and setMVTXParams().
|
private |
Definition at line 112 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 112 of file AlignmentTransformation.h
Referenced by createMap(), and setMVTXParams().
Eigen::Vector3d AlignmentTransformation::perturbationAngles = Eigen::Vector3d(0.0,0.0,0.0) |
Definition at line 36 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 36 of file AlignmentTransformation.h
Referenced by createMap(), and generateRandomPerturbations().
Eigen::Vector3d AlignmentTransformation::perturbationTranslation = Eigen::Vector3d(0.0,0.0,0.0) |
Definition at line 37 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 37 of file AlignmentTransformation.h
Referenced by createMap(), and generateRandomPerturbations().
bool AlignmentTransformation::perturbINTT = false |
Definition at line 32 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 32 of file AlignmentTransformation.h
Referenced by createMap(), and setINTTParams().
bool AlignmentTransformation::perturbMM = false |
Definition at line 34 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 34 of file AlignmentTransformation.h
Referenced by createMap(), and setMMParams().
bool AlignmentTransformation::perturbMVTX = false |
Definition at line 31 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 31 of file AlignmentTransformation.h
Referenced by createMap(), and setMVTXParams().
bool AlignmentTransformation::perturbTPC = false |
Definition at line 33 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 33 of file AlignmentTransformation.h
Referenced by createMap(), and setTPCParams().
|
private |
Definition at line 115 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 115 of file AlignmentTransformation.h
Referenced by createMap(), and setTPCParams().
|
private |
Definition at line 116 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 116 of file AlignmentTransformation.h
Referenced by createMap(), and setTPCParams().
|
private |
Definition at line 131 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 131 of file AlignmentTransformation.h
Referenced by createAlignmentTransformContainer(), createMap(), and misalignmentFactor().
|
private |
Definition at line 132 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 132 of file AlignmentTransformation.h
Referenced by createAlignmentTransformContainer(), and createMap().
|
private |
Definition at line 126 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 126 of file AlignmentTransformation.h
Referenced by createMap(), and newMakeTransform().
|
private |
Definition at line 127 of file AlignmentTransformation.h.
View newest version in sPHENIX GitHub at line 127 of file AlignmentTransformation.h
Referenced by createMap(), and useInttSurveyGeometry().