Auxiliary class to set-up Trk.
More...
#include <JSirene.hh>
Auxiliary class to set-up Trk.
Definition at line 188 of file JSirene.hh.
JSIRENE::JTrk_t::JTrk_t |
( |
const int |
id, |
|
|
const int |
type, |
|
|
const int |
mother_id, |
|
|
const Vec & |
pos, |
|
|
const Vec & |
dir, |
|
|
const double |
t, |
|
|
const double |
E |
|
) |
| |
|
inline |
Constructor.
- Parameters
-
id | identifier |
type | type |
mother_id | mother identifier |
pos | position |
dir | direction |
t | time [ns] |
E | energy [GeV] |
Definition at line 202 of file JSirene.hh.
double t
track time [ns] (when the particle is at pos )
double E
Energy [GeV] (either MC truth or reconstructed)
int mother_id
MC id of the parent particle.
int type
MC: particle type in PDG encoding.
Vec pos
postion [m] of the track at time t
void Trk::read |
( |
const Trk & |
t | ) |
|
|
inlineinherited |
Read track (useful in python).
- Parameters
-
Definition at line 50 of file Trk.hh.
double t
track time [ns] (when the particle is at pos )
void Trk::write |
( |
Trk & |
t | ) |
const |
|
inlineinherited |
Write track (useful in python).
- Parameters
-
Definition at line 57 of file Trk.hh.
Get the name of the MC particle type.
- Returns
- name
Definition at line 65 of file Trk.hh.
67 TParticlePDG* p = TDatabasePDG::Instance()->GetParticle(
type );
int type
MC: particle type in PDG encoding.
std::string to_string(const T &value)
Convert value to string.
bool Trk::is_primary |
( |
| ) |
const |
|
inlineinherited |
Check if this is a primary particle.
- Returns
- true if primary; else false
Definition at line 77 of file Trk.hh.
static const int TRK_ST_PRIMARYNEUTRINO
initial state neutrino ('neutrino' tag in evt files from gseagen and genhen).
static const int TRK_ST_PRIMARYCOSMIC
initial state cosmic ray ('track_primary' tag in evt files from corant).
int status
MC status code, see km3net-dataformat/definitions/trkmembers.csv for values.
bool Trk::is_finalstate |
( |
| ) |
const |
|
inlineinherited |
Test whether given particle is a final state inside the detector.
- Returns
- true if particle is final state; else false
Definition at line 87 of file Trk.hh.
int status
MC status code, see km3net-dataformat/definitions/trkmembers.csv for values.
static const int TRK_ST_FINALSTATE
for MC: the particle must be processed by detector simulation ('track_in' tag in evt files)...
bool Trk::is_neutrino |
( |
| ) |
const |
|
inlineinherited |
Check if this is a netrino.
Note that its is checked if the PDG type is a nu-e, nu-mu or nu-tau.
- Returns
- true if neutrino; else false
Definition at line 99 of file Trk.hh.
int type
MC: particle type in PDG encoding.
Check if this is an electron or positron.
- Returns
- true if this is an electron or positron
Definition at line 109 of file Trk.hh.
111 return type == kElectron ||
type == kPositron;
int type
MC: particle type in PDG encoding.
bool Trk::is_muon |
( |
| ) |
const |
|
inlineinherited |
Check if this is a muon.
Note that its is checked if the PDG type is a (anti-)muon.
- Returns
- true if muon; else false
Definition at line 121 of file Trk.hh.
123 return type == kMuonMinus ||
type == kMuonPlus;
int type
MC: particle type in PDG encoding.
bool Trk::is_tau |
( |
| ) |
const |
|
inlineinherited |
Check if this is a tau.
Note that its is checked if the PDG type is a (anti-)tau.
- Returns
- true if tau; else false
Definition at line 133 of file Trk.hh.
135 return type == kTauMinus ||
type == kTauPlus;
int type
MC: particle type in PDG encoding.
bool Trk::is_lepton |
( |
| ) |
const |
|
inlineinherited |
Check if this is a charged lepton.
Note that its is checked if the PDG type is a (anti-)electron, (anti-)muon or (anti-)tua.
- Returns
- true if charged lepton; else false
Definition at line 145 of file Trk.hh.
bool is_muon() const
Check if this is a muon.
bool is_tau() const
Check if this is a tau.
bool is_e() const
Check if this is an electron or positron.
bool Trk::is_orphan |
( |
| ) |
const |
|
inlineinherited |
Check if this is an orphan (i.e.
no mother).
- Returns
- true if orphan; else false
Definition at line 155 of file Trk.hh.
static const int TRK_MOTHER_NONE
mother id of a particle if it has no parent
int mother_id
MC id of the parent particle.
Get list of of pointers to tracks, all of which have their mother identifier set to identifier of this track.
- Parameters
-
mctrks | list of input tracks |
- Returns
- list of pointers to tracks
Definition at line 166 of file Trk.hh.
170 for(
auto&
t : mctrks )
172 if (
t.mother_id ==
id ) r.push_back( &
t );
double t
track time [ns] (when the particle is at pos )
void Trk::print |
( |
std::ostream & |
out = std::cout | ) |
const |
|
inlineinherited |
Print track.
- Parameters
-
Definition at line 182 of file Trk.hh.
184 out <<
"Trk: id=" <<
id <<
" pos=";
pos.
print(out);
186 out <<
" t=" <<
t <<
" E=" <<
E <<
" pdg-type=" <<
type;
double t
track time [ns] (when the particle is at pos )
double E
Energy [GeV] (either MC truth or reconstructed)
int type
MC: particle type in PDG encoding.
Vec pos
postion [m] of the track at time t
void print(std::ostream &out=std::cout) const
Print vector.
Get index in user data of the item with given key.
- Parameters
-
- Returns
- index (-1 if key does not exists)
Definition at line 29 of file AAObject.hh.
std::vector< std::string > usr_names
user keys
bool AAObject::haveusr |
( |
const std::string & |
key | ) |
const |
|
inlineinherited |
Check availability of user data of the item with given key.
- Parameters
-
- Returns
- true if available; else false
Definition at line 42 of file AAObject.hh.
44 return idx( key ) >= 0;
int idx(const std::string &key) const
Get index in user data of the item with given key.
int AAObject::idxusr_checked |
( |
const std::string & |
key | ) |
const |
|
inlineinherited |
Get index in user data of the item with given key.
This method throws a run-time exception if no user data are available.
- Parameters
-
- Returns
- index (-1 if key does not exists)
Definition at line 54 of file AAObject.hh.
59 THROW(
Exception,
"No user data for key " << key <<
" in aanet object of type " <<
this -> ClassName());
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
int idx(const std::string &key) const
Get index in user data of the item with given key.
double AAObject::getusr |
( |
const std::string & |
key | ) |
const |
|
inlineinherited |
Get user data item with given key.
This method throws a run-time exception if no user data are available.
- Parameters
-
- Returns
- value
Definition at line 72 of file AAObject.hh.
74 const int i =
idx( key );
78 THROW(
Exception,
"No user data for key " << key <<
" in aanet object of type " <<
this -> ClassName());
81 if (
unsigned(i) >=
usr.size() )
83 THROW(
Exception,
"Warning: inconsistent user data " << i <<
" >= " <<
usr.size());
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
int idx(const std::string &key) const
Get index in user data of the item with given key.
std::vector< double > usr
user data
void AAObject::setusr |
( |
const std::string & |
key, |
|
|
double |
value |
|
) |
| |
|
inlineinherited |
Set user data item with given key.
- Parameters
-
Definition at line 95 of file AAObject.hh.
112 usr.push_back( value );
std::vector< std::string > usr_names
user keys
int idx(const std::string &key) const
Get index in user data of the item with given key.
std::vector< double > usr
user data
Remove (first) user data item with given key.
- Parameters
-
- Returns
- true if data have been removed; else false
Definition at line 126 of file AAObject.hh.
129 if ( i < 0 )
return false;
std::vector< std::string > usr_names
user keys
int idx(const std::string &key) const
Get index in user data of the item with given key.
std::vector< double > usr
user data
void AAObject::clearusr |
( |
| ) |
|
|
inlineinherited |
Clear user data.
Definition at line 139 of file AAObject.hh.
std::vector< std::string > usr_names
user keys
std::vector< double > usr
user data
void AAObject::printusr |
( |
std::ostream & |
out = std::cout | ) |
|
|
inlineinherited |
Print user data (i.e.
list of all pairs of keys and values).
- Parameters
-
Definition at line 150 of file AAObject.hh.
154 for (
unsigned i = 0;
i <
n ;
i++)
158 out <<
i <<
" \t " << name <<
" : \t ";
159 if (
i <
usr.size() ) out <<
usr[
i] << std::endl;
160 else out <<
"(none)" << std::endl;
std::vector< std::string > usr_names
user keys
then echo Enter input within $TIMEOUT_S seconds echo n User name
std::vector< double > usr
user data
track identifier
Definition at line 16 of file Trk.hh.
postion [m] of the track at time t
Definition at line 17 of file Trk.hh.
track direction
Definition at line 18 of file Trk.hh.
track time [ns] (when the particle is at pos )
Definition at line 19 of file Trk.hh.
Energy [GeV] (either MC truth or reconstructed)
Definition at line 20 of file Trk.hh.
length, if applicable [m]
Definition at line 22 of file Trk.hh.
likelihood or lambda value (for aafit, lambda)
Definition at line 23 of file Trk.hh.
MC: particle type in PDG encoding.
Definition at line 24 of file Trk.hh.
identifier of the fitting algorithm/chain/strategy, see km3net-dataformat/definitions/reconstruction.csv
Definition at line 25 of file Trk.hh.
list of identifyers of succesfull fitting stages resulting in this track
Definition at line 26 of file Trk.hh.
MC status code, see km3net-dataformat/definitions/trkmembers.csv for values.
Definition at line 28 of file Trk.hh.
MC id of the parent particle.
Definition at line 29 of file Trk.hh.
place to store additional fit info, see km3net-dataformat/definitions/fitparameters.csv
Definition at line 32 of file Trk.hh.
list of associated hit-ids (corresponds to Hit::id).
Definition at line 33 of file Trk.hh.
(NxN) error covariance matrix for fit parameters (stored as linear vector)
Definition at line 34 of file Trk.hh.
use as you like
Definition at line 35 of file Trk.hh.
Pointer to "any" user data.
Definition at line 171 of file AAObject.hh.
The documentation for this struct was generated from the following file: