Project
Loading...
Searching...
No Matches
o2::aod::mcparticle Namespace Reference

Namespaces

namespace  enums
 

Functions

 DECLARE_SOA_INDEX_COLUMN (McCollision, mcCollision)
 
 DECLARE_SOA_COLUMN (PdgCode, pdgCode, int)
 MC collision of this particle.
 
 DECLARE_SOA_COLUMN (StatusCode, statusCode, int)
 PDG code.
 
 DECLARE_SOA_COLUMN (Flags, flags, uint8_t)
 Generators status code or physics process. Do not use directly. Use dynamic columns getGenStatusCode() or getProcess()
 
 DECLARE_SOA_SELF_INDEX_COLUMN_FULL (Mother0, mother0, int, "McParticles_Mother0")
 ALICE specific flags, see MCParticleFlags. Do not use directly. Use the dynamic columns, e.g. producedByGenerator()
 
 DECLARE_SOA_SELF_INDEX_COLUMN_FULL (Mother1, mother1, int, "McParticles_Mother1")
 Track index of the first mother.
 
 DECLARE_SOA_SELF_INDEX_COLUMN_FULL (Daughter0, daughter0, int, "McParticles_Daughter0")
 Track index of the last mother.
 
 DECLARE_SOA_SELF_INDEX_COLUMN_FULL (Daughter1, daughter1, int, "McParticles_Daughter1")
 Track index of the first daugther.
 
 DECLARE_SOA_SELF_ARRAY_INDEX_COLUMN (Mothers, mothers)
 Track index of the last daugther.
 
 DECLARE_SOA_SELF_SLICE_INDEX_COLUMN (Daughters, daughters)
 Mother tracks (possible empty) array. Iterate over mcParticle.mothers_as<aod::McParticles>())
 
 DECLARE_SOA_COLUMN (Weight, weight, float)
 Daughter tracks (possibly empty) slice. Check for non-zero with mcParticle.has_daughters(). Iterate over mcParticle.daughters_as<aod::McParticles>())
 
 DECLARE_SOA_COLUMN (Px, px, float)
 MC weight.
 
 DECLARE_SOA_COLUMN (Py, py, float)
 Momentum in x in GeV/c.
 
 DECLARE_SOA_COLUMN (Pz, pz, float)
 Momentum in y in GeV/c.
 
 DECLARE_SOA_COLUMN (E, e, float)
 Momentum in z in GeV/c.
 
 DECLARE_SOA_COLUMN (Vx, vx, float)
 Energy.
 
 DECLARE_SOA_COLUMN (Vy, vy, float)
 X production vertex in cm.
 
 DECLARE_SOA_COLUMN (Vz, vz, float)
 Y production vertex in cm.
 
 DECLARE_SOA_COLUMN (Vt, vt, float)
 Z production vertex in cm.
 
 DECLARE_SOA_DYNAMIC_COLUMN (ProducedByGenerator, producedByGenerator, [](uint8_t flags) -> bool { return(flags &o2::aod::mcparticle::enums::ProducedByTransport)==0x0;})
 Production time.
 
 DECLARE_SOA_DYNAMIC_COLUMN (FromBackgroundEvent, fromBackgroundEvent, [](uint8_t flags) -> bool { return(flags &o2::aod::mcparticle::enums::FromBackgroundEvent)==o2::aod::mcparticle::enums::FromBackgroundEvent;})
 
 DECLARE_SOA_DYNAMIC_COLUMN (GetGenStatusCode, getGenStatusCode, [](uint8_t flags, int statusCode) -> int { if((flags &o2::aod::mcparticle::enums::ProducedByTransport)==0x0) { return o2::mcgenstatus::getGenStatusCode(statusCode);} else { return -1;} })
 
 DECLARE_SOA_DYNAMIC_COLUMN (GetHepMCStatusCode, getHepMCStatusCode, [](uint8_t flags, int statusCode) -> int { if((flags &o2::aod::mcparticle::enums::ProducedByTransport)==0x0) { return o2::mcgenstatus::getHepMCStatusCode(statusCode);} else { return -1;} })
 
 DECLARE_SOA_DYNAMIC_COLUMN (IsPhysicalPrimary, isPhysicalPrimary, [](uint8_t flags) -> bool { return(flags &o2::aod::mcparticle::enums::PhysicalPrimary)==o2::aod::mcparticle::enums::PhysicalPrimary;})
 
 DECLARE_SOA_DYNAMIC_COLUMN (PVector, pVector, [](float px, float py, float pz) -> std::array< float, 3 > { return std::array< float, 3 >{px, py, pz};})
 
