![]() |
Belle II Software
release-05-02-19
|
another unneccessary layer of abstraction More...
#include <InternalTrack.h>
Public Types | |
enum | TFParticleType { kInteractionPoint, kOrigin, kRecoComposite, kRecoResonance, kInternalParticle, kRecoTrack, kResonance, kRecoPhoton, kRecoKlong, kMissingParticle, kFeedthroughParticle, kInternalTrack } |
particle types | |
typedef std::vector< Constraint > | constraintlist |
alias | |
typedef std::vector< std::pair< const ParticleBase *, int > > | indexmap |
alias | |
Public Member Functions | |
InternalTrack (Belle2::Particle *particle, const ParticleBase *mother, const ConstraintConfiguration &config, bool forceFitAll, bool noEnergySum, bool forceMassConstraint) | |
constructor | |
virtual | ~InternalTrack () |
destructor | |
virtual ErrCode | initCovariance (FitParams &) const override |
init covariance | |
ErrCode | projectHelixConstraint (const FitParams &, Projection &) const |
project helix constraint | |
virtual ErrCode | initParticleWithMother (FitParams &fitparams) override |
init particle in case it has a mother | |
virtual ErrCode | initMotherlessParticle (FitParams &fitparams) override |
init particle in case it has no mother More... | |
ErrCode | projectConstraint (const Constraint::Type type, const FitParams &fitparams, Projection &p) const override |
find out which constraint it is and project | |
virtual int | dim () const override |
space reserved in fit params | |
virtual int | type () const override |
type | |
virtual int | posIndex () const override |
position index in fit params | |
virtual int | tauIndex () const override |
tau index in fit params only if it has a mother | |
virtual int | momIndex () const override |
momentum index in fit params depending on whether it has a mother | |
virtual bool | hasEnergy () const override |
has energy in fitparams | |
virtual bool | hasPosition () const override |
has position index | |
virtual void | addToConstraintList (constraintlist &list, int depth) const override |
add to constraint list | |
void | setMassConstraint (bool b) |
set mass constraint flag | |
void | forceP4Sum (FitParams &fitparams) const override |
Forces the four-momentum sum. | |
virtual void | updateIndex (int &offset) |
this sets the index for momentum, position, etc. More... | |
virtual std::string | parname (int index) const |
get name of parameter i | |
const ParticleBase * | locate (Belle2::Particle *particle) const |
get particle base from basf2 particle | |
Belle2::Particle * | particle () const |
get basf2 particle | |
int | index () const |
get index | |
const ParticleBase * | mother () const |
getMother() / hasMother() | |
const std::string & | name () const |
get name of the particle | |
virtual ErrCode | projectGeoConstraint (const FitParams &, Projection &) const |
project geometrical constraint More... | |
virtual ErrCode | projectMassConstraintParticle (const FitParams &, Projection &) const |
project mass constraint using the particles parameters More... | |
virtual ErrCode | projectMassConstraintDaughters (const FitParams &, Projection &) const |
project mass constraint using the parameters of the daughters More... | |
virtual ErrCode | projectMassConstraint (const FitParams &, Projection &) const |
project mass constraint abstract | |
int | eneIndex () const |
get energy index | |
virtual double | chiSquare (const FitParams &) const |
get chi2 | |
double | pdgMass () const |
get pdg mass | |
double | pdgWidth () const |
get pdg width | |
double | pdgLifeTime () const |
get pdg lifetime | |
double | pdgTime () const |
get Tau | |
int | charge () const |
get charge | |
virtual ParticleBase * | addDaughter (Belle2::Particle *, const ConstraintConfiguration &config, bool forceFitAll=false) |
add daughter | |
virtual void | removeDaughter (const ParticleBase *pb) |
remove daughter | |
virtual void | retrieveIndexMap (indexmap &anindexmap) const |
get index map | |
void | setMother (const ParticleBase *m) |
set mother | |
void | collectVertexDaughters (std::vector< ParticleBase * > &particles, int posindex) |
get vertex daughters | |
virtual int | nFinalChargedCandidates () const |
number of charged candidates | |
void | setParticle (Belle2::Particle *particle) |
set the relation to basf2 particle type | |
Static Public Member Functions | |
static ParticleBase * | createParticle (Belle2::Particle *particle, const ParticleBase *mother, const ConstraintConfiguration &config, bool forceFitAll=false) |
create the according treeFitter particle obj for a basf2 particle type | |
static ParticleBase * | createOrigin (Belle2::Particle *daughter, const ConstraintConfiguration &config, bool forceFitAll) |
create a custom origin particle or a beamspot | |
Protected Types | |
typedef std::vector< ParticleBase * > | ParticleContainer |
just an alias | |
Protected Member Functions | |
ErrCode | initMomentum (FitParams &fitparams) const |
init momentum of *this and daughters | |
ErrCode | initTau (FitParams &par) const |
initialises tau as a length | |
void | setIndex (int i) |
set Index (in statevector) | |
Static Protected Member Functions | |
static double | pdgLifeTime (Belle2::Particle *particle) |
get pdg lifetime | |
static bool | isAResonance (Belle2::Particle *particle) |
controls if a particle is treated as a resonance(lifetime=0) or a particle that has a finite lifetime. More... | |
static double | bFieldOverC () |
Bz/c | |
Protected Attributes | |
Belle2::Particle * | m_particle |
pointer to framework type | |
const ParticleBase * | m_mother |
motherparticle | |
std::vector< ParticleBase * > | m_daughters |
daughter container | |
bool | m_isStronglyDecayingResonance |
decay length less than 1 micron | |
const ConstraintConfiguration * | m_config |
has all the constraint config | |
Static Private Member Functions | |
static bool | compTrkTransverseMomentum (const RecoTrack *lhs, const RecoTrack *rhs) |
compare transverse track momentum | |
Private Attributes | |
bool | m_massconstraint |
has mass cosntraint | |
bool | m_noEnergySum |
Energy is not conserved at the decay (happens in Bremsstrahlung) | |
bool | m_isconversion |
is conversion | |
double | m_bfield |
B field value. | |
int | m_index |
index | |
const double | m_pdgMass |
pdg mass | |
double | m_pdgWidth |
particle width | |
const double | m_pdgLifeTime |
lifetime in cm | |
int | m_charge |
charge | |
std::string | m_name |
name | |
another unneccessary layer of abstraction
Definition at line 26 of file InternalTrack.h.
init particle in case it has no mother
(0,0,0) is the best guess in any other case
Implements ParticleBase.
Definition at line 61 of file InternalTrack.cc.
|
staticprotectedinherited |
controls if a particle is treated as a resonance(lifetime=0) or a particle that has a finite lifetime.
A finite life time means it will register a geo constraint for this particle
Definition at line 235 of file ParticleBase.cc.
|
virtualinherited |
project geometrical constraint
the direction of the momentum is very well known from the kinematic constraints that is why we do not extract the distance as a vector here
Definition at line 359 of file ParticleBase.cc.
|
virtualinherited |
project mass constraint using the parameters of the daughters
be aware that the signs here are important E-|p|-m extracts a negative mass and messes with the momentum !
Definition at line 435 of file ParticleBase.cc.
|
virtualinherited |
project mass constraint using the particles parameters
be aware that the signs here are important E-|p|-m extracts a negative mass and messes with the momentum !
Definition at line 496 of file ParticleBase.cc.
|
virtualinherited |
this sets the index for momentum, position, etc.
in the statevector
Definition at line 138 of file ParticleBase.cc.