ATLAS Offline Software
Public Member Functions | Public Attributes | Private Attributes | List of all members
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo Class Referencefinal
Inheritance diagram for Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo:
Collaboration diagram for Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo:

Public Member Functions

virtual unsigned int Modes1d (std::vector< float > &, std::vector< float > &, std::vector< float > &, std::vector< float > &) const override final
 
virtual const std::vector< int > & AcceptedCrossingPointsIndices () const override
 
virtual void getCorrelationDistance (double &cXY, double &cZ) const override
 
virtual int perigeesAtSeed (std::vector< const Trk::TrackParameters * > &perigees, const std::vector< const Trk::TrackParameters * > &perigeeList) const override final
 
virtual void setTrkidx (std::vector< std::pair< int, int > > &&trkidx) override final
 
void pushIndex (int idx)
 
void pushIndices (const std::vector< std::pair< int, int >> &modes)
 
void pushPoint (float phi, float r, float z, float w)
 
void setCorre (int zin, double corre)
 

Public Attributes

VeVecIndices m_idxphi
 
VeVecIndices m_idxradi
 
VeVecIndices m_idxZ
 

Private Attributes

std::vector< int > m_UsedCrossingPointsIndices
 
double m_correXY = -9.9
 
double m_correZ = -9.9
 
std::vector< float > m_phi_stk
 
std::vector< float > m_radi_stk
 
std::vector< float > m_z_stk
 
std::vector< float > m_wght_stk
 
std::vector< std::pair< int, int > > m_trkidx
 

Detailed Description

Definition at line 188 of file Mode3dFromFsmw1dFinder.h.

Member Function Documentation

◆ AcceptedCrossingPointsIndices()

const std::vector< int > & Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::AcceptedCrossingPointsIndices ( ) const
overridevirtual

Implements Trk::IMode3dInfo.

Definition at line 1187 of file Mode3dFromFsmw1dFinder.cxx.

1188 {
1190 }

◆ getCorrelationDistance()

void Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::getCorrelationDistance ( double &  cXY,
double &  cZ 
) const
overridevirtual

Implements Trk::IMode3dInfo.

Definition at line 1194 of file Mode3dFromFsmw1dFinder.cxx.

1196 {
1197  cXY = m_correXY;
1198  cZ = m_correZ;
1199 }

◆ Modes1d()

unsigned int Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::Modes1d ( std::vector< float > &  phi,
std::vector< float > &  radi,
std::vector< float > &  z,
std::vector< float > &  wght 
) const
finaloverridevirtual

Implements Trk::IMode3dInfo.

Definition at line 1139 of file Mode3dFromFsmw1dFinder.cxx.

1144 {
1145  std::vector<int> allidx ;
1146 
1147  for (const VecIndices& tmp : m_idxphi) {
1148  for (const std::pair<int, int >& p : tmp) {
1149  allidx.push_back( p.first ) ;
1150  }
1151  }
1152 
1153  for (const VecIndices& tmp : m_idxradi) {
1154  for (const std::pair<int, int >& p : tmp) {
1155  if (std::find( allidx.begin(), allidx.end(), p.first ) == allidx.end()) {
1156  allidx.push_back( p.first ) ;
1157  }
1158  }
1159  }
1160 
1161  for (const VecIndices& tmp : m_idxZ) {
1162  for (const std::pair<int, int >& p : tmp) {
1163  if (std::find( allidx.begin(), allidx.end(), p.first ) == allidx.end()) {
1164  allidx.push_back( p.first ) ;
1165  }
1166  }
1167  }
1168 
1169  unsigned int min = allidx.size() ;
1170  phi.reserve (min);
1171  radi.reserve (min);
1172  z.reserve (min);
1173  wght.reserve (min);
1174 
1175  for (int idx : allidx) {
1176  phi.push_back( m_phi_stk[idx] ) ;
1177  radi.push_back( m_radi_stk[idx] ) ;
1178  z.push_back( m_z_stk[idx] ) ;
1179  wght.push_back( m_wght_stk[idx] ) ;
1180  }
1181 
1182  return min ;
1183 }

◆ perigeesAtSeed()

int Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::perigeesAtSeed ( std::vector< const Trk::TrackParameters * > &  perigees,
const std::vector< const Trk::TrackParameters * > &  perigeeList 
) const
finaloverridevirtual

Implements Trk::IMode3dInfo.

Definition at line 1203 of file Mode3dFromFsmw1dFinder.cxx.

1206 {
1207  perigees.clear() ;
1208  std::vector<int> trklist(0) ;
1209 
1210  for (int ndx : m_UsedCrossingPointsIndices) {
1211  std::pair<int,int> trk = m_trkidx.at( ndx ) ;
1212 
1213  if ( std::find( trklist.begin(), trklist.end(), trk.first ) == trklist.end() )
1214  trklist.push_back( trk.first ) ;
1215  if ( std::find( trklist.begin(), trklist.end(), trk.second ) == trklist.end() )
1216  trklist.push_back( trk.second ) ;
1217  }
1218 
1219  std::sort( trklist.begin(), trklist.end() ) ;
1220 
1221  for (int t : trklist)
1222  {
1223  perigees.push_back( perigeeList[t] ) ;
1224  }
1225 
1226  return perigees.size() ;
1227 }

◆ pushIndex()

void Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::pushIndex ( int  idx)

Definition at line 1231 of file Mode3dFromFsmw1dFinder.cxx.

1232 {
1233  m_UsedCrossingPointsIndices.push_back( idx ) ;
1234 }

