// - added Case3D to switch off all 3D objects (11/27/13)
// - added centrality flattening routine (and switch) (12/04/13)
// - added event plane stuff (12/11/13)
+// - added NPsiBins argument (1/8/14)
////////////////////////////////////////////////////////////////////////////////
fMinSep(0.0),
fFlatCent(kFALSE),
fPsiBinning(kFALSE),
+ fNPsiBins(0),
fEventCount(0),
fEC(0x0),
fEvt(0X0),
{
}
//________________________________________________________________________
-AliFemtoK0Analysis::AliFemtoK0Analysis(const char *name, bool SignDep, bool FieldPositive, bool OnlineCase, bool MeritCase, bool Case3D, float MinDL, int MeritCutChoice, float MinSep, bool FlatCent, bool PsiBinning)
+AliFemtoK0Analysis::AliFemtoK0Analysis(const char *name, bool SignDep, bool FieldPositive, bool OnlineCase, bool MeritCase, bool Case3D, float MinDL, int MeritCutChoice, float MinSep, bool FlatCent, bool PsiBinning, int NPsiBins)
: AliAnalysisTaskSE(name),
fSignDep(SignDep),
fFieldPos(FieldPositive),
fMinSep(MinSep),
fFlatCent(FlatCent),
fPsiBinning(PsiBinning),
+ fNPsiBins(0),
fEventCount(0),
fEC(0x0),
fEvt(0X0),
fMinSep = MinSep;
fFlatCent = FlatCent;
fPsiBinning = PsiBinning;
+ fNPsiBins = NPsiBins;
// Define output slots here
// Output slot #1
fMinSep(obj.fMinSep),
fFlatCent(obj.fFlatCent),
fPsiBinning(obj.fPsiBinning),
+ fNPsiBins(obj.fNPsiBins),
fEventCount(obj.fEventCount),
fEC(obj.fEC),
fEvt(obj.fEvt),
fMinSep = obj.fMinSep;
fFlatCent = obj.fFlatCent;
fPsiBinning = obj.fPsiBinning;
+ fNPsiBins = obj.fNPsiBins;
fEventCount = obj.fEventCount;
fEC = obj.fEC;
fEvt = obj.fEvt;
{
for(unsigned short j=0; j<kCentBins; j++)
{
- for(unsigned short k=0; k<kPsiBins; k++)
+ for(unsigned short k=0; k<fNPsiBins; k++)
{
fEC[i][j][k]->~AliFemtoK0EventCollection();
fEC[i][j][k] = NULL;
for(unsigned short j=0; j<kCentBins; j++)
{
- fEC[i][j] = new AliFemtoK0EventCollection *[kPsiBins];
+ fEC[i][j] = new AliFemtoK0EventCollection *[fNPsiBins];
- for(unsigned short k=0; k<kPsiBins; k++)
+ for(unsigned short k=0; k<fNPsiBins; k++)
{
fEC[i][j][k] = new AliFemtoK0EventCollection(kEventsToMix+1, kMultLimit);
}
double psiEP = eventplane->GetEventplane("V0",fAOD,2); //[-PI/2,PI/2]
((TH1F*)fOutputList->FindObject("fHistPsi"))->Fill(psiEP);
- double psiStep = PI/double(kPsiBins);
+ double psiStep = PI/double(fNPsiBins);
double psiStart = -0.5*PI;
- for(int i=0; i<kPsiBins; i++)
+ for(int i=0; i<fNPsiBins; i++)
{
if((psiEP > psiStart+i*psiStep) && (psiEP < psiStart+(i+1)*psiStep))
{