ATLAS Offline Software
Public Member Functions | Public Attributes | Private Attributes | List of all members
Trk::VKalVrtControl Class Reference

#include <TrkVKalVrtCore.h>

Inheritance diagram for Trk::VKalVrtControl:
Collaboration diagram for Trk::VKalVrtControl:

Public Member Functions

 VKalVrtControl (const VKalVrtControlBase &)
 
 VKalVrtControl (const VKalVrtControl &src)
 
 ~VKalVrtControl ()=default
 
void setIterationNum (int Iter)
 
void setIterationPrec (double Prec)
 
void setRobustScale (double Scale)
 
void setRobustness (int Rob)
 
void setMassCnstData (int Ntrk, double Mass)
 
void setMassCnstData (int Ntrk, const std::vector< int > &Index, double Mass)
 
void setUseMassCnst ()
 
void setUsePhiCnst ()
 
void setUsePlaneCnst (double a, double b, double c, double d)
 
void setUseThetaCnst ()
 
void setUseAprioriVrt ()
 
void setUsePointingCnst (int)
 
void setUsePassNear (int)
 
void renewCascadeEvent (CascadeEvent *)
 
const CascadeEventgetCascadeEvent () const
 
CascadeEventgetCascadeEvent ()
 
void renewFullCovariance (double *)
 
const double * getFullCovariance () const
 
double * getFullCovariance ()
 
void setVertexMass (double mass)
 
void setVrtMassError (double error)
 
double getVertexMass () const
 
double getVrtMassError () const
 

Public Attributes

ForCFT vk_forcft
 
bool m_frozenVersionForBTagging = false
 
baseMagFldvk_objMagFld
 
const addrMagHandler vk_funcMagFld
 
const basePropagatorvk_objProp
 
const addrPropagator vk_funcProp
 
IVKalStatevk_istate
 

Private Attributes

std::unique_ptr< double[]> m_fullCovariance
 
double m_vrtMassTot
 
double m_vrtMassError
 
CascadeEventm_cascadeEvent =nullptr
 

Detailed Description

Definition at line 43 of file TrkVKalVrtCore.h.

Constructor & Destructor Documentation

◆ VKalVrtControl() [1/2]

Trk::VKalVrtControl::VKalVrtControl ( const VKalVrtControlBase base)

Definition at line 28 of file TrkVKalVrtCoreBase.cxx.

30  m_vrtMassTot(-1),
31  m_vrtMassError(-1),
32  m_cascadeEvent(nullptr),
33  vk_forcft(),
35  {
36  }

◆ VKalVrtControl() [2/2]

Trk::VKalVrtControl::VKalVrtControl ( const VKalVrtControl src)

Definition at line 37 of file TrkVKalVrtCoreBase.cxx.

39  m_vrtMassTot(src.m_vrtMassTot),
40  m_vrtMassError(src.m_vrtMassError),
41  m_cascadeEvent(src.m_cascadeEvent),
42  vk_forcft(src.vk_forcft),
43  m_frozenVersionForBTagging(src.m_frozenVersionForBTagging)
44  {
45  }

◆ ~VKalVrtControl()

Trk::VKalVrtControl::~VKalVrtControl ( )
default

Member Function Documentation

◆ getCascadeEvent() [1/2]

CascadeEvent* Trk::VKalVrtControl::getCascadeEvent ( )
inline

Definition at line 70 of file TrkVKalVrtCore.h.

70 { return m_cascadeEvent;};

◆ getCascadeEvent() [2/2]

const CascadeEvent* Trk::VKalVrtControl::getCascadeEvent ( ) const
inline

Definition at line 69 of file TrkVKalVrtCore.h.

69 { return m_cascadeEvent;};

◆ getFullCovariance() [1/2]

double* Trk::VKalVrtControl::getFullCovariance ( )
inline

Definition at line 74 of file TrkVKalVrtCore.h.

74 { return m_fullCovariance.get(); }

◆ getFullCovariance() [2/2]

const double* Trk::VKalVrtControl::getFullCovariance ( ) const
inline

