|
Class Reference for E1039 Core & Analysis Software
|
Pattern Dictionary Filter built based on Kun Liu's ktracker. More...
#include </dev/shm/kenichi/update-github-e1039-doc/e1039-core/packages/reco/patterndb/KalmanDSTrk.h>
Public Types | |
| enum | DS_LEVEL { NO_DS , IN_ST_DS , ST23_DS , ST123_DS } |
Public Member Functions | |
| KalmanDSTrk (const PHField *field, const TGeoManager *geom, bool enable_KF=true, int DS_level=KalmanDSTrk::NO_DS, const std::string sim_db_name="", const std::string pattern_db_name="") | |
| ~KalmanDSTrk () | |
| void | Verbosity (const int a) |
| int | Verbosity () const |
| void | printTimers () |
| int | setRawEvent (SRawEvent *event_input) |
| int | setRawEventWorker (SRawEvent *event_input) |
| void | setRawEventDebug (SRawEvent *event_input) |
| bool | acceptEvent (SRawEvent *rawEvent) |
| void | buildTrackletsInStation (int stationID, int listID, double *pos_exp=NULL, double *window=NULL) |
| Tracklet finding stuff. More... | |
| void | buildBackPartialTracks () |
| void | buildGlobalTracks () |
| int | fitTracklet (Tracklet &tracklet) |
| bool | acceptTracklet (Tracklet &tracklet) |
| bool | hodoMask (Tracklet &tracklet) |
| bool | muonID_comp (Tracklet &tracklet) |
| bool | muonID_search (Tracklet &tracklet) |
| bool | muonID_hodoAid (Tracklet &tracklet) |
| void | buildPropSegments () |
| void | resolveLeftRight (SRawEvent::hit_pair hpair, int &LR1, int &LR2) |
| void | resolveLeftRight (Tracklet &tracklet, double threshold) |
| void | resolveSingleLeftRight (Tracklet &tracklet) |
| void | removeBadHits (Tracklet &tracklet) |
| int | reduceTrackletList (std::list< Tracklet > &tracklets) |
| void | getSagittaWindowsInSt1 (Tracklet &tracklet, double *pos_exp, double *window, int st1ID) |
| void | getExtrapoWindowsInSt1 (Tracklet &tracklet, double *pos_exp, double *window, int st1ID) |
| void | printAtDetectorBack (int stationID, std::string outputFileName) |
| SRecTrack | processOneTracklet (Tracklet &tracklet) |
| Track fitting stuff. More... | |
| bool | fitTrack (KalmanTrack &kmtrk) |
| void | resolveLeftRight (KalmanTrack &kmtrk) |
| std::list< Tracklet > & | getFinalTracklets () |
| Final output. More... | |
| std::list< Tracklet > & | getBackPartials () |
| std::list< Tracklet > & | getTrackletList (int i) |
| std::list< SRecTrack > & | getSRecTracks () |
| std::list< PropSegment > & | getPropSegments (int i) |
| void | chi2fit (int n, double x[], double y[], double &a, double &b) |
| const std::string & | get_pattern_db_name () const |
| void | set_pattern_db_name (const std::string &patternDbName) |
| const std::string & | get_sim_db_name () const |
| void | set_sim_db_name (const std::string &simDbName) |
Pattern Dictionary Filter built based on Kun Liu's ktracker.
Created: 08-27-2018
Definition at line 40 of file KalmanDSTrk.h.
| Enumerator | |
|---|---|
| NO_DS | |
| IN_ST_DS | |
| ST23_DS | |
| ST123_DS | |
Definition at line 45 of file KalmanDSTrk.h.
|
explicit |
Definition at line 36 of file KalmanDSTrk.cxx.
References PatternDBUtil::BuildPatternDB(), Tracklet::Eval(), GeomSvc::instance(), PatternDBUtil::LoadPatternDB(), nChamberPlanes, nHodoPlanes, NO_DS, nPropPlanes, and nStations.
Here is the call graph for this function:| KalmanDSTrk::~KalmanDSTrk | ( | ) |
Definition at line 420 of file KalmanDSTrk.cxx.
| bool KalmanDSTrk::acceptEvent | ( | SRawEvent * | rawEvent | ) |
Definition at line 643 of file KalmanDSTrk.cxx.
References SRawEvent::getNHitsInD0(), SRawEvent::getNHitsInD1(), SRawEvent::getNHitsInD2(), SRawEvent::getNHitsInD3m(), SRawEvent::getNHitsInD3p(), SRawEvent::getNHitsInDetectors(), SRawEvent::getNPropHitsAll(), SRawEvent::getNRoadsNeg(), SRawEvent::getNRoadsPos(), LogInfo, Verbosity(), and Fun4AllBase::VERBOSITY_A_LOT.
Referenced by setRawEventWorker().
Here is the call graph for this function:
Here is the caller graph for this function:| bool KalmanDSTrk::acceptTracklet | ( | Tracklet & | tracklet | ) |
Definition at line 1684 of file KalmanDSTrk.cxx.
References Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), hodoMask(), GeomSvc::isInKMAG(), Tracklet::isValid(), LogInfo, muonID_comp(), muonID_search(), nStations, and Tracklet::stationID.
Referenced by buildBackPartialTracks(), buildGlobalTracks(), and buildTrackletsInStation().
Here is the call graph for this function:
Here is the caller graph for this function:| void KalmanDSTrk::buildBackPartialTracks | ( | ) |
Remove bad hits if needed
Definition at line 681 of file KalmanDSTrk.cxx.
References acceptTracklet(), chi2fit(), Tracklet::chisq, PatternDB::DC2, PatternDB::DC3m, PatternDB::DC3p, PatternDB::ERR_KEY, fitTracklet(), GeomSvc::getPlaneType(), PatternDBUtil::GetTrackletKey(), hodoMask(), Tracklet::isValid(), LogInfo, nChamberPlanes, Tracklet::print(), reduceTrackletList(), removeBadHits(), resolveLeftRight(), PatternDB::St23, ST23_DS, Verbosity(), and Fun4AllBase::VERBOSITY_A_LOT.
Referenced by setRawEventWorker().
Here is the call graph for this function:
Here is the caller graph for this function:| void KalmanDSTrk::buildGlobalTracks | ( | ) |
Resolve the left-right with a tight pull cut, then a loose one, then resolve by single projections
Remove bad hits if needed
Definition at line 899 of file KalmanDSTrk.cxx.
References acceptTracklet(), buildTrackletsInStation(), Tracklet::chisq_vtx, PatternDB::DC1, PatternDB::DC2, PatternDB::DC3m, PatternDB::DC3p, PatternDB::ERR_KEY, fitTracklet(), SRecTrack::getChisqVertex(), getExtrapoWindowsInSt1(), getSagittaWindowsInSt1(), PatternDBUtil::GetTrackletKey(), hodoMask(), Tracklet::invP, Tracklet::isValid(), SRecTrack::isValid(), LogInfo, Tracklet::merge(), Tracklet::print(), processOneTracklet(), removeBadHits(), resolveLeftRight(), resolveSingleLeftRight(), PatternDB::St123, ST123_DS, Verbosity(), and Fun4AllBase::VERBOSITY_A_LOT.
Referenced by setRawEventWorker().
Here is the call graph for this function:
Here is the caller graph for this function:| void KalmanDSTrk::buildPropSegments | ( | ) |
Definition at line 1943 of file KalmanDSTrk.cxx.
References PropSegment::fit(), SRawEvent::getPartialHitPairsInSuperDetector(), PropSegment::hits, PropSegment::isValid(), LogInfo, and PropSegment::print().
Referenced by setRawEventWorker().
Here is the call graph for this function:
Here is the caller graph for this function:| void KalmanDSTrk::buildTrackletsInStation | ( | int | stationID, |
| int | listID, | ||
| double * | pos_exp = NULL, |
||
| double * | window = NULL |
||
| ) |
Tracklet finding stuff.
Definition at line 1416 of file KalmanDSTrk.cxx.
References acceptTracklet(), PatternDB::DC1, PatternDB::DC2, PatternDB::DC3m, PatternDB::DC3p, PatternDB::ERROR_STATION, fitTracklet(), SRawEvent::getPartialHitPairsInSuperDetector(), PatternDBUtil::GetTrackletKey(), Tracklet::hits, IN_ST_DS, Tracklet::isValid(), LogInfo, Tracklet::nUHits, NULL, Tracklet::nVHits, Tracklet::nXHits, Tracklet::print(), Tracklet::sortHits(), PatternDB::St1, PatternDB::St2, PatternDB::St3, Tracklet::stationID, Verbosity(), and Fun4AllBase::VERBOSITY_A_LOT.
Referenced by buildGlobalTracks(), and setRawEventWorker().
Here is the call graph for this function:
Here is the caller graph for this function:| void KalmanDSTrk::chi2fit | ( | int | n, |
| double | x[], | ||
| double | y[], | ||
| double & | a, | ||
| double & | b | ||
| ) |
Tool, a simple-minded chi square fit Y = a*X + b
Definition at line 2409 of file KalmanDSTrk.cxx.
Referenced by buildBackPartialTracks().
Here is the caller graph for this function:| bool KalmanDSTrk::fitTrack | ( | KalmanTrack & | kmtrk | ) |
Definition at line 2324 of file KalmanDSTrk.cxx.
References KalmanTrack::getNodeList(), KalmanFitter::processOneTrack(), and KalmanFitter::updateTrack().
Referenced by processOneTracklet(), and resolveLeftRight().
Here is the call graph for this function:
Here is the caller graph for this function:| int KalmanDSTrk::fitTracklet | ( | Tracklet & | tracklet | ) |
Definition at line 2008 of file KalmanDSTrk.cxx.
References Tracklet::chisq, Tracklet::err_invP, Tracklet::err_tx, Tracklet::err_ty, Tracklet::err_x0, Tracklet::err_y0, Tracklet::invP, nStations, Tracklet::stationID, Tracklet::tx, Tracklet::ty, Tracklet::x0, and Tracklet::y0.
Referenced by buildBackPartialTracks(), buildGlobalTracks(), buildTrackletsInStation(), removeBadHits(), resolveLeftRight(), and resolveSingleLeftRight().
Here is the caller graph for this function:
|
inline |
Definition at line 132 of file KalmanDSTrk.h.
|
inline |
Definition at line 140 of file KalmanDSTrk.h.
|
inline |
Definition at line 123 of file KalmanDSTrk.h.
| void KalmanDSTrk::getExtrapoWindowsInSt1 | ( | Tracklet & | tracklet, |
| double * | pos_exp, | ||
| double * | window, | ||
| int | st1ID | ||
| ) |
Definition at line 2087 of file KalmanDSTrk.cxx.
References Tracklet::getExpPosErrorX(), Tracklet::getExpPosErrorY(), Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), GeomSvc::getPlaneType(), GeomSvc::getUinStereoPlane(), nStations, and Tracklet::stationID.
Referenced by buildGlobalTracks().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Final output.
Definition at line 122 of file KalmanDSTrk.h.
|
inline |
Definition at line 126 of file KalmanDSTrk.h.
| void KalmanDSTrk::getSagittaWindowsInSt1 | ( | Tracklet & | tracklet, |
| double * | pos_exp, | ||
| double * | window, | ||
| int | st1ID | ||
| ) |
Definition at line 2115 of file KalmanDSTrk.cxx.
References Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), GeomSvc::getPlaneType(), GeomSvc::getUinStereoPlane(), Tracklet::hits, nStations, and Tracklet::stationID.
Referenced by buildGlobalTracks().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 125 of file KalmanDSTrk.h.
|
inline |
Definition at line 124 of file KalmanDSTrk.h.
| bool KalmanDSTrk::hodoMask | ( | Tracklet & | tracklet | ) |
Definition at line 1714 of file KalmanDSTrk.cxx.
References Tracklet::getExpPosErrorX(), Tracklet::getExpPosErrorY(), Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), LogInfo, nChamberPlanes, nStations, and Tracklet::stationID.
Referenced by acceptTracklet(), buildBackPartialTracks(), and buildGlobalTracks().
Here is the call graph for this function:
Here is the caller graph for this function:| bool KalmanDSTrk::muonID_comp | ( | Tracklet & | tracklet | ) |
Definition at line 1837 of file KalmanDSTrk.cxx.
References Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), Tracklet::invP, LogInfo, nStations, Tracklet::seg_x, Tracklet::seg_y, Tracklet::stationID, Tracklet::tx, and Tracklet::ty.
Referenced by acceptTracklet().
Here is the call graph for this function:
Here is the caller graph for this function:| bool KalmanDSTrk::muonID_hodoAid | ( | Tracklet & | tracklet | ) |
Definition at line 1894 of file KalmanDSTrk.cxx.
References Tracklet::getExpPosErrorX(), Tracklet::getExpPosErrorY(), Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), PropSegment::hodoHits, Tracklet::invP, nChamberPlanes, PropSegment::nHodoHits, nStations, Tracklet::seg_x, Tracklet::seg_y, and Tracklet::stationID.
Referenced by muonID_search().
Here is the call graph for this function:
Here is the caller graph for this function:| bool KalmanDSTrk::muonID_search | ( | Tracklet & | tracklet | ) |
Definition at line 1765 of file KalmanDSTrk.cxx.
References PropSegment::fit(), Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), PropSegment::getPosRef(), SignedHit::hit, PropSegment::hits, PropSegment::init(), Tracklet::invP, GeomSvc::isInPlane(), muonID_hodoAid(), nChamberPlanes, PropSegment::nHodoHits, nStations, Tracklet::seg_x, Tracklet::seg_y, SignedHit::sign, Tracklet::stationID, Tracklet::tx, and Tracklet::ty.
Referenced by acceptTracklet().
Here is the call graph for this function:
Here is the caller graph for this function:| void KalmanDSTrk::printAtDetectorBack | ( | int | stationID, |
| std::string | outputFileName | ||
| ) |
Definition at line 2163 of file KalmanDSTrk.cxx.
References GeomSvc::getPlaneCenterX(), GeomSvc::getPlaneCenterY(), GeomSvc::getPlanePosition(), GeomSvc::getPlaneScaleX(), and GeomSvc::getPlaneScaleY().
Here is the call graph for this function:| void KalmanDSTrk::printTimers | ( | ) |
Definition at line 2377 of file KalmanDSTrk.cxx.
Track fitting stuff.
Definition at line 2207 of file KalmanDSTrk.cxx.
References TrkPar::_covar_kf, TrkPar::_state_kf, TrkPar::_z, PropSegment::a, fitTrack(), Tracklet::getCharge(), KalmanTrack::getChisq(), Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), KalmanTrack::getHitIndexList(), PropSegment::getNHits(), KalmanTrack::getNodeList(), GeomSvc::getPlanePosition(), TriggerRoad::getRoadID(), KalmanTrack::getSRecTrack(), Tracklet::getSRecTrack(), Tracklet::hits, Tracklet::invP, KalmanTrack::isValid(), LogInfo, KalmanTrack::print(), KalmanTrack::printNodes(), Tracklet::seg_x, Tracklet::seg_y, KalmanTrack::setCurrTrkpar(), SRecTrack::setKalmanStatus(), SRecTrack::setNHitsInPT(), SRecTrack::setPTSlope(), SRecTrack::setTriggerRoad(), Tracklet::tx, and Tracklet::ty.
Referenced by buildGlobalTracks(), and setRawEventWorker().
Here is the call graph for this function:
Here is the caller graph for this function:| int KalmanDSTrk::reduceTrackletList | ( | std::list< Tracklet > & | tracklets | ) |
Definition at line 2050 of file KalmanDSTrk.cxx.
References LogInfo.
Referenced by buildBackPartialTracks().
Here is the caller graph for this function:| void KalmanDSTrk::removeBadHits | ( | Tracklet & | tracklet | ) |
Definition at line 1276 of file KalmanDSTrk.cxx.
References Tracklet::calcChisq(), Hit::detectorID, Hit::driftDistance, fitTracklet(), GeomSvc::getPlaneType(), SignedHit::hit, Tracklet::hits, Hit::index, Tracklet::isValid(), LogInfo, nChamberPlanes, Tracklet::nUHits, NULL, Tracklet::nVHits, Tracklet::nXHits, Tracklet::print(), Hit::print(), Tracklet::residual, resolveSingleLeftRight(), and SignedHit::sign.
Referenced by buildBackPartialTracks(), and buildGlobalTracks().
Here is the call graph for this function:
Here is the caller graph for this function:| void KalmanDSTrk::resolveLeftRight | ( | KalmanTrack & | kmtrk | ) |
Definition at line 2337 of file KalmanDSTrk.cxx.
References fitTrack(), KalmanTrack::getHitIndexList(), KalmanTrack::getNodeList(), GeomSvc::getPlaneResolution(), and GeomSvc::getUinStereoPlane().
Here is the call graph for this function:| void KalmanDSTrk::resolveLeftRight | ( | SRawEvent::hit_pair | hpair, |
| int & | LR1, | ||
| int & | LR2 | ||
| ) |
Definition at line 1376 of file KalmanDSTrk.cxx.
Referenced by buildBackPartialTracks(), and buildGlobalTracks().
Here is the caller graph for this function:| void KalmanDSTrk::resolveLeftRight | ( | Tracklet & | tracklet, |
| double | threshold | ||
| ) |
Definition at line 1145 of file KalmanDSTrk.cxx.
References Tracklet::err_tx, Tracklet::err_ty, Tracklet::err_x0, Tracklet::err_y0, fitTracklet(), Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), Tracklet::getXZErrorInSt1(), Tracklet::getXZInfoInSt1(), Tracklet::hits, LogInfo, Tracklet::print(), Tracklet::stationID, Tracklet::tx, Tracklet::ty, Tracklet::x0, and Tracklet::y0.
Here is the call graph for this function:| void KalmanDSTrk::resolveSingleLeftRight | ( | Tracklet & | tracklet | ) |
Definition at line 1253 of file KalmanDSTrk.cxx.
References fitTracklet(), Tracklet::getExpPositionX(), Tracklet::getExpPositionY(), Tracklet::hits, LogInfo, and Tracklet::print().
Referenced by buildGlobalTracks(), and removeBadHits().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 136 of file KalmanDSTrk.h.
|
inline |
Definition at line 144 of file KalmanDSTrk.h.
| int KalmanDSTrk::setRawEvent | ( | SRawEvent * | event_input | ) |
Definition at line 445 of file KalmanDSTrk.cxx.
References setRawEventWorker().
Here is the call graph for this function:| void KalmanDSTrk::setRawEventDebug | ( | SRawEvent * | event_input | ) |
Definition at line 438 of file KalmanDSTrk.cxx.
References SRawEvent::getAllHits().
Here is the call graph for this function:| int KalmanDSTrk::setRawEventWorker | ( | SRawEvent * | event_input | ) |
Definition at line 482 of file KalmanDSTrk.cxx.
References acceptEvent(), buildBackPartialTracks(), buildGlobalTracks(), buildPropSegments(), buildTrackletsInStation(), SRawEvent::getAllHits(), SRawEvent::getHitsIndexInDetector(), SRawEvent::getHitsIndexInDetectors(), SRawEvent::isFPGATriggered(), LogInfo, processOneTracklet(), TFEXIT_FAIL_BACKPARTIAL, TFEXIT_FAIL_GLOABL, TFEXIT_FAIL_MULTIPLICITY, TFEXIT_FAIL_ST2_TRACKLET, TFEXIT_FAIL_ST3_TRACKLET, and TFEXIT_SUCCESS.
Referenced by setRawEvent().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 60 of file KalmanDSTrk.h.
Referenced by acceptEvent(), buildBackPartialTracks(), buildGlobalTracks(), and buildTrackletsInStation().
Here is the caller graph for this function:
|
inline |
Definition at line 59 of file KalmanDSTrk.h.