Skip to content

Commit fb35735

Browse files
committed
Add TOF PID to the Data Model for LF signals in jet and adapt current task (PID for V0s, PID + dcav0topv + dcacascdaughters) to analyse new data model
1 parent cb32804 commit fb35735

File tree

3 files changed

+164
-1
lines changed

3 files changed

+164
-1
lines changed

PWGLF/DataModel/LFInJets.h

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
///
1212
/// \brief Derived Data table for LF in jets analysis
1313
/// \author Francesca Ercolessi (francesca.ercolessi@cern.ch)
14+
/// \author Sara Pucillo (sara.pucillo@cern.ch)
1415

1516
#ifndef PWGLF_DATAMODEL_LFINJETS_H_
1617
#define PWGLF_DATAMODEL_LFINJETS_H_
@@ -37,6 +38,10 @@ DECLARE_SOA_COLUMN(NTPCSigmaNegPr, ntpcsigmanegpr, float);
3738
DECLARE_SOA_COLUMN(NTPCSigmaPosPr, ntpcsigmapospr, float);
3839
DECLARE_SOA_COLUMN(NTPCSigmaNegPi, ntpcsigmanegpi, float);
3940
DECLARE_SOA_COLUMN(NTPCSigmaPosPi, ntpcsigmapospi, float);
41+
DECLARE_SOA_COLUMN(NTOFSigmaNegPr, ntofsigmanegpr, float);
42+
DECLARE_SOA_COLUMN(NTOFSigmaPosPr, ntofsigmapospr, float);
43+
DECLARE_SOA_COLUMN(NTOFSigmaNegPi, ntofsigmanegpi, float);
44+
DECLARE_SOA_COLUMN(NTOFSigmaPosPi, ntofsigmapospi, float);
4045
DECLARE_SOA_COLUMN(MultFT0M, multft0m, float);
4146
DECLARE_SOA_COLUMN(V0PosTPCCrossedRows, v0postpcCrossedRows, float);
4247
DECLARE_SOA_COLUMN(V0NegTPCCrossedRows, v0negtpcCrossedRows, float);
@@ -54,6 +59,8 @@ DECLARE_SOA_COLUMN(DCACascDaughters, dcacascdaughters, float);
5459
DECLARE_SOA_COLUMN(DCAV0ToPV, dcav0topv, float);
5560
DECLARE_SOA_COLUMN(NTPCSigmaBachPi, ntpcsigmabachpi, float);
5661
DECLARE_SOA_COLUMN(NTPCSigmaBachKa, ntpcsigmabachka, float);
62+
DECLARE_SOA_COLUMN(NTOFSigmaBachPi, ntofsigmabachpi, float);
63+
DECLARE_SOA_COLUMN(NTOFSigmaBachKa, ntofsigmabachka, float);
5764
DECLARE_SOA_COLUMN(BachTPCCrossedRows, bachtpcCrossedRows, float);
5865
DECLARE_SOA_COLUMN(BachTPCChi2, bachTPCChi2, float);
5966
DECLARE_SOA_COLUMN(BachITSlayers, bachITSlayers, int);
@@ -67,6 +74,7 @@ DECLARE_SOA_TABLE(V0InJets, "AOD", "V0INJETS",
6774
lfinjets::V0Radius, lfinjets::V0CosPA, lfinjets::V0DCAPosToPV,
6875
lfinjets::V0DCANegToPV, lfinjets::V0DCAV0Daughters,
6976
lfinjets::NTPCSigmaNegPr, lfinjets::NTPCSigmaPosPr, lfinjets::NTPCSigmaNegPi, lfinjets::NTPCSigmaPosPi,
77+
lfinjets::NTOFSigmaNegPr, lfinjets::NTOFSigmaPosPr, lfinjets::NTOFSigmaNegPi, lfinjets::NTOFSigmaPosPi,
7078
lfinjets::MultFT0M, lfinjets::V0PosTPCCrossedRows, lfinjets::V0NegTPCCrossedRows,
7179
lfinjets::V0NegTPCChi2, lfinjets::V0NegITSlayers, lfinjets::V0PosTPCChi2, lfinjets::V0PosITSlayers,
7280
lfinjets::IsUE, lfinjets::IsJC);
@@ -77,7 +85,8 @@ DECLARE_SOA_TABLE(CascInJets, "AOD", "CASCINJETS",
7785
lfinjets::V0DCAPosToPV, lfinjets::V0DCANegToPV, lfinjets::DCABachToPV,
7886
lfinjets::DCACascDaughters, lfinjets::V0DCAV0Daughters, lfinjets::DCAV0ToPV,
7987
lfinjets::NTPCSigmaNegPr, lfinjets::NTPCSigmaPosPr, lfinjets::NTPCSigmaNegPi, lfinjets::NTPCSigmaPosPi,
80-
lfinjets::NTPCSigmaBachPi, lfinjets::NTPCSigmaBachKa, lfinjets::MultFT0M,
88+
lfinjets::NTOFSigmaNegPr, lfinjets::NTOFSigmaPosPr, lfinjets::NTOFSigmaNegPi, lfinjets::NTOFSigmaPosPi,
89+
lfinjets::NTPCSigmaBachPi, lfinjets::NTPCSigmaBachKa, lfinjets::NTOFSigmaBachPi, lfinjets::NTOFSigmaBachKa, */lfinjets::MultFT0M,
8190
lfinjets::V0PosTPCCrossedRows, lfinjets::V0NegTPCCrossedRows, lfinjets::BachTPCCrossedRows,
8291
lfinjets::V0NegTPCChi2, lfinjets::V0NegITSlayers, lfinjets::V0PosTPCChi2, lfinjets::V0PosITSlayers,
8392
lfinjets::BachTPCChi2, lfinjets::BachITSlayers,

PWGLF/TableProducer/Strangeness/lfinjets.cxx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1149,6 +1149,10 @@ struct LFInJets {
11491149
pos.tpcNSigmaPr(),
11501150
neg.tpcNSigmaPi(),
11511151
pos.tpcNSigmaPi(),
1152+
neg.tofNSigmaPr(),
1153+
pos.tofNSigmaPr(),
1154+
neg.tofNSigmaPi(),
1155+
pos.tofNSigmaPi(),
11521156
collision.centFT0M(),
11531157
pos.tpcNClsCrossedRows(),
11541158
neg.tpcNClsCrossedRows(),
@@ -1229,6 +1233,12 @@ struct LFInJets {
12291233
pos.tpcNSigmaPi(),
12301234
bach.tpcNSigmaPi(),
12311235
bach.tpcNSigmaKa(),
1236+
neg.tofNSigmaPr(),
1237+
pos.tofNSigmaPr(),
1238+
neg.tofNSigmaPi(),
1239+
pos.tofNSigmaPi(),
1240+
bach.tofNSigmaPi(),
1241+
bach.tofNSigmaKa(),
12321242
collision.centFT0M(),
12331243
pos.tpcNClsCrossedRows(),
12341244
neg.tpcNClsCrossedRows(),

PWGLF/Tasks/Strangeness/strangenessInJets.cxx

Lines changed: 144 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1791,6 +1791,45 @@ struct StrangenessInJets {
17911791
continue;
17921792
if (std::fabs(v0.v0dcanegtopv()) < dcanegtoPVmin)
17931793
continue;
1794+
// PID selections (TPC) -- K0s
1795+
if (v0.ntpcsigmapospi() < nsigmaTPCmin || v0.ntpcsigmapospi() > nsigmaTPCmax)
1796+
continue;
1797+
if (v0.ntpcsigmanegpi() < nsigmaTPCmin || v0.ntpcsigmanegpi() > nsigmaTPCmax)
1798+
continue;
1799+
1800+
// PID selections (TOF) -- K0s
1801+
if (requireTOF) {
1802+
if (v0.ntofsigmapospi() < nsigmaTOFmin || v0.ntofsigmapospi() > nsigmaTOFmax)
1803+
continue;
1804+
if (v0.ntofsigmanegpi() < nsigmaTOFmin || v0.ntofsigmanegpi() > nsigmaTOFmax)
1805+
continue;
1806+
}
1807+
// PID selections (TPC): positive track = proton, negative track = pion -- Lam
1808+
if (v0.ntpcsigmapospr() < nsigmaTPCmin || v0.ntpcsigmapospr() > nsigmaTPCmax)
1809+
continue;
1810+
if (v0.ntpcsigmanegpi() < nsigmaTPCmin || v0.ntpcsigmanegpi() > nsigmaTPCmax)
1811+
continue;
1812+
1813+
// PID selections (TOF): positive track = proton, negative track = pion -- Lam
1814+
if (requireTOF) {
1815+
if (v0.ntofsigmapospr() < nsigmaTOFmin || v0.ntofsigmapospr() > nsigmaTOFmax)
1816+
continue;
1817+
if (v0.ntofsigmanegpi() < nsigmaTOFmin || v0.ntofsigmanegpi() > nsigmaTOFmax)
1818+
continue;
1819+
}
1820+
// PID selections (TPC): negative track = proton, positive track = pion --- ALam
1821+
if (v0.ntpcsigmapospi() < nsigmaTPCmin || v0.ntpcsigmapospi() > nsigmaTPCmax)
1822+
continue;
1823+
if (v0.ntpcsigmanegpr() < nsigmaTPCmin || v0.ntpcsigmanegpr() > nsigmaTPCmax)
1824+
continue;
1825+
1826+
// PID selections (TOF): negative track = proton, positive track = pion --- ALam
1827+
if (requireTOF) {
1828+
if (v0.ntofsigmapospi() < nsigmaTOFmin || v0.ntofsigmapospi() > nsigmaTOFmax)
1829+
continue;
1830+
if (v0.ntofsigmanegpr() < nsigmaTOFmin || v0.ntofsigmanegpr() > nsigmaTOFmax)
1831+
continue;
1832+
}
17941833

17951834
if (v0.isUE()) {
17961835
registryData.fill(HIST("K0s_in_ue"), v0.multft0m(), v0.pt(), v0.massk0short());
@@ -1828,6 +1867,111 @@ struct StrangenessInJets {
18281867
continue;
18291868
if (std::fabs(casc.dcabachtopv()) < dcabachtopvMin)
18301869
continue;
1870+
if (std::fabs(casc.dcav0topv()) < dcaV0topvMin)
1871+
continue;
1872+
if (std::fabs(casc.dcacascdaughters()) > dcaCascDaughtersMax)
1873+
continue;
1874+
//Xi
1875+
// Xi+ selection (Xi+ -> antiL + pi+)
1876+
if (casc.sign() > 0) {
1877+
// PID selections (TPC)
1878+
if (casc.ntpcsigmanegpr() < nsigmaTPCmin || casc.ntpcsigmanegpr() > nsigmaTPCmax)
1879+
continue;
1880+
if (casc.ntpcsigmapospi() < nsigmaTPCmin || casc.ntpcsigmapospi() > nsigmaTPCmax)
1881+
continue;
1882+
1883+
// PID selections (TOF)
1884+
if (requireTOF) {
1885+
if (casc.ntofsigmanegpr() < nsigmaTOFmin || casc.ntofsigmanegpr() > nsigmaTOFmax)
1886+
continue;
1887+
if (casc.ntofsigmapospi() < nsigmaTOFmin || casc.ntofsigmapospi() > nsigmaTOFmax)
1888+
continue;
1889+
}
1890+
}
1891+
// Xi- selection (Xi- -> L + pi-)
1892+
if (casc.sign() < 0) {
1893+
// PID selections (TPC)
1894+
if (casc.ntpcsigmapospr() < nsigmaTPCmin || casc.ntpcsigmapospr() > nsigmaTPCmax)
1895+
continue;
1896+
if (casc.ntpcsigmanegpi() < nsigmaTPCmin || casc.ntpcsigmanegpi() > nsigmaTPCmax)
1897+
continue;
1898+
1899+
// PID selections (TOF)
1900+
if (requireTOF) {
1901+
if (casc.ntofsigmapospr() < nsigmaTOFmin || casc.ntofsigmapospr() > nsigmaTOFmax)
1902+
continue;
1903+
if (casc.ntofsigmanegpi() < nsigmaTOFmin || casc.ntofsigmanegpi() > nsigmaTOFmax)
1904+
continue;
1905+
}
1906+
}
1907+
1908+
// PID selection on bachelor
1909+
if (casc.ntpcsigmabachpi() < nsigmaTPCmin || casc.ntpcsigmabachpi() > nsigmaTPCmax)
1910+
continue;
1911+
1912+
// PID selections (TOF)
1913+
if (requireTOF) {
1914+
if (casc.ntofsigmabachpi() < nsigmaTOFmin || casc.ntofsigmabachpi() > nsigmaTOFmax)
1915+
continue;
1916+
}
1917+
// V0 mass window
1918+
if (std::fabs(casc.masslambda() - o2::constants::physics::MassLambda0) > deltaMassLambda)
1919+
continue;
1920+
// Reject candidates compatible with Omega
1921+
if (std::fabs(casc.massomega() - o2::constants::physics::MassOmegaMinus) < deltaMassOmega)
1922+
continue;
1923+
1924+
//Omega
1925+
// Omega+ selection (Omega+ -> antiL + K+)
1926+
if (casc.sign() > 0) {
1927+
// PID selections (TPC)
1928+
if (casc.ntpcsigmanegpr() < nsigmaTPCmin || casc.ntpcsigmanegpr() > nsigmaTPCmax)
1929+
continue;
1930+
if (casc.ntpcsigmapospi() < nsigmaTPCmin || casc.ntpcsigmapospi() > nsigmaTPCmax)
1931+
continue;
1932+
1933+
// PID selections (TOF)
1934+
if (requireTOF) {
1935+
if (casc.ntofsigmanegpr() < nsigmaTOFmin || casc.ntofsigmanegpr() > nsigmaTOFmax)
1936+
continue;
1937+
if (casc.ntofsigmapospi() < nsigmaTOFmin || casc.ntofsigmapospi() > nsigmaTOFmax)
1938+
continue;
1939+
}
1940+
}
1941+
1942+
// Omega- selection (Omega- -> L + K-)
1943+
if (casc.sign() < 0) {
1944+
// PID selections (TPC)
1945+
if (casc.ntpcsigmapospr() < nsigmaTPCmin || casc.ntpcsigmapospr() > nsigmaTPCmax)
1946+
continue;
1947+
if (casc.ntpcsigmanegpi() < nsigmaTPCmin || casc.ntpcsigmanegpi() > nsigmaTPCmax)
1948+
continue;
1949+
1950+
// PID selections (TOF)
1951+
if (requireTOF) {
1952+
if (casc.ntofsigmapospr() < nsigmaTOFmin || casc.ntofsigmapospr() > nsigmaTOFmax)
1953+
continue;
1954+
if (casc.ntofsigmanegpi() < nsigmaTOFmin || casc.ntofsigmanegpi() > nsigmaTOFmax)
1955+
continue;
1956+
}
1957+
}
1958+
1959+
// PID selection on bachelor
1960+
if (casc.ntpcsigmabachka() < nsigmaTPCmin || casc.ntpcsigmabachka() > nsigmaTPCmax)
1961+
continue;
1962+
1963+
// PID selections (TOF)
1964+
if (requireTOF) {
1965+
if (casc.ntofsigmabachka() < nsigmaTOFmin || casc.ntofsigmabachka() > nsigmaTOFmax)
1966+
continue;
1967+
}
1968+
// V0 mass window
1969+
if (std::fabs(casc.masslambda() - o2::constants::physics::MassLambda0) > deltaMassLambda)
1970+
continue;
1971+
1972+
// Reject candidates compatible with Xi
1973+
if (std::fabs(casc.massxi() - o2::constants::physics::MassXiMinus) < deltaMassXi)
1974+
continue;
18311975

18321976
if (casc.isUE()) {
18331977
if (casc.sign() < 0) {

0 commit comments

Comments
 (0)