o2::constants::math::PI natan2 (-1.0f *aod::mcparticle::py, -1.0f *aod::mcparticle::px))
 
 DECLARE_SOA_EXPRESSION_COLUMN (Eta, eta, float, ifnode((nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py+aod::mcparticle::pz *aod::mcparticle::pz) - aod::mcparticle::pz)< static_cast< float >(1e-7), ifnode(aod::mcparticle::pz< 0.f, -100.f, 100.f), 0.5f *nlog((nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py+aod::mcparticle::pz *aod::mcparticle::pz)+aod::mcparticle::pz)/(nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py+aod::mcparticle::pz *aod::mcparticle::pz) - aod::mcparticle::pz))))
 
 DECLARE_SOA_EXPRESSION_COLUMN (Pt, pt, float, nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py))
 
 DECLARE_SOA_EXPRESSION_COLUMN (P, p, float, nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py+aod::mcparticle::pz *aod::mcparticle::pz))
 
 DECLARE_SOA_EXPRESSION_COLUMN (Y, y, float, ifnode((aod::mcparticle::e - aod::mcparticle::pz)< static_cast< float >(1e-7), ifnode(aod::mcparticle::pz< 0.f, -100.f, 100.f), 0.5f *nlog((aod::mcparticle::e+aod::mcparticle::pz)/(aod::mcparticle::e - aod::mcparticle::pz))))
 

Variables

uint8_t flags
 
uint8_t int statusCode int { if ((flags & o2::aod::mcparticle::enums::ProducedByTransport) == 0x0) { return 0 ; } else { return statusCode; } })
 

Function Documentation

