-//
// Macro designed for use with the AliAnalysisTaskDptDptCorrelations task.
-//
// Author: Prabhat Pujahari & Claude Pruneau, Wayne State
-//
-// system: 0: PbPb 1: pp
+// system: 0: PbPb 1: pPb
// singlesOnly: 0: full correlations 1: singles only
// useWeights: 0: no 1: yes
-// centralityMethod: 3: track count 4: V0 centrality
+// centralityMethod: 3: track count 4: V0 centrality 7: V0A centrality for pPb
// chargeSet: 0: ++ 1: +- 2: -+ 3: --
/////////////////////////////////////////////////////////////////////////////////
AliAnalysisTaskDptDptCorrelations *AddTaskDptDptCorr_dca1
-(int system = 0,
- int singlesOnly = 0,
- int useWeights = 1,
- int centralityMethod = 4,
- int chargeSet = 1,
- int trackFilterBit = 128,
- int nClusterMin = 80,
- double etaMin = -0.9,
- double etaMax = 0.9,
- double dcaZMin = -2.0,
- double dcaZMax = 2.0,
- double dcaXYMin = -2.4,
- double dcaXYMax = 2.4,
- int nCentrality = 4,
- char *inputHistogramFileName = "alien:///alice/cern.ch/user/p/prabhat/CalibFiles/PbPbCalib_dca1.root",
- char *OutputFileName = "AnaDptphase2dca_2"
- )
+(int system = 0,
+ int singlesOnly = 0,
+ int useWeights = 1,
+ int centralityMethod = 4,
+ int chargeSet = 1,
+ double zMin = -10.,
+ double zMax = 10.,
+ int trackFilterBit = 128,
+ int nClusterMin = 80,
+ double eta1Min = -0.8,
+ double eta1Max = 0.8,
+ double eta2Min = -0.8,
+ double eta2Max = 0.8,
+ double dcaZMin = -3.2,
+ double dcaZMax = 3.2,
+ double dcaXYMin = -2.4,
+ double dcaXYMax = 2.4,
+ int nCentrality = 1,
+ Bool_t trigger = kFALSE,
+ const char* taskname = "dcaz2",
+ char *inputHistogramFileName = "alien:///alice/cern.ch/user/p/prabhat/CalibFiles/PbPbCalib_dca1.root")
{
// Set Default Configuration of this analysis
int rejectPileup = 1;
int rejectPairConversion = 1;
int sameFilter = 1;
-
//int nCentrality;
double minCentrality[10];
{
if (centralityMethod == 4)
{
-
- minCentrality[0] = 0.0; maxCentrality[0] = 5.0;
- minCentrality[1] = 5.0; maxCentrality[1] = 10.;
- minCentrality[2] = 30.; maxCentrality[2] = 40.;
- minCentrality[3] = 60.; maxCentrality[3] = 70.;
-
- //nCentrality = 10;
- /*minCentrality[0] = 0.0; maxCentrality[0] = 5.0;
- minCentrality[1] = 5.0; maxCentrality[1] = 10.;
- minCentrality[2] = 10.; maxCentrality[2] = 20.;
- minCentrality[3] = 20.; maxCentrality[3] = 30.;
- minCentrality[4] = 30.; maxCentrality[4] = 40.;
- minCentrality[5] = 40.; maxCentrality[5] = 50.;
- minCentrality[6] = 50.; maxCentrality[6] = 60.;
- minCentrality[7] = 60.; maxCentrality[7] = 70.;
- minCentrality[8] = 70.; maxCentrality[8] = 80.;
- minCentrality[9] = 80.; maxCentrality[9] = 90.;
- */
+ minCentrality[0] = 0.0; maxCentrality[0] = 5.0;
+ minCentrality[1] = 10.; maxCentrality[1] = 20.;
+ minCentrality[2] = 30.; maxCentrality[2] = 40.;
+ minCentrality[3] = 50.; maxCentrality[3] = 60.;
+ minCentrality[4] = 70.; maxCentrality[4] = 80.;
}
else
{
return 0;
}
}
- else if (system==1) // pp
+ else if (system==1) // pPb
{
- if (centralityMethod == 3)
+ if (centralityMethod == 7)
{
- nCentrality = 4;
- minCentrality[0] = 2; maxCentrality[0] = 100.0;
- minCentrality[1] = 2; maxCentrality[1] = 20.;
- minCentrality[2] = 20.; maxCentrality[2] = 50.;
- minCentrality[3] = 50.; maxCentrality[3] = 100.;
+ minCentrality[0] = 0; maxCentrality[0] = 20.0;
+ minCentrality[1] = 20.; maxCentrality[1] = 40.;
+ minCentrality[2] = 40.; maxCentrality[2] = 60.;
+ minCentrality[3] = 60.; maxCentrality[3] = 80.;
}
else
{
return 0;
}
- double zMin = -10.;
- double zMax = 10.;
+ //double zMin = -10.;
+ //double zMax = 10.;
double ptMin = 0.2;
double ptMax = 2.0;
- //double etaMin = -0.9;
- //double etaMax = 0.9;
- //double dcaZMin = -3.0;
- //double dcaZMax = 3.0;
- //double dcaXYMin = -2.4;
- //double dcaXYMax = 2.4;
double dedxMin = 0.0;
double dedxMax = 20000.0;
- //int nClusterMin = 80;
- //int trackFilterBit = 128;//TPC only
- //int trackFilterBit = 272; //Hybrid
-
int requestedCharge1 = 1; //default
int requestedCharge2 = -1; //default
case 2: part1Name = "M_"; part2Name = "P_"; requestedCharge1 = -1; requestedCharge2 = 1; sameFilter = 0; break;
case 3: part1Name = "M_"; part2Name = "M_"; requestedCharge1 = -1; requestedCharge2 = -1; sameFilter = 1; break;
}
- //part1Name += int(1000*etaMin);
+
part1Name += "eta";
- part1Name += int(1000*etaMax);
+ part1Name += int(1000*eta1Max);
part1Name += "_";
part1Name += int(1000*ptMin);
part1Name += "pt";
part1Name += int(1000*ptMax);
part1Name += "_";
- //part2Name += int(1000*etaMin);
+ part1Name += int(1000*dcaZMin);
+ part1Name += "DCA";
+ part1Name += int(1000*dcaZMax);
+ part1Name += "_";
+
part2Name += "eta";
- part2Name += int(1000*etaMax);
+ part2Name += int(1000*eta2Max);
part2Name += "_";
part2Name += int(1000*ptMin);
part2Name += "pt";
part2Name += int(1000*ptMax);
part2Name += "_";
+ part2Name += int(1000*dcaZMin);
+ part2Name += "DCA";
+ part2Name += int(1000*dcaZMax);
+ part2Name += "_";
+
eventName = "";
eventName += int(10.*minCentrality[iCentrality] );
eventName += "Vo";
eventName += int(10.*maxCentrality[iCentrality] );
- //eventName += "_";
- //eventName += int(10*zMin );
- //eventName += "Z";
- //eventName += int(10*zMax );
- //if (rejectPileup) eventName += pileupRejecSuffix;
- //if (rejectPairConversion) eventName += pairRejecSuffix;
+
baseName = prefixName;
baseName += part1Name;
baseName += part2Name;
listName = baseName;
taskName = baseName;
-
- //inputHistogramFileName = "alien:///alice/cern.ch/user/p/prabhat/CalibFiles/PbPbCalib_dca1.root";
- //inputHistogramFileName = "/Users/prabhat/dEdX/rootfile/272/before/PbPb276Calibration_2010.root";
outputHistogramFileName = baseName;
if (singlesOnly) outputHistogramFileName += singlesOnlySuffix;
outputHistogramFileName += ".root";
- /*cout << "============================================================" << endl;
- cout << " iTask: " << iTask << endl;
- cout << " Task Name: " << taskName << endl;
- cout << " List Name: " << listName << endl;
- cout << " inputHistogramFileName: " << inputHistogramFileName << endl;
- cout << " outputHistogramFileName: " << outputHistogramFileName << endl;
- cout << " system: " << system << endl;
- cout << " singlesOnly: " << singlesOnly << endl;
- cout << " using weights: " << useWeights << endl;
- cout << " centralityMethod: " << centralityMethod << endl;
- cout << " chargeSet: " << chargeSet << endl;
- cout << " debugLevel: " << debugLevel << endl;
- cout << " rejectPileup: " << rejectPileup << endl;
- cout << " rejectPairConversion: " << rejectPairConversion << endl;
- cout << " sameFilter: " << sameFilter << endl;
- cout << " zMin: " << zMin << endl;
- cout << " zMax: " << zMax << endl;
- cout << " ptMin: " << ptMin << endl;
- cout << " ptMax: " << ptMax << endl;
- cout << " etaMin: " << etaMin << endl;
- cout << " etaMax: " << etaMax << endl;
- cout << " dcaZMin: " << dcaZMin << endl;
- cout << " dcaZMax: " << dcaZMax << endl;
- cout << " dcaXYMin: " << dcaXYMin << endl;
- cout << " dcaXYMax: " << dcaXYMax << endl;
- cout << " dedxMin: " << dedxMin << endl;
- cout << " dedxMax: " << dedxMax << endl;
- cout << " nClusterMin: " << nClusterMin << endl;
- cout << " trackFilterBit: " << trackFilterBit << endl;
- cout << " requestedCharge1: " << requestedCharge1 << endl;
- cout << " requestedCharge2: " << requestedCharge2 << endl;
- cout << "============================================================" << endl;
- */
- TFile * inputFile = 0;
+
+ TFile * inputFile = 0;
TList * histoList = 0;
TH3F * weight_1 = 0;
TH3F * weight_2 = 0;
task->SetCentrality( minCentrality[iCentrality], maxCentrality[iCentrality]);
task->SetPtMin1( ptMin );
task->SetPtMax1( ptMax );
- task->SetEtaMin1( etaMin );
- task->SetEtaMax1( etaMax );
+ task->SetEtaMin1( eta1Min );
+ task->SetEtaMax1( eta1Max );
task->SetPtMin2( ptMin );
task->SetPtMax2( ptMax );
- task->SetEtaMin2( etaMin );
- task->SetEtaMax2( etaMax );
+ task->SetEtaMin2( eta2Min );
+ task->SetEtaMax2( eta2Max );
task->SetDcaZMin( dcaZMin );
task->SetDcaZMax( dcaZMax );
task->SetDcaXYMin( dcaXYMin );
task->SetWeigth_1( weight_1 );
task->SetWeigth_2( weight_2 );
-
- //cout << "Creating task output container" << endl;
- taskOutputContainer = analysisManager->CreateContainer(listName,
- TList::Class(),
- AliAnalysisManager::kOutputContainer,
- Form("%s.root:Histos", OutputFileName));
- //cout << "Add task to analysis manager and connect it to input and output containers" << endl;
+
+ if(trigger) task->SelectCollisionCandidates(AliVEvent::kINT7);
+ else task->SelectCollisionCandidates(AliVEvent::kMB);
+
+ cout << "Creating task output container" << endl;
+
+ taskOutputContainer = analysisManager->CreateContainer(listName,
+ TList::Class(),
+ AliAnalysisManager::kOutputContainer,
+ Form("%s:%s", AliAnalysisManager::GetCommonFileName(),taskname));
+ cout << "Add task to analysis manager and connect it to input and output containers" << endl;
+
analysisManager->AddTask(task);
analysisManager->ConnectInput( task, 0, analysisManager->GetCommonInputContainer());
analysisManager->ConnectOutput(task, 0, taskOutputContainer );