◆ pushIndices()

void Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::pushIndices ( const std::vector< std::pair< int, int >> &  modes)

Definition at line 1246 of file Mode3dFromFsmw1dFinder.cxx.

1248 {
1249  for (const std::pair<int,int>& p : modes) {
1250  m_UsedCrossingPointsIndices.push_back( p.first ) ;
1251  }
1252 }

◆ pushPoint()

void Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::pushPoint ( float  phi,
float  r,
float  z,
float  w 
)

Definition at line 1256 of file Mode3dFromFsmw1dFinder.cxx.

1258 {
1259  m_phi_stk.push_back (phi);
1260  m_radi_stk.push_back (r);
1261  m_z_stk.push_back (z);
1262  m_wght_stk.push_back (w);
1263 }

◆ setCorre()

void Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::setCorre ( int  zin,
double  corre 
)

Definition at line 1267 of file Mode3dFromFsmw1dFinder.cxx.

1268 {
1269  if ( zin == 0 )
1270  m_correXY = corre;
1271  else
1272  m_correZ = corre;
1273 }

◆ setTrkidx()

void Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::setTrkidx ( std::vector< std::pair< int, int > > &&  trkidx)
finaloverridevirtual

Implements Trk::IMode3dInfo.

Definition at line 1238 of file Mode3dFromFsmw1dFinder.cxx.

1240 {
1241  m_trkidx = std::move (trkidx);
1242 }

Member Data Documentation

◆ m_correXY

double Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_correXY = -9.9
private

Definition at line 226 of file Mode3dFromFsmw1dFinder.h.

◆ m_correZ

double Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_correZ = -9.9
private

Definition at line 227 of file Mode3dFromFsmw1dFinder.h.

◆ m_idxphi

VeVecIndices Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_idxphi

Definition at line 219 of file Mode3dFromFsmw1dFinder.h.

◆ m_idxradi

VeVecIndices Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_idxradi

Definition at line 220 of file Mode3dFromFsmw1dFinder.h.

◆ m_idxZ

VeVecIndices Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_idxZ

Definition at line 221 of file Mode3dFromFsmw1dFinder.h.

◆ m_phi_stk

std::vector< float > Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_phi_stk
private

Definition at line 230 of file Mode3dFromFsmw1dFinder.h.

◆ m_radi_stk

std::vector< float > Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_radi_stk
private

Definition at line 231 of file Mode3dFromFsmw1dFinder.h.

◆ m_trkidx

std::vector< std::pair <int, int> > Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_trkidx
private

Definition at line 235 of file Mode3dFromFsmw1dFinder.h.

◆ m_UsedCrossingPointsIndices

std::vector<int> Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_UsedCrossingPointsIndices
private

Definition at line 224 of file Mode3dFromFsmw1dFinder.h.

◆ m_wght_stk

std::vector< float > Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_wght_stk
private

Definition at line 233 of file Mode3dFromFsmw1dFinder.h.

◆ m_z_stk

std::vector< float > Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_z_stk
private

Definition at line 232 of file Mode3dFromFsmw1dFinder.h.


The documentation for this class was generated from the following files:
beamspotman.r
def r
Definition: beamspotman.py:676
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_idxphi
VeVecIndices m_idxphi
Definition: Mode3dFromFsmw1dFinder.h:219
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_correZ
double m_correZ
Definition: Mode3dFromFsmw1dFinder.h:227
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_z_stk
std::vector< float > m_z_stk
Definition: Mode3dFromFsmw1dFinder.h:232
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
Trk::z
@ z
global position (cartesian)
Definition: ParamDefs.h:63
find
std::string find(const std::string &s)
return a remapped string
Definition: hcg.cxx:135
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_UsedCrossingPointsIndices
std::vector< int > m_UsedCrossingPointsIndices
Definition: Mode3dFromFsmw1dFinder.h:224
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_phi_stk
std::vector< float > m_phi_stk
Definition: Mode3dFromFsmw1dFinder.h:230
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_idxZ
VeVecIndices m_idxZ
Definition: Mode3dFromFsmw1dFinder.h:221
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_wght_stk
std::vector< float > m_wght_stk
Definition: Mode3dFromFsmw1dFinder.h:233
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_radi_stk
std::vector< float > m_radi_stk
Definition: Mode3dFromFsmw1dFinder.h:231
VecIndices
std::vector< std::pair< int, int > > VecIndices
Definition: Mode3dFromFsmw1dFinder.h:15
DeMoUpdate.tmp
string tmp
Definition: DeMoUpdate.py:1167
min
#define min(a, b)
Definition: cfImp.cxx:40
std::sort
void sort(typename std::reverse_iterator< DataModel_detail::iterator< DVL > > beg, typename std::reverse_iterator< DataModel_detail::iterator< DVL > > end, const Compare &comp)
Specialization of sort for DataVector/List.
Definition: DVL_algorithms.h:623
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_idxradi
VeVecIndices m_idxradi
Definition: Mode3dFromFsmw1dFinder.h:220
Trk::phi
@ phi
Definition: ParamDefs.h:81
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_trkidx
std::vector< std::pair< int, int > > m_trkidx
Definition: Mode3dFromFsmw1dFinder.h:235
python.IoTestsLib.w
def w
Definition: IoTestsLib.py:200
Trk::Mode3dFromFsmw1dFinder::Mode3dFromFsmw1dInfo::m_correXY
double m_correXY
Definition: Mode3dFromFsmw1dFinder.h:226