◆ DECLARE_SOA_COLUMN() [1/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( ,
,
float   
)

Momentum in z in GeV/c.

◆ DECLARE_SOA_COLUMN() [2/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( Flags  ,
flags  ,
uint8_t   
)

Generators status code or physics process. Do not use directly. Use dynamic columns getGenStatusCode() or getProcess()

◆ DECLARE_SOA_COLUMN() [3/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( PdgCode  ,
pdgCode  ,
int   
)

MC collision of this particle.

◆ DECLARE_SOA_COLUMN() [4/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( Px  ,
px  ,
float   
)

MC weight.

◆ DECLARE_SOA_COLUMN() [5/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( Py  ,
py  ,
float   
)

Momentum in x in GeV/c.

◆ DECLARE_SOA_COLUMN() [6/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( Pz  ,
pz  ,
float   
)

Momentum in y in GeV/c.

◆ DECLARE_SOA_COLUMN() [7/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( StatusCode  ,
statusCode  ,
int   
)

PDG code.

◆ DECLARE_SOA_COLUMN() [8/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( Vt  ,
vt  ,
float   
)

Z production vertex in cm.

◆ DECLARE_SOA_COLUMN() [9/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( Vx  ,
vx  ,
float   
)

Energy.

◆ DECLARE_SOA_COLUMN() [10/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( Vy  ,
vy  ,
float   
)

X production vertex in cm.

◆ DECLARE_SOA_COLUMN() [11/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( Vz  ,
vz  ,
float   
)

Y production vertex in cm.

◆ DECLARE_SOA_COLUMN() [12/12]

o2::aod::mcparticle::DECLARE_SOA_COLUMN ( Weight  ,
weight  ,
float   
)

Daughter tracks (possibly empty) slice. Check for non-zero with mcParticle.has_daughters(). Iterate over mcParticle.daughters_as<aod::McParticles>())

◆ DECLARE_SOA_DYNAMIC_COLUMN() [1/6]

o2::aod::mcparticle::DECLARE_SOA_DYNAMIC_COLUMN ( FromBackgroundEvent  ,
fromBackgroundEvent  ,
[] (uint8_t flags) -> bool { return(flags &o2::aod::mcparticle::enums::FromBackgroundEvent)==o2::aod::mcparticle::enums::FromBackgroundEvent;}   
)

◆ DECLARE_SOA_DYNAMIC_COLUMN() [2/6]

o2::aod::mcparticle::DECLARE_SOA_DYNAMIC_COLUMN ( GetGenStatusCode  ,
getGenStatusCode  ,
[] (uint8_t flags, int statusCode) -> int { if((flags &o2::aod::mcparticle::enums::ProducedByTransport)==0x0) { return o2::mcgenstatus::getGenStatusCode(statusCode);} else { return -1;} }   
)

◆ DECLARE_SOA_DYNAMIC_COLUMN() [3/6]

o2::aod::mcparticle::DECLARE_SOA_DYNAMIC_COLUMN ( GetHepMCStatusCode  ,
getHepMCStatusCode  ,
[] (uint8_t flags, int statusCode) -> int { if((flags &o2::aod::mcparticle::enums::ProducedByTransport)==0x0) { return o2::mcgenstatus::getHepMCStatusCode(statusCode);} else { return -1;} }   
)

◆ DECLARE_SOA_DYNAMIC_COLUMN() [4/6]

o2::aod::mcparticle::DECLARE_SOA_DYNAMIC_COLUMN ( IsPhysicalPrimary  ,
isPhysicalPrimary  ,
[] (uint8_t flags) -> bool { return(flags &o2::aod::mcparticle::enums::PhysicalPrimary)==o2::aod::mcparticle::enums::PhysicalPrimary;}   
)

◆ DECLARE_SOA_DYNAMIC_COLUMN() [5/6]

o2::aod::mcparticle::DECLARE_SOA_DYNAMIC_COLUMN ( ProducedByGenerator  ,
producedByGenerator  ,
[] (uint8_t flags) -> bool { return(flags &o2::aod::mcparticle::enums::ProducedByTransport)==0x0;}   
)

Production time.

◆ DECLARE_SOA_DYNAMIC_COLUMN() [6/6]

o2::aod::mcparticle::DECLARE_SOA_DYNAMIC_COLUMN ( PVector  ,
pVector  ,
[] (float px, float py, float pz) -> std::array< float, 3 > { return std::array< float, 3 >{px, py, pz};}   
)

◆ DECLARE_SOA_EXPRESSION_COLUMN() [1/4]

o2::aod::mcparticle::DECLARE_SOA_EXPRESSION_COLUMN ( Eta  ,
eta  ,
float  ,
ifnode((nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py+aod::mcparticle::pz *aod::mcparticle::pz) - aod::mcparticle::pz)< static_cast< float >(1e-7), ifnode(aod::mcparticle::pz< 0.f, -100.f, 100.f), 0.5f *nlog((nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py+aod::mcparticle::pz *aod::mcparticle::pz)+aod::mcparticle::pz)/(nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py+aod::mcparticle::pz *aod::mcparticle::pz) - aod::mcparticle::pz)))   
)

◆ DECLARE_SOA_EXPRESSION_COLUMN() [2/4]

o2::aod::mcparticle::DECLARE_SOA_EXPRESSION_COLUMN ( ,
,
float  ,
nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py+aod::mcparticle::pz *aod::mcparticle::pz)   
)

◆ DECLARE_SOA_EXPRESSION_COLUMN() [3/4]

o2::aod::mcparticle::DECLARE_SOA_EXPRESSION_COLUMN ( Pt  ,
pt  ,
float  ,
nsqrt(aod::mcparticle::px *aod::mcparticle::px+aod::mcparticle::py *aod::mcparticle::py)   
)

◆ DECLARE_SOA_EXPRESSION_COLUMN() [4/4]

o2::aod::mcparticle::DECLARE_SOA_EXPRESSION_COLUMN ( ,
y  ,
float  ,
ifnode((aod::mcparticle::e - aod::mcparticle::pz)< static_cast< float >(1e-7), ifnode(aod::mcparticle::pz< 0.f, -100.f, 100.f), 0.5f *nlog((aod::mcparticle::e+aod::mcparticle::pz)/(aod::mcparticle::e - aod::mcparticle::pz)))   
)

◆ DECLARE_SOA_INDEX_COLUMN()

o2::aod::mcparticle::DECLARE_SOA_INDEX_COLUMN ( McCollision  ,
mcCollision   
)

◆ DECLARE_SOA_SELF_ARRAY_INDEX_COLUMN()

o2::aod::mcparticle::DECLARE_SOA_SELF_ARRAY_INDEX_COLUMN ( Mothers  ,
mothers   
)

Track index of the last daugther.

◆ DECLARE_SOA_SELF_INDEX_COLUMN_FULL() [1/4]

o2::aod::mcparticle::DECLARE_SOA_SELF_INDEX_COLUMN_FULL ( Daughter0  ,
daughter0  ,
int  ,
"McParticles_Daughter0"   
)

Track index of the last mother.

◆ DECLARE_SOA_SELF_INDEX_COLUMN_FULL() [2/4]

o2::aod::mcparticle::DECLARE_SOA_SELF_INDEX_COLUMN_FULL ( Daughter1  ,
daughter1  ,
int  ,
"McParticles_Daughter1"   
)

Track index of the first daugther.

◆ DECLARE_SOA_SELF_INDEX_COLUMN_FULL() [3/4]

o2::aod::mcparticle::DECLARE_SOA_SELF_INDEX_COLUMN_FULL ( Mother0  ,
mother0  ,
int  ,
"McParticles_Mother0"   
)

ALICE specific flags, see MCParticleFlags. Do not use directly. Use the dynamic columns, e.g. producedByGenerator()

◆ DECLARE_SOA_SELF_INDEX_COLUMN_FULL() [4/4]

o2::aod::mcparticle::DECLARE_SOA_SELF_INDEX_COLUMN_FULL ( Mother1  ,
mother1  ,
int  ,
"McParticles_Mother1"   
)

Track index of the first mother.

◆ DECLARE_SOA_SELF_SLICE_INDEX_COLUMN()

o2::aod::mcparticle::DECLARE_SOA_SELF_SLICE_INDEX_COLUMN ( Daughters  ,
daughters   
)

Mother tracks (possible empty) array. Iterate over mcParticle.mothers_as<aod::McParticles>())

◆ natan2()

o2::constants::math::PI o2::aod::mcparticle::natan2 ( -1.0f *aod::mcparticle::py  ,
-1.0f *aod::mcparticle::px   
)

Variable Documentation

◆ flags

uint8_t o2::aod::mcparticle::flags

Definition at line 1873 of file AnalysisDataModel.h.

◆ int

uint8_t int statusCode o2::aod::mcparticle::int { if ((flags & o2::aod::mcparticle::enums::ProducedByTransport) == 0x0) { return 0 ; } else { return statusCode; } })

Definition at line 1873 of file AnalysisDataModel.h.