Definition at line 73 of file TrkVKalVrtCore.h.

73 { return m_fullCovariance.get(); }

◆ getVertexMass()

double Trk::VKalVrtControl::getVertexMass ( ) const
inline

Definition at line 77 of file TrkVKalVrtCore.h.

77 { return m_vrtMassTot;}

◆ getVrtMassError()

double Trk::VKalVrtControl::getVrtMassError ( ) const
inline

Definition at line 78 of file TrkVKalVrtCore.h.

78 {return m_vrtMassError;}

◆ renewCascadeEvent()

void Trk::VKalVrtControl::renewCascadeEvent ( CascadeEvent newevt)

Definition at line 307 of file TrkVKalVrtCoreBase.cxx.

307  {
308  if(m_cascadeEvent)delete m_cascadeEvent;
310  }

◆ renewFullCovariance()

void Trk::VKalVrtControl::renewFullCovariance ( double *  newarray)

Definition at line 311 of file TrkVKalVrtCoreBase.cxx.

311  {
312  m_fullCovariance.reset(newarray);
313  }

◆ setIterationNum()

void Trk::VKalVrtControl::setIterationNum ( int  Iter)

Definition at line 248 of file TrkVKalVrtCoreBase.cxx.

249  {
250  if (Iter<3) Iter=3;
251  if (Iter>100) Iter=100;
252  vk_forcft.IterationNumber = Iter;
253  }

◆ setIterationPrec()

void Trk::VKalVrtControl::setIterationPrec ( double  Prec)

Definition at line 255 of file TrkVKalVrtCoreBase.cxx.

256  {
257  if (Prec<1.e-5) Prec=1.e-5;
258  if (Prec>1.e-1) Prec=1.e-1;
260  }

◆ setMassCnstData() [1/2]

void Trk::VKalVrtControl::setMassCnstData ( int  Ntrk,
const std::vector< int > &  Index,
double  Mass 
)

Definition at line 285 of file TrkVKalVrtCoreBase.cxx.

285  {
286  double sumM(0.);
287  int Ntrk=std::min((int)Index.size(),NtrkTot);
288  for(int it=0; it<Ntrk; it++) sumM += vk_forcft.wm[Index[it]]; //sum of particle masses
289  if(sumM<Mass) {
290  vk_forcft.wmfit[0]=Mass;
291  for(int it=0; it<Ntrk; it++) vk_forcft.indtrkmc[vk_forcft.nmcnst][Index[it]-1]=1; //Set participating particles
292  vk_forcft.nmcnst++;
293  }
295  }

◆ setMassCnstData() [2/2]

void Trk::VKalVrtControl::setMassCnstData ( int  Ntrk,
double  Mass 
)

Definition at line 275 of file TrkVKalVrtCoreBase.cxx.

275  { // Define global mass constraint. It must be first
276  double sumM(0.);
277  for(int it=0; it<Ntrk; it++) sumM += vk_forcft.wm[it]; //sum of particle masses
278  if(sumM<Mass) {
279  vk_forcft.wmfit[0]=Mass;
280  for(int it=0; it<Ntrk; it++) vk_forcft.indtrkmc[0][it]=1; //Set participating particles
281  vk_forcft.nmcnst=1;
282  }
284  }

◆ setRobustness()

void Trk::VKalVrtControl::setRobustness ( int  Rob)

Definition at line 269 of file TrkVKalVrtCoreBase.cxx.

270  {
271  if (Rob<0) Rob=0;
272  if (Rob>7) Rob=7;
273  vk_forcft.irob = Rob;
274  }

◆ setRobustScale()

void Trk::VKalVrtControl::setRobustScale ( double  Scale)

Definition at line 262 of file TrkVKalVrtCoreBase.cxx.

263  {
264  if (Scale<0.01) Scale=0.01;
265  if (Scale>100.) Scale=100.;
267  }

◆ setUseAprioriVrt()

void Trk::VKalVrtControl::setUseAprioriVrt ( )

Definition at line 304 of file TrkVKalVrtCoreBase.cxx.

