X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PWG4%2Fmacros%2FAddTaskPWG4HighPtQATPConly.C;h=2c733a3a08a2a52bc2b2aaadb8fb4d302ba2a26b;hb=9e8998b1614682d51b1c8cdd63ed32cbc7b71a8c;hp=ed82a6d940b89e879e12949615fd531c0b748b59;hpb=65e8ecdd75ce681d8c559480da93028ddcc186cc;p=u%2Fmrichter%2FAliRoot.git diff --git a/PWG4/macros/AddTaskPWG4HighPtQATPConly.C b/PWG4/macros/AddTaskPWG4HighPtQATPConly.C index ed82a6d940b..2c733a3a08a 100644 --- a/PWG4/macros/AddTaskPWG4HighPtQATPConly.C +++ b/PWG4/macros/AddTaskPWG4HighPtQATPConly.C @@ -1,6 +1,6 @@ //DEFINITION OF A FEW CONSTANTS -AliPWG4HighPtQATPConly* AddTaskPWG4HighPtQATPConly()//) +AliPWG4HighPtQATPConly* AddTaskPWG4HighPtQATPConly(char *prodType = "LHC10e14",int cuts=2)//1: Standard Cuts 2009 2: GetStandardITSTPCTrackCuts2009 { // Creates HighPtQATPConly analysis task and adds it to the analysis manager. @@ -28,60 +28,90 @@ AliPWG4HighPtQATPConly* AddTaskPWG4HighPtQATPConly()//) //CREATE THE CUTS ----------------------------------------------- //Use AliESDtrackCuts AliESDtrackCuts *trackCuts = new AliESDtrackCuts("AliESDtrackCuts","Standard Cuts"); - //Standard Cuts - trackCuts->SetAcceptKinkDaughters(kFALSE);// - trackCuts->SetRequireTPCRefit(kTRUE); - trackCuts->SetEtaRange(-0.9,0.9);//-0.5,0.5);// - trackCuts->SetMaxCovDiagonalElements(2,2,0.5,0.5,2);// - trackCuts->SetPtRange(0.15, 1e10);// - trackCuts->SetMinNClustersTPC(70);// - trackCuts->SetMaxChi2PerClusterTPC(3.5);// - //trackCuts->SetRequireITSRefit(kTRUE); - trackCuts->SetMaxDCAToVertexXY(2.4); - trackCuts->SetMaxDCAToVertexZ(3.2); - trackCuts->SetDCAToVertex2D(kTRUE); - + if(cuts==1) { + trackCuts=trackCuts->GetStandardITSTPCTrackCuts2010(kTRUE);//Primary Track Selection + trackCuts->SetEtaRange(-0.9,0.9); + trackCuts->SetPtRange(0.15, 1e10); + + } + else if(cuts==2) { + trackCuts=trackCuts->GetStandardITSTPCTrackCuts2009(kTRUE);//Primary Track Selection + trackCuts->SetEtaRange(-0.9,0.9); + trackCuts->SetPtRange(0.15, 1e10); + } + AliESDtrackCuts *trackCutsITS = new AliESDtrackCuts("AliESDtrackCuts","Standard Cuts with ITSrefit"); - trackCutsITS->SetAcceptKinkDaughters(kFALSE);// - trackCutsITS->SetRequireTPCRefit(kTRUE);// - trackCutsITS->SetEtaRange(-0.9,0.9);//-0.5,0.5);// - trackCutsITS->SetMaxCovDiagonalElements(2,2,0.5,0.5,2);// - trackCutsITS->SetPtRange(0.15, 1e10);// - trackCutsITS->SetMinNClustersTPC(70);// - trackCutsITS->SetMaxChi2PerClusterTPC(3.5);// - trackCutsITS->SetRequireITSRefit(kTRUE); - trackCutsITS->SetMaxDCAToVertexXY(2.4); - trackCutsITS->SetMaxDCAToVertexZ(3.2); - trackCutsITS->SetDCAToVertex2D(kTRUE); - - //Create the task - AliPWG4HighPtQATPConly *taskPWG4QA = new AliPWG4HighPtQATPConly("AliPWG4HighPtQATPConly"); + if(cuts==1) { + //Cuts SPD || SDD + // TPC + trackCutsITS->SetMinNClustersTPC(70); + trackCutsITS->SetMaxChi2PerClusterTPC(4); + trackCutsITS->SetAcceptKinkDaughters(kFALSE); + trackCutsITS->SetRequireTPCRefit(kTRUE); + // ITS + trackCutsITS->SetRequireITSRefit(kTRUE); + trackCutsITS->SetClusterRequirementITS(AliESDtrackCuts::kSPD, AliESDtrackCuts::kNone); + trackCutsITS->SetClusterRequirementITS(AliESDtrackCuts::kSDD, AliESDtrackCuts::kFirst); + + trackCutsITS->SetMaxDCAToVertexXYPtDep("0.0182+0.0350/pt^1.01"); + trackCutsITS->SetMaxDCAToVertexZ(2); + trackCutsITS->SetDCAToVertex2D(kFALSE); + trackCutsITS->SetRequireSigmaToVertex(kFALSE); + + trackCutsITS->SetEtaRange(-0.9,0.9); + trackCutsITS->SetPtRange(0.15, 1e10); + trackCutsITS->SetRequireITSRefit(kTRUE); + + } + else if(cuts==2) { + trackCutsITS=trackCutsITS->GetStandardITSTPCTrackCuts2009(kTRUE);//Primary Track Selection + trackCutsITS->SetEtaRange(-0.9,0.9); + trackCutsITS->SetPtRange(0.15, 1e10); + } + +//Create the task + AliPWG4HighPtQATPConly *taskPWG4QA = new AliPWG4HighPtQATPConly(Form("AliPWG4HighPtQATPConly%d",cuts)); taskPWG4QA->SetCuts(trackCuts); taskPWG4QA->SetCutsITS(trackCutsITS); - taskPWG4QA->SetMaxCosmicAngle(0.008); - - + taskPWG4QA->SetCutType(cuts); + if(!strcmp(prodType, "LHC10e14") || !strcmp(prodType, "PbPb")) taskPWG4QA->SetPtMax(500.); + else taskPWG4QA->SetPtMax(100.); + // E. Create ONLY the output containers for the data produced by the task. // Get and connect other common input/output containers via the manager as below //============================================================================== //------ input data ------ - // AliAnalysisDataContainer *cinput0 = mgr->GetCommonInputContainer(); - TString outputfile = AliAnalysisManager::GetCommonFileName(); - outputfile += ":PWG4_HighPtQATPConly"; - //char *outputfile = "outputAliPWG4HighPtQATPConlyTestTrain.root"; - AliAnalysisDataContainer *cout_hist0 = mgr->CreateContainer("qa_hists", TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); - AliAnalysisDataContainer *cout_hist1 = mgr->CreateContainer("qa_histsTPC", TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); - AliAnalysisDataContainer *cout_hist2 = mgr->CreateContainer("qa_histsITS", TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); - AliAnalysisDataContainer *cout_hist3 = mgr->CreateContainer("qa_histsCosmics", TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); - + TString outputfile = ""; + outputfile = AliAnalysisManager::GetCommonFileName(); + outputfile += Form(":PWG4_HighPtQATPConly%d",cuts); + + AliAnalysisDataContainer *cout_hist0; + AliAnalysisDataContainer *cout_hist1; + AliAnalysisDataContainer *cout_hist2; + + AliAnalysisDataContainer *cout_cuts0; + AliAnalysisDataContainer *cout_cuts1; + + cout_hist0 = mgr->CreateContainer(Form("qa_histsCuts%d",cuts), TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); + cout_hist1 = mgr->CreateContainer(Form("qa_histsTPCCuts%d",cuts), TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); + cout_hist2 = mgr->CreateContainer(Form("qa_histsITSCuts%d",cuts), TList::Class(), AliAnalysisManager::kOutputContainer,outputfile); + + cout_cuts0 = mgr->CreateContainer(Form("qa_trackCuts%d",cuts), AliESDtrackCuts::Class(), AliAnalysisManager::kParamContainer,outputfile); + cout_cuts1 = mgr->CreateContainer(Form("qa_trackCutsITS%d",cuts), AliESDtrackCuts::Class(), AliAnalysisManager::kParamContainer,outputfile); + + //Add task to manager mgr->AddTask(taskPWG4QA); + //Connect input containter to manager mgr->ConnectInput(taskPWG4QA,0,mgr->GetCommonInputContainer()); + + //Connect output containers to manager mgr->ConnectOutput(taskPWG4QA,0,cout_hist0); mgr->ConnectOutput(taskPWG4QA,1,cout_hist1); mgr->ConnectOutput(taskPWG4QA,2,cout_hist2); - mgr->ConnectOutput(taskPWG4QA,3,cout_hist3); + mgr->ConnectOutput(taskPWG4QA,3,cout_cuts0); + mgr->ConnectOutput(taskPWG4QA,4,cout_cuts1); // Return task pointer at the end return taskPWG4QA;