Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 13 additions & 15 deletions PWGLF/TableProducer/Strangeness/strangenessbuilder.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ static const int defaultParameters[nTablesConst][nParameters]{
{-1},
{-1},
{-1}, // index 9
{-1},
{-1},
{-1},
{-1},
{-1},
Expand All @@ -110,12 +110,11 @@ static const int defaultParameters[nTablesConst][nParameters]{
{-1},
{-1},
{-1}, // index 29
{-1},
{-1},
{-1},
{-1},
{-1}
};
{-1},
{-1},
{-1},
{-1},
{-1}};

// use parameters + cov mat non-propagated, aux info + (extension propagated)
using FullTracksExt = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksCov>;
Expand Down Expand Up @@ -391,9 +390,9 @@ struct StrangenessBuilder {

for (int i = 0; i < nTables; i++) {
// adjust bookkeeping histogram
h->GetXaxis()->SetBinLabel(i+1, tableNames[i].c_str());
h2->GetXaxis()->SetBinLabel(i+1, tableNames[i].c_str());
h->SetBinContent(i+1, -1); // mark all as disabled to start
h->GetXaxis()->SetBinLabel(i + 1, tableNames[i].c_str());
h2->GetXaxis()->SetBinLabel(i + 1, tableNames[i].c_str());
h->SetBinContent(i + 1, -1); // mark all as disabled to start

int f = enabledTables->get(tableNames[i].c_str(), "enable");
if (f == 1) {
Expand Down Expand Up @@ -423,7 +422,7 @@ struct StrangenessBuilder {
// printout to be improved in the future
if (mEnabledTables[i]) {
LOGF(info, " -~> Table enabled: %s", tableNames[i]);
h->SetBinContent(i+1, 0); // mark enabled
h->SetBinContent(i + 1, 0); // mark enabled
}
}
LOGF(info, "*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*");
Expand All @@ -444,15 +443,14 @@ struct StrangenessBuilder {
LOGF(info, "-~> Cascade | Lambda mass window .......: %f", cascadeBuilderOpts.lambdaMassWindow.value);
LOGF(info, "-~> Cascade | Maximum daughter eta .....: %f", cascadeBuilderOpts.maxDaughterEta.value);
LOGF(info, "*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*+-+*");


ccdb->setURL(ccdbConfigurations.ccdburl);
ccdb->setCaching(true);
ccdb->setLocalObjectValidityChecking();
ccdb->setFatalWhenNull(false);

// set V0 parameters in the helper
straHelper.v0selections.minCrossedRows = v0BuilderOpts.minCrossedRows;
// set V0 parameters in the helper
straHelper.v0selections.minCrossedRows = v0BuilderOpts.minCrossedRows;
straHelper.v0selections.dcanegtopv = v0BuilderOpts.dcanegtopv;
straHelper.v0selections.dcapostopv = v0BuilderOpts.dcapostopv;
straHelper.v0selections.v0cospa = v0BuilderOpts.v0cospa;
Expand All @@ -461,7 +459,7 @@ struct StrangenessBuilder {
straHelper.v0selections.maxDaughterEta = v0BuilderOpts.maxDaughterEta;

// set cascade parameters in the helper
straHelper.cascadeselections.minCrossedRows = cascadeBuilderOpts.minCrossedRows;
straHelper.cascadeselections.minCrossedRows = cascadeBuilderOpts.minCrossedRows;
straHelper.cascadeselections.dcabachtopv = cascadeBuilderOpts.dcabachtopv;
straHelper.cascadeselections.cascradius = cascadeBuilderOpts.cascradius;
straHelper.cascadeselections.casccospa = cascadeBuilderOpts.casccospa;
Expand Down
76 changes: 38 additions & 38 deletions PWGLF/Utils/strangenessBuilderHelper.h
Original file line number Diff line number Diff line change
Expand Up @@ -145,12 +145,12 @@ class strangenessBuilderHelper
fitter.setUseAbsDCA(true);
fitter.setWeightedFinalPCA(false);

v0selections.minCrossedRows = -1;
v0selections.minCrossedRows = -1;
v0selections.dcanegtopv = -1.0f;
v0selections.dcapostopv = -1.0f;
v0selections.v0cospa = -2;
v0selections.v0cospa = -2;
v0selections.dcav0dau = 1e+6;
v0selections.v0radius = 0.0f;
v0selections.v0radius = 0.0f;
v0selections.maxDaughterEta = 2.0;

// LUT has to be loaded later
Expand All @@ -168,19 +168,19 @@ class strangenessBuilderHelper
bool useCollinearFit = false,
bool calculateCovariance = false)
{
// verify track quality
if(positiveTrack.tpcNClsCrossedRows() < v0selections.minCrossedRows){
// verify track quality
if (positiveTrack.tpcNClsCrossedRows() < v0selections.minCrossedRows) {
return false;
}
if(negativeTrack.tpcNClsCrossedRows() < v0selections.minCrossedRows){
if (negativeTrack.tpcNClsCrossedRows() < v0selections.minCrossedRows) {
return false;
}

// verify eta
if(std::fabs(positiveTrack.eta()) > v0selections.maxDaughterEta){
if (std::fabs(positiveTrack.eta()) > v0selections.maxDaughterEta) {
return false;
}
if(std::fabs(negativeTrack.eta()) > v0selections.maxDaughterEta){
if (std::fabs(negativeTrack.eta()) > v0selections.maxDaughterEta) {
return false;
}

Expand All @@ -191,15 +191,15 @@ class strangenessBuilderHelper
o2::base::Propagator::Instance()->propagateToDCABxByBz({collision.posX(), collision.posY(), collision.posZ()}, posTrackPar, 2.f, fitter.getMatCorrType(), &dcaInfo);
v0.positiveDCAxy = dcaInfo[0];

if(std::fabs(v0.positiveDCAxy) < v0selections.dcanegtopv){
if (std::fabs(v0.positiveDCAxy) < v0selections.dcanegtopv) {
return false;
}

auto negTrackPar = getTrackPar(negativeTrack);
o2::base::Propagator::Instance()->propagateToDCABxByBz({collision.posX(), collision.posY(), collision.posZ()}, negTrackPar, 2.f, fitter.getMatCorrType(), &dcaInfo);
v0.negativeDCAxy = dcaInfo[0];

if(std::fabs(v0.negativeDCAxy) < v0selections.dcanegtopv){
if (std::fabs(v0.negativeDCAxy) < v0selections.dcanegtopv) {
return false;
}

Expand Down Expand Up @@ -234,21 +234,21 @@ class strangenessBuilderHelper
v0.position[i] = vtx[i];
}

if(std::hypot(v0.position[0], v0.position[1]) < v0selections.v0radius){
if (std::hypot(v0.position[0], v0.position[1]) < v0selections.v0radius) {
return false;
}

v0.daughterDCA = TMath::Sqrt(fitter.getChi2AtPCACandidate());

if(v0.daughterDCA > v0selections.dcav0dau){
if (v0.daughterDCA > v0selections.dcav0dau) {
return false;
}

double cosPA = RecoDecay::cpa(
std::array{collision.posX(), collision.posY(), collision.posZ()},
std::array{v0.position[0], v0.position[1], v0.position[2]},
std::array{v0.positiveMomentum[0] + v0.negativeMomentum[0], v0.positiveMomentum[1] + v0.negativeMomentum[1], v0.positiveMomentum[2] + v0.negativeMomentum[2]});
if(cosPA < v0selections.v0cospa){
if (cosPA < v0selections.v0cospa) {
return false;
}

Expand Down Expand Up @@ -335,33 +335,33 @@ class strangenessBuilderHelper
bool useCascadeMomentumAtPV = false,
bool processCovariances = false)
{
// verify track quality
if(positiveTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows){
// verify track quality
if (positiveTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows) {
return false;
}
if(negativeTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows){
if (negativeTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows) {
return false;
}
if(bachelorTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows){
if (bachelorTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows) {
return false;
}

// verify eta
if(std::fabs(positiveTrack.eta()) > cascadeselections.maxDaughterEta){
if (std::fabs(positiveTrack.eta()) > cascadeselections.maxDaughterEta) {
return false;
}
if(std::fabs(negativeTrack.eta()) > cascadeselections.maxDaughterEta){
if (std::fabs(negativeTrack.eta()) > cascadeselections.maxDaughterEta) {
return false;
}
if(std::fabs(bachelorTrack.eta()) > cascadeselections.maxDaughterEta){
if (std::fabs(bachelorTrack.eta()) > cascadeselections.maxDaughterEta) {
return false;
}

// verify lambda mass
if (bachelorTrack.sign()<0 && std::fabs(v0input.massLambda - 1.116) > cascadeselections.lambdaMassWindow){
if (bachelorTrack.sign() < 0 && std::fabs(v0input.massLambda - 1.116) > cascadeselections.lambdaMassWindow) {
return false;
}
if (bachelorTrack.sign()>0 && std::fabs(v0input.massAntiLambda - 1.116) > cascadeselections.lambdaMassWindow){
if (bachelorTrack.sign() > 0 && std::fabs(v0input.massAntiLambda - 1.116) > cascadeselections.lambdaMassWindow) {
return false;
}

Expand All @@ -386,7 +386,7 @@ class strangenessBuilderHelper
o2::base::Propagator::Instance()->propagateToDCABxByBz({collision.posX(), collision.posY(), collision.posZ()}, bachTrackPar, 2.f, fitter.getMatCorrType(), &dcaInfo);
cascade.bachelorDCAxy = dcaInfo[0];

if(std::fabs(cascade.bachelorDCAxy) < cascadeselections.dcabachtopv){
if (std::fabs(cascade.bachelorDCAxy) < cascadeselections.dcabachtopv) {
return false;
}

Expand Down Expand Up @@ -423,7 +423,7 @@ class strangenessBuilderHelper

// DCA between cascade daughters
cascade.cascadeDaughterDCA = TMath::Sqrt(fitter.getChi2AtPCACandidate());
if(cascade.cascadeDaughterDCA > cascadeselections.dcacascdau){
if (cascade.cascadeDaughterDCA > cascadeselections.dcacascdau) {
return false;
}

Expand All @@ -433,7 +433,7 @@ class strangenessBuilderHelper
for (int i = 0; i < 3; i++) {
cascade.cascadePosition[i] = vtx[i];
}
if(std::hypot(cascade.cascadePosition[0], cascade.cascadePosition[1]) < cascadeselections.cascradius){
if (std::hypot(cascade.cascadePosition[0], cascade.cascadePosition[1]) < cascadeselections.cascradius) {
return false;
}

Expand All @@ -443,7 +443,7 @@ class strangenessBuilderHelper
std::array{v0input.positiveMomentum[0] + v0input.negativeMomentum[0] + cascade.bachelorMomentum[0],
v0input.positiveMomentum[1] + v0input.negativeMomentum[1] + cascade.bachelorMomentum[1],
v0input.positiveMomentum[2] + v0input.negativeMomentum[2] + cascade.bachelorMomentum[2]});
if(cosPA < cascadeselections.casccospa){
if (cosPA < cascadeselections.casccospa) {
return false;
}
cascade.pointingAngle = TMath::ACos(cosPA);
Expand Down Expand Up @@ -548,24 +548,24 @@ class strangenessBuilderHelper
// dispenses prior V0 generation, uses constrained (re-)fit based on bachelor charge
//*>~<*>~<*>~<*>~<*>~<*>~<*>~<*>~<*>~<*

if(positiveTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows){
if (positiveTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows) {
return false;
}
if(negativeTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows){
if (negativeTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows) {
return false;
}
if(bachelorTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows){
if (bachelorTrack.tpcNClsCrossedRows() < cascadeselections.minCrossedRows) {
return false;
}

// verify eta
if(std::fabs(positiveTrack.eta()) > cascadeselections.maxDaughterEta){
if (std::fabs(positiveTrack.eta()) > cascadeselections.maxDaughterEta) {
return false;
}
if(std::fabs(negativeTrack.eta()) > cascadeselections.maxDaughterEta){
if (std::fabs(negativeTrack.eta()) > cascadeselections.maxDaughterEta) {
return false;
}
if(std::fabs(bachelorTrack.eta()) > cascadeselections.maxDaughterEta){
if (std::fabs(bachelorTrack.eta()) > cascadeselections.maxDaughterEta) {
return false;
}

Expand Down Expand Up @@ -596,7 +596,7 @@ class strangenessBuilderHelper
o2::base::Propagator::Instance()->propagateToDCABxByBz({collision.posX(), collision.posY(), collision.posZ()}, negTrackParCovForDCA, 2.f, fitter.getMatCorrType(), &dcaInfo);
cascade.negativeDCAxy = dcaInfo[0];

if(std::fabs(cascade.bachelorDCAxy) < cascadeselections.dcabachtopv){
if (std::fabs(cascade.bachelorDCAxy) < cascadeselections.dcabachtopv) {
return false;
}

Expand Down Expand Up @@ -716,7 +716,7 @@ class strangenessBuilderHelper

// get DCA of daughters at vertex
cascade.cascadeDaughterDCA = kfpBachPion.GetDistanceFromParticle(kfpV0);
if(cascade.cascadeDaughterDCA > cascadeselections.dcacascdau){
if (cascade.cascadeDaughterDCA > cascadeselections.dcacascdau) {
return false;
}

Expand Down Expand Up @@ -785,7 +785,7 @@ class strangenessBuilderHelper
cascade.cascadeMomentum[1] = KFOmega.GetPy();
cascade.cascadeMomentum[2] = KFOmega.GetPz();
}
if(std::hypot(cascade.cascadePosition[0], cascade.cascadePosition[1]) < cascadeselections.cascradius){
if (std::hypot(cascade.cascadePosition[0], cascade.cascadePosition[1]) < cascadeselections.cascradius) {
return false;
}

Expand All @@ -794,7 +794,7 @@ class strangenessBuilderHelper
std::array{collision.posX(), collision.posY(), collision.posZ()},
std::array{cascade.cascadePosition[0], cascade.cascadePosition[1], cascade.cascadePosition[2]},
std::array{cascade.cascadeMomentum[0], cascade.cascadeMomentum[1], cascade.cascadeMomentum[2]});
if(cosPA < cascadeselections.casccospa){
if (cosPA < cascadeselections.casccospa) {
return false;
}
cascade.pointingAngle = TMath::ACos(cosPA);
Expand Down Expand Up @@ -840,7 +840,7 @@ class strangenessBuilderHelper
v0candidate v0; // storage for V0 candidate properties
cascadeCandidate cascade; // storage for cascade candidate properties

// v0 candidate criteria
// v0 candidate criteria
struct {
int minCrossedRows;
float dcanegtopv;
Expand All @@ -851,7 +851,7 @@ class strangenessBuilderHelper
float maxDaughterEta;
} v0selections;

// cascade candidate criteria
// cascade candidate criteria
struct {
int minCrossedRows;
float dcabachtopv;
Expand Down
Loading