304 { vk_forcft.useAprioriVrt = 1;}

◆ setUseMassCnst()

void Trk::VKalVrtControl::setUseMassCnst ( )

◆ setUsePassNear()

void Trk::VKalVrtControl::setUsePassNear ( int  iType = 1)

Definition at line 306 of file TrkVKalVrtCoreBase.cxx.

306 { vk_forcft.usePassNear = iType<2 ? 1 : 2 ;}

◆ setUsePhiCnst()

void Trk::VKalVrtControl::setUsePhiCnst ( )

Definition at line 297 of file TrkVKalVrtCoreBase.cxx.

297 { vk_forcft.usePhiCnst = 1;}

◆ setUsePlaneCnst()

void Trk::VKalVrtControl::setUsePlaneCnst ( double  a,
double  b,
double  c,
double  d 
)

Definition at line 298 of file TrkVKalVrtCoreBase.cxx.

298  {
299  if(a+b+c+d == 0.){ vk_forcft.usePlaneCnst = 0;
300  }else{ vk_forcft.usePlaneCnst = 1; }
302  }

◆ setUsePointingCnst()

void Trk::VKalVrtControl::setUsePointingCnst ( int  iType = 1)

Definition at line 305 of file TrkVKalVrtCoreBase.cxx.

305 { vk_forcft.usePointingCnst = iType<2 ? 1 : 2 ;}

◆ setUseThetaCnst()

void Trk::VKalVrtControl::setUseThetaCnst ( )

Definition at line 303 of file TrkVKalVrtCoreBase.cxx.

303 { vk_forcft.useThetaCnst = 1;}

◆ setVertexMass()

void Trk::VKalVrtControl::setVertexMass ( double  mass)
inline

Definition at line 75 of file TrkVKalVrtCore.h.

◆ setVrtMassError()

void Trk::VKalVrtControl::setVrtMassError ( double  error)
inline

Definition at line 76 of file TrkVKalVrtCore.h.

Member Data Documentation

◆ m_cascadeEvent

CascadeEvent* Trk::VKalVrtControl::m_cascadeEvent =nullptr
private

Definition at line 89 of file TrkVKalVrtCore.h.

◆ m_frozenVersionForBTagging

bool Trk::VKalVrtControl::m_frozenVersionForBTagging = false

Definition at line 92 of file TrkVKalVrtCore.h.

◆ m_fullCovariance

std::unique_ptr<double[]> Trk::VKalVrtControl::m_fullCovariance
private

Definition at line 84 of file TrkVKalVrtCore.h.

◆ m_vrtMassError

double Trk::VKalVrtControl::m_vrtMassError
private

Definition at line 88 of file TrkVKalVrtCore.h.

◆ m_vrtMassTot

double Trk::VKalVrtControl::m_vrtMassTot
private

Definition at line 87 of file TrkVKalVrtCore.h.

◆ vk_forcft

ForCFT Trk::VKalVrtControl::vk_forcft

Definition at line 91 of file TrkVKalVrtCore.h.

◆ vk_funcMagFld

const addrMagHandler Trk::VKalVrtControlBase::vk_funcMagFld
inherited

Definition at line 37 of file TrkVKalVrtCore.h.

◆ vk_funcProp

const addrPropagator Trk::VKalVrtControlBase::vk_funcProp
inherited

Definition at line 39 of file TrkVKalVrtCore.h.

◆ vk_istate

IVKalState* Trk::VKalVrtControlBase::vk_istate
inherited

Definition at line 40 of file TrkVKalVrtCore.h.

◆ vk_objMagFld

baseMagFld* Trk::VKalVrtControlBase::vk_objMagFld
inherited

Definition at line 36 of file TrkVKalVrtCore.h.

◆ vk_objProp

const basePropagator* Trk::VKalVrtControlBase::vk_objProp
inherited

Definition at line 38 of file TrkVKalVrtCore.h.


