]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/muon/AddTaskMuonDistributions.C
Updates to run with deltas (L. Cunqueiro)
[u/mrichter/AliRoot.git] / PWG / muon / AddTaskMuonDistributions.C
1 AliAnalysisTaskMuonDistributions *AddTaskMuonDistributions(const char *kAnalysisType, Bool_t doFitInvMass){
2
3 //****************************************************************************************
4 // Add task class.
5 // The attached class prepares and draws some kinematical distributions of muons/dimuons
6 // Roberta
7 //****************************************************************************************
8
9    printf("Creating Task for Muon/Dimuon Histos\n");
10     
11    // Get the pointer to the existing analysis manager via the static access method.
12    //==============================================================================
13    AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
14    if (!mgr) {
15       ::Error("AddTaskMuonDistributions", "No analysis manager to connect to.");
16       return NULL;
17    }   
18    
19    TString outputfile = AliAnalysisManager::GetCommonFileName();
20    outputfile += ":PWG3Muon_Dimuon";
21
22    AliAnalysisDataContainer *coutput1 = mgr->CreateContainer("Dimuon",TList::Class(),AliAnalysisManager::kOutputContainer,outputfile);
23
24    AliAnalysisTaskMuonDistributions *MuonDistributionsTask = new AliAnalysisTaskMuonDistributions("AliAnalysisTaskMuonDistributions");
25    MuonDistributionsTask->SetAnalysisType(kAnalysisType);
26    //
27    // define by hand the beam energy
28    //
29    MuonDistributionsTask->SetBeamEnergy(5000.);
30    //
31    // define fits limits
32    //
33    MuonDistributionsTask->SetInvMassFitLimits(2.,5.5);
34    MuonDistributionsTask->SetPsiFitLimits(2.9,3.3);
35    MuonDistributionsTask->SetPsiPFitLimits(3.3,4.2);
36    MuonDistributionsTask->SetBckFitLimits(2.,2.8);
37    //
38    // perform fit to the invariant mass spectrum
39    //
40    MuonDistributionsTask->FitInvariantMassSpectrum(doFitInvMass);
41   
42    mgr->AddTask(MuonDistributionsTask);
43  
44    mgr->ConnectInput(MuonDistributionsTask,0,mgr->GetCommonInputContainer());
45    mgr->ConnectOutput(MuonDistributionsTask,1,coutput1);
46   
47    return MuonDistributionsTask;
48 }