const char *nclusters = "",
const char *njets = "Jets",
const char *nrho = "Rho",
- Double_t jetradius = 0.2,
- Double_t jetptcut = 1,
- Double_t jetareacut = 0.557,
- UInt_t type = AliAnalysisTaskEmcal::kTPC,
- Int_t leadhadtype = 0,
+ Double_t jetradius = 0.2,
+ Double_t jetptcut = 1,
+ Double_t jetareacut = 0.557,
+ const char* type = "TPC",
+ Int_t leadhadtype = 0,
const char *taskname = "AliAnalysisTaskRhoVnModulation",
- UInt_t runMode = AliAnalysisTaskRhoVnModulation::kGrid,
- Bool_t fillQA = kTRUE,
- TString fitOpts = "LWQIM",
- UInt_t fitType = AliAnalysisTaskRhoVnModulation::kFourierSeries
+ UInt_t runMode = AliAnalysisTaskRhoVnModulation::kGrid,
+ Bool_t fillQA = kTRUE,
+ TString fitOpts = "WLQI",
+ UInt_t fitType = AliAnalysisTaskRhoVnModulation::kFourierSeries,
+ TArrayI *centralities = 0x0,
+ TRandom3 *randomizer = 0x0,
+ Double_t trackptcut = .15
)
{
// Get the pointer to the existing analysis manager via the static access method.
name += "_";
name += nrho;
}
- if (type == AliAnalysisTaskEmcal::kTPC)
+ if (!strcmp(type, "TPC"))
name += "_TPC";
- else if (type == AliAnalysisTaskEmcal::kEMCAL)
+ else if (!strcmp(type, "EMCAL"))
name += "_EMCAL";
- else if (type == AliAnalysisTaskEmcal::kUser)
+ else if (!strcmp(type, "USER"))
name += "_USER";
AliAnalysisTaskRhoVnModulation* jetTask = new AliAnalysisTaskRhoVnModulation(name, runMode);
// inherited setters
- jetTask->SetAnaType(type);
- jetTask->SetTracksName(ntracks);
- jetTask->SetClusName(nclusters);
- jetTask->SetJetsName(njets);
- jetTask->SetRhoName(nrho);
- jetTask->SetJetRadius(jetradius);
- jetTask->SetJetPtCut(jetptcut);
- jetTask->SetPercAreaCut(jetareacut);
- jetTask->SetLeadingHadronType(leadhadtype);
+ AliParticleContainer* partCont = jetTask->AddParticleContainer(ntracks);
+ if(partCont) {
+ partCont->SetName("Tracks");
+ partCont->SetParticlePtCut(trackptcut);
+ }
+ AliJetContainer* jetCont = jetTask->AddJetContainer(njets, type, jetradius);
+ if(jetCont) {
+ jetCont->SetName("Jets");
+ jetCont->SetPercAreaCut(jetareacut);
+ jetCont->SetRhoName(nrho);
+ jetCont->ConnectParticleContainer(partCont);
+ }
// task specific setters
jetTask->SetFillQAHistograms(fillQA);
jetTask->SetDebugMode(-1);
jetTask->SetModulationFitType(fitType);
jetTask->SetModulationFitOptions(fitOpts);
+ jetTask->SetModulationFitMinMaxP(.001, 1);
+ jetTask->SetRandomConeRadius(jetradius);
+ // if centralities haven't been specified use defaults
+ if(!centralities) {
+ Int_t c[] = {0, 10, 30, 50, 70, 90};
+ jetTask->SetCentralityClasses(new TArrayI(sizeof(c)/sizeof(c[0]), c));
+ }
+ // if a randomized hasn't specified use a safe default
+ if(!randomizer) jetTask->SetRandomSeed(new TRandom3(0));
+
+
+
//-------------------------------------------------------
// Final settings, pass to manager and set the containers
// Create containers for input/output
AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer() ;
TString contname(name);
- contname += "_histos";
+ contname+="_PWGJE";
AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(contname.Data(),
TList::Class(),AliAnalysisManager::kOutputContainer,
Form("%s", AliAnalysisManager::GetCommonFileName()));
switch (runMode) {
case AliAnalysisTaskRhoVnModulation::kLocal : {
gStyle->SetOptFit(1);
- AliAnalysisDataContainer *coutput2 = mgr->CreateContainer("good_fits",
+ AliAnalysisDataContainer *coutput2 = mgr->CreateContainer(Form("good_fits_%s", name.Data()),
TList::Class(),AliAnalysisManager::kOutputContainer,
Form("%s", AliAnalysisManager::GetCommonFileName()));
- AliAnalysisDataContainer *coutput3 = mgr->CreateContainer("bad_fits",
+ AliAnalysisDataContainer *coutput3 = mgr->CreateContainer(Form("bad_fits_%s", name.Data()),
TList::Class(),AliAnalysisManager::kOutputContainer,
Form("%s", AliAnalysisManager::GetCommonFileName()));
mgr->ConnectOutput (jetTask, 2, coutput2);