The documentation for this class was generated from the following files:
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
base
std::string base
Definition: hcg.cxx:78
python.BeamSpotUpdate.newevt
newevt
Definition: BeamSpotUpdate.py:195
Trk::ForCFT::useThetaCnst
int useThetaCnst
Definition: ForCFT.h:17
Base_Fragment.mass
mass
Definition: Sherpa_i/share/common/Base_Fragment.py:59
WriteCellNoiseToCool.src
src
Definition: WriteCellNoiseToCool.py:513
Trk::VKalVrtControl::m_cascadeEvent
CascadeEvent * m_cascadeEvent
Definition: TrkVKalVrtCore.h:89
hist_file_dump.d
d
Definition: hist_file_dump.py:137
skel.it
it
Definition: skel.GENtoEVGEN.py:396
Trk::ForCFT::Cp
double Cp
Definition: ForCFT.h:30
Trk::ForCFT::usePassNear
int usePassNear
Definition: ForCFT.h:20
Index
IndexedConstituentUserInfo::Index Index
Definition: IndexedConstituentUserInfo.cxx:12
Trk::ForCFT::indtrkmc
int indtrkmc[vkalMaxNMassCnst][vkalNTrkM]
Definition: ForCFT.h:46
Trk::VKalVrtControl::m_vrtMassError
double m_vrtMassError
Definition: TrkVKalVrtCore.h:88
Trk::ForCFT::RobustScale
double RobustScale
Definition: ForCFT.h:44
jet::CompScaleVar::Mass
@ Mass
Definition: UncertaintyEnum.h:98
Trk::ForCFT::useAprioriVrt
int useAprioriVrt
Definition: ForCFT.h:19
Trk::ForCFT::IterationPrecision
double IterationPrecision
Definition: ForCFT.h:48
Scale
void Scale(TH1 *h, double d=1)
Definition: comparitor.cxx:76
Trk::ForCFT::usePhiCnst
int usePhiCnst
Definition: ForCFT.h:16
Trk::ForCFT::usePlaneCnst
int usePlaneCnst
Definition: ForCFT.h:21
min
#define min(a, b)
Definition: cfImp.cxx:40
Trk::VKalVrtControl::m_vrtMassTot
double m_vrtMassTot
Definition: TrkVKalVrtCore.h:87
Trk::ForCFT::wm
double wm[vkalNTrkM]
Definition: ForCFT.h:26
Trk::VKalVrtControl::m_frozenVersionForBTagging
bool m_frozenVersionForBTagging
Definition: TrkVKalVrtCore.h:92
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:77
Trk::ForCFT::Dp
double Dp
Definition: ForCFT.h:30
Trk::ForCFT::Ap
double Ap
Definition: ForCFT.h:30
Trk::ForCFT::wmfit
double wmfit[vkalMaxNMassCnst]
Definition: ForCFT.h:27
Trk::VKalVrtControlBase::VKalVrtControlBase
VKalVrtControlBase(baseMagFld *, const addrMagHandler, const basePropagator *, const addrPropagator, IVKalState *istate=nullptr)
Definition: TrkVKalVrtCoreBase.cxx:18
a
TList * a
Definition: liststreamerinfos.cxx:10
Trk::VKalVrtControl::m_fullCovariance
std::unique_ptr< double[]> m_fullCovariance
Definition: TrkVKalVrtCore.h:84
Trk::ForCFT::irob
int irob
Definition: ForCFT.h:43
Trk::ForCFT::IterationNumber
int IterationNumber
Definition: ForCFT.h:47
get_generator_info.error
error
Definition: get_generator_info.py:40
Trk::ForCFT::nmcnst
int nmcnst
Definition: ForCFT.h:25
Trk::ForCFT::Bp
double Bp
Definition: ForCFT.h:30
python.compressB64.c
def c
Definition: compressB64.py:93
Trk::VKalVrtControl::vk_forcft
ForCFT vk_forcft
Definition: TrkVKalVrtCore.h:91
Trk::ForCFT::useMassCnst
int useMassCnst
Definition: ForCFT.h:15
Trk::ForCFT::usePointingCnst
int usePointingCnst
Definition: ForCFT.h:18