#include "AliFemtoCutMonitorParticleVertPos.h"
#include "AliFemtoModelHiddenInfo.h"
#include "AliFemtoModelGlobalHiddenInfo.h"
#include <TH1D.h>
#include <TH2D.h>
#include <TList.h>
#include <TMath.h>
AliFemtoCutMonitorParticleVertPos::AliFemtoCutMonitorParticleVertPos():
fVertPos(0),
fEtaZ(0),
fRadPos(0),
fEmPointX(0),
fEmPointY(0),
fEmPointZ(0),
fEmPointT(0)
{
fVertPos = new TH2D("VertPos", "Vertex position", 200, -20.0, 20.0, 200, -20.0, 20.0);
fEtaZ = new TH2D("EtaZPos", "Z vs. Eta", 200, -100.0, 100.0, 100, -1.5, 1.5);
fRadPos = new TH1D("RadPos", "Radial position", 200, 0.0, 1.0);
fEmPointX = new TH1D("EmPointX","Emission point x", 400, -200.0, 200.0);
fEmPointY = new TH1D("EmPointY","Emission point y", 400, -200.0, 200.0);
fEmPointZ = new TH1D("EmPointZ","Emission point z", 400, -200.0, 200.0);
fEmPointT = new TH1D("EmPointT","Emission point t", 400, -200.0, 200.0);
}
AliFemtoCutMonitorParticleVertPos::AliFemtoCutMonitorParticleVertPos(const char *aName):
AliFemtoCutMonitor(),
fVertPos(0),
fEtaZ(0),
fRadPos(0),
fEmPointX(0),
fEmPointY(0),
fEmPointZ(0),
fEmPointT(0)
{
char name[200];
snprintf(name, 200, "VertPos%s", aName);
fVertPos = new TH2D(name, "Rapdity vs Pt", 200, -20.0, 20.0, 200, -20.0, 20.0);
snprintf(name, 200, "EtaZPos%s", aName);
fEtaZ = new TH2D(name, "Z vs. Eta", 200, -100.0, 100.0, 100, -1.5, 1.5);
snprintf(name, 200, "RadPos%s", aName);
fRadPos = new TH1D(name, "Radial position", 200, 0.0, 1.0);
snprintf(name, 200, "EmPosX%s", aName);
fEmPointX = new TH1D(name,"Emission point x", 400, -200.0, 200.0);
snprintf(name, 200, "EmPosY%s", aName);
fEmPointY = new TH1D(name,"Emission point y", 400, -200.0, 200.0);
snprintf(name, 200, "EmPosZ%s", aName);
fEmPointZ = new TH1D(name,"Emission point z", 400, -200.0, 200.0);
snprintf(name, 200, "EmPosT%s", aName);
fEmPointT = new TH1D(name,"Emission point t", 400, -200.0, 200.0);
}
AliFemtoCutMonitorParticleVertPos::AliFemtoCutMonitorParticleVertPos(const AliFemtoCutMonitorParticleVertPos &aCut):
AliFemtoCutMonitor(),
fVertPos(0),
fEtaZ(0),
fRadPos(0),
fEmPointX(0),
fEmPointY(0),
fEmPointZ(0),
fEmPointT(0)
{
if (fVertPos) delete fVertPos;
fVertPos = new TH2D(*aCut.fVertPos);
if (fEtaZ) delete fEtaZ;
fEtaZ = new TH2D(*aCut.fEtaZ);
if (fRadPos) delete fRadPos;
fRadPos = new TH1D(*aCut.fRadPos);
if (fEmPointX) delete fEmPointX;
fEmPointX = new TH1D(*aCut.fEmPointX);
if (fEmPointY) delete fEmPointY;
fEmPointY = new TH1D(*aCut.fEmPointY);
if (fEmPointZ) delete fEmPointZ;
fEmPointZ = new TH1D(*aCut.fEmPointZ);
if (fEmPointT) delete fEmPointT;
fEmPointT = new TH1D(*aCut.fEmPointT);
}
AliFemtoCutMonitorParticleVertPos::~AliFemtoCutMonitorParticleVertPos()
{
delete fVertPos;
delete fEtaZ;
delete fRadPos;
delete fEmPointX;
delete fEmPointY;
delete fEmPointZ;
delete fEmPointT;
}
AliFemtoCutMonitorParticleVertPos& AliFemtoCutMonitorParticleVertPos::operator=(const AliFemtoCutMonitorParticleVertPos& aCut)
{
if (this == &aCut)
return *this;
if (fVertPos) delete fVertPos;
fVertPos = new TH2D(*aCut.fVertPos);
if (fEtaZ) delete fEtaZ;
fEtaZ = new TH2D(*aCut.fEtaZ);
if (fRadPos) delete fRadPos;
fRadPos = new TH1D(*aCut.fRadPos);
if (fEmPointX) delete fEmPointX;
fEmPointX = new TH1D(*aCut.fEmPointX);
if (fEmPointY) delete fEmPointY;
fEmPointY = new TH1D(*aCut.fEmPointY);
if (fEmPointZ) delete fEmPointZ;
fEmPointZ = new TH1D(*aCut.fEmPointZ);
if (fEmPointT) delete fEmPointT;
fEmPointT = new TH1D(*aCut.fEmPointT);
return *this;
}
AliFemtoString AliFemtoCutMonitorParticleVertPos::Report(){
string stemp = "*** AliFemtoCutMonitorParticleVertPos report";
AliFemtoString returnThis = stemp;
return returnThis;
}
void AliFemtoCutMonitorParticleVertPos::Fill(const AliFemtoTrack* aTrack)
{
AliFemtoModelGlobalHiddenInfo *hinfo = dynamic_cast<AliFemtoModelGlobalHiddenInfo *>(aTrack->GetHiddenInfo());
if (hinfo) {
float tEta = -TMath::Log(TMath::Tan(hinfo->GetTrueMomentum()->Theta()/2.0));
fVertPos->Fill(hinfo->GetGlobalEmissionPoint()->x(), hinfo->GetGlobalEmissionPoint()->y());
fEtaZ->Fill(hinfo->GetGlobalEmissionPoint()->z(), tEta);
fRadPos->Fill(hinfo->GetGlobalEmissionPoint()->Perp());
}
AliFemtoModelHiddenInfo *hminfo = dynamic_cast<AliFemtoModelHiddenInfo *>(aTrack->GetHiddenInfo());
if (hminfo) {
fEmPointX->Fill(hminfo->GetEmissionPoint()->x());
fEmPointY->Fill(hminfo->GetEmissionPoint()->y());
fEmPointZ->Fill(hminfo->GetEmissionPoint()->z());
fEmPointT->Fill(hminfo->GetEmissionPoint()->t());
}
}
void AliFemtoCutMonitorParticleVertPos::Write()
{
fVertPos->Write();
fEtaZ->Write();
fRadPos->Write();
fEmPointX->Write();
fEmPointY->Write();
fEmPointZ->Write();
fEmPointT->Write();
}
TList *AliFemtoCutMonitorParticleVertPos::GetOutputList()
{
TList *tOutputList = new TList();
tOutputList->Add(fVertPos);
tOutputList->Add(fEtaZ);
tOutputList->Add(fRadPos);
tOutputList->Add(fEmPointX);
tOutputList->Add(fEmPointY);
tOutputList->Add(fEmPointZ);
tOutputList->Add(fEmPointT);
return tOutputList;
}
AliFemtoCutMonitorParticleVertPos.cxx:1 AliFemtoCutMonitorParticleVertPos.cxx:2 AliFemtoCutMonitorParticleVertPos.cxx:3 AliFemtoCutMonitorParticleVertPos.cxx:4 AliFemtoCutMonitorParticleVertPos.cxx:5 AliFemtoCutMonitorParticleVertPos.cxx:6 AliFemtoCutMonitorParticleVertPos.cxx:7 AliFemtoCutMonitorParticleVertPos.cxx:8 AliFemtoCutMonitorParticleVertPos.cxx:9 AliFemtoCutMonitorParticleVertPos.cxx:10 AliFemtoCutMonitorParticleVertPos.cxx:11 AliFemtoCutMonitorParticleVertPos.cxx:12 AliFemtoCutMonitorParticleVertPos.cxx:13 AliFemtoCutMonitorParticleVertPos.cxx:14 AliFemtoCutMonitorParticleVertPos.cxx:15 AliFemtoCutMonitorParticleVertPos.cxx:16 AliFemtoCutMonitorParticleVertPos.cxx:17 AliFemtoCutMonitorParticleVertPos.cxx:18 AliFemtoCutMonitorParticleVertPos.cxx:19 AliFemtoCutMonitorParticleVertPos.cxx:20 AliFemtoCutMonitorParticleVertPos.cxx:21 AliFemtoCutMonitorParticleVertPos.cxx:22 AliFemtoCutMonitorParticleVertPos.cxx:23 AliFemtoCutMonitorParticleVertPos.cxx:24 AliFemtoCutMonitorParticleVertPos.cxx:25 AliFemtoCutMonitorParticleVertPos.cxx:26 AliFemtoCutMonitorParticleVertPos.cxx:27 AliFemtoCutMonitorParticleVertPos.cxx:28 AliFemtoCutMonitorParticleVertPos.cxx:29 AliFemtoCutMonitorParticleVertPos.cxx:30 AliFemtoCutMonitorParticleVertPos.cxx:31 AliFemtoCutMonitorParticleVertPos.cxx:32 AliFemtoCutMonitorParticleVertPos.cxx:33 AliFemtoCutMonitorParticleVertPos.cxx:34 AliFemtoCutMonitorParticleVertPos.cxx:35 AliFemtoCutMonitorParticleVertPos.cxx:36 AliFemtoCutMonitorParticleVertPos.cxx:37 AliFemtoCutMonitorParticleVertPos.cxx:38 AliFemtoCutMonitorParticleVertPos.cxx:39 AliFemtoCutMonitorParticleVertPos.cxx:40 AliFemtoCutMonitorParticleVertPos.cxx:41 AliFemtoCutMonitorParticleVertPos.cxx:42 AliFemtoCutMonitorParticleVertPos.cxx:43 AliFemtoCutMonitorParticleVertPos.cxx:44 AliFemtoCutMonitorParticleVertPos.cxx:45 AliFemtoCutMonitorParticleVertPos.cxx:46 AliFemtoCutMonitorParticleVertPos.cxx:47 AliFemtoCutMonitorParticleVertPos.cxx:48 AliFemtoCutMonitorParticleVertPos.cxx:49 AliFemtoCutMonitorParticleVertPos.cxx:50 AliFemtoCutMonitorParticleVertPos.cxx:51 AliFemtoCutMonitorParticleVertPos.cxx:52 AliFemtoCutMonitorParticleVertPos.cxx:53 AliFemtoCutMonitorParticleVertPos.cxx:54 AliFemtoCutMonitorParticleVertPos.cxx:55 AliFemtoCutMonitorParticleVertPos.cxx:56 AliFemtoCutMonitorParticleVertPos.cxx:57 AliFemtoCutMonitorParticleVertPos.cxx:58 AliFemtoCutMonitorParticleVertPos.cxx:59 AliFemtoCutMonitorParticleVertPos.cxx:60 AliFemtoCutMonitorParticleVertPos.cxx:61 AliFemtoCutMonitorParticleVertPos.cxx:62 AliFemtoCutMonitorParticleVertPos.cxx:63 AliFemtoCutMonitorParticleVertPos.cxx:64 AliFemtoCutMonitorParticleVertPos.cxx:65 AliFemtoCutMonitorParticleVertPos.cxx:66 AliFemtoCutMonitorParticleVertPos.cxx:67 AliFemtoCutMonitorParticleVertPos.cxx:68 AliFemtoCutMonitorParticleVertPos.cxx:69 AliFemtoCutMonitorParticleVertPos.cxx:70 AliFemtoCutMonitorParticleVertPos.cxx:71 AliFemtoCutMonitorParticleVertPos.cxx:72 AliFemtoCutMonitorParticleVertPos.cxx:73 AliFemtoCutMonitorParticleVertPos.cxx:74 AliFemtoCutMonitorParticleVertPos.cxx:75 AliFemtoCutMonitorParticleVertPos.cxx:76 AliFemtoCutMonitorParticleVertPos.cxx:77 AliFemtoCutMonitorParticleVertPos.cxx:78 AliFemtoCutMonitorParticleVertPos.cxx:79 AliFemtoCutMonitorParticleVertPos.cxx:80 AliFemtoCutMonitorParticleVertPos.cxx:81 AliFemtoCutMonitorParticleVertPos.cxx:82 AliFemtoCutMonitorParticleVertPos.cxx:83 AliFemtoCutMonitorParticleVertPos.cxx:84 AliFemtoCutMonitorParticleVertPos.cxx:85 AliFemtoCutMonitorParticleVertPos.cxx:86 AliFemtoCutMonitorParticleVertPos.cxx:87 AliFemtoCutMonitorParticleVertPos.cxx:88 AliFemtoCutMonitorParticleVertPos.cxx:89 AliFemtoCutMonitorParticleVertPos.cxx:90 AliFemtoCutMonitorParticleVertPos.cxx:91 AliFemtoCutMonitorParticleVertPos.cxx:92 AliFemtoCutMonitorParticleVertPos.cxx:93 AliFemtoCutMonitorParticleVertPos.cxx:94 AliFemtoCutMonitorParticleVertPos.cxx:95 AliFemtoCutMonitorParticleVertPos.cxx:96 AliFemtoCutMonitorParticleVertPos.cxx:97 AliFemtoCutMonitorParticleVertPos.cxx:98 AliFemtoCutMonitorParticleVertPos.cxx:99 AliFemtoCutMonitorParticleVertPos.cxx:100 AliFemtoCutMonitorParticleVertPos.cxx:101 AliFemtoCutMonitorParticleVertPos.cxx:102 AliFemtoCutMonitorParticleVertPos.cxx:103 AliFemtoCutMonitorParticleVertPos.cxx:104 AliFemtoCutMonitorParticleVertPos.cxx:105 AliFemtoCutMonitorParticleVertPos.cxx:106 AliFemtoCutMonitorParticleVertPos.cxx:107 AliFemtoCutMonitorParticleVertPos.cxx:108 AliFemtoCutMonitorParticleVertPos.cxx:109 AliFemtoCutMonitorParticleVertPos.cxx:110 AliFemtoCutMonitorParticleVertPos.cxx:111 AliFemtoCutMonitorParticleVertPos.cxx:112 AliFemtoCutMonitorParticleVertPos.cxx:113 AliFemtoCutMonitorParticleVertPos.cxx:114 AliFemtoCutMonitorParticleVertPos.cxx:115 AliFemtoCutMonitorParticleVertPos.cxx:116 AliFemtoCutMonitorParticleVertPos.cxx:117 AliFemtoCutMonitorParticleVertPos.cxx:118 AliFemtoCutMonitorParticleVertPos.cxx:119 AliFemtoCutMonitorParticleVertPos.cxx:120 AliFemtoCutMonitorParticleVertPos.cxx:121 AliFemtoCutMonitorParticleVertPos.cxx:122 AliFemtoCutMonitorParticleVertPos.cxx:123 AliFemtoCutMonitorParticleVertPos.cxx:124 AliFemtoCutMonitorParticleVertPos.cxx:125 AliFemtoCutMonitorParticleVertPos.cxx:126 AliFemtoCutMonitorParticleVertPos.cxx:127 AliFemtoCutMonitorParticleVertPos.cxx:128 AliFemtoCutMonitorParticleVertPos.cxx:129 AliFemtoCutMonitorParticleVertPos.cxx:130 AliFemtoCutMonitorParticleVertPos.cxx:131 AliFemtoCutMonitorParticleVertPos.cxx:132 AliFemtoCutMonitorParticleVertPos.cxx:133 AliFemtoCutMonitorParticleVertPos.cxx:134 AliFemtoCutMonitorParticleVertPos.cxx:135 AliFemtoCutMonitorParticleVertPos.cxx:136 AliFemtoCutMonitorParticleVertPos.cxx:137 AliFemtoCutMonitorParticleVertPos.cxx:138 AliFemtoCutMonitorParticleVertPos.cxx:139 AliFemtoCutMonitorParticleVertPos.cxx:140 AliFemtoCutMonitorParticleVertPos.cxx:141 AliFemtoCutMonitorParticleVertPos.cxx:142 AliFemtoCutMonitorParticleVertPos.cxx:143 AliFemtoCutMonitorParticleVertPos.cxx:144 AliFemtoCutMonitorParticleVertPos.cxx:145 AliFemtoCutMonitorParticleVertPos.cxx:146 AliFemtoCutMonitorParticleVertPos.cxx:147 AliFemtoCutMonitorParticleVertPos.cxx:148 AliFemtoCutMonitorParticleVertPos.cxx:149 AliFemtoCutMonitorParticleVertPos.cxx:150 AliFemtoCutMonitorParticleVertPos.cxx:151 AliFemtoCutMonitorParticleVertPos.cxx:152 AliFemtoCutMonitorParticleVertPos.cxx:153 AliFemtoCutMonitorParticleVertPos.cxx:154 AliFemtoCutMonitorParticleVertPos.cxx:155 AliFemtoCutMonitorParticleVertPos.cxx:156 AliFemtoCutMonitorParticleVertPos.cxx:157 AliFemtoCutMonitorParticleVertPos.cxx:158 AliFemtoCutMonitorParticleVertPos.cxx:159 AliFemtoCutMonitorParticleVertPos.cxx:160 AliFemtoCutMonitorParticleVertPos.cxx:161 AliFemtoCutMonitorParticleVertPos.cxx:162 AliFemtoCutMonitorParticleVertPos.cxx:163 AliFemtoCutMonitorParticleVertPos.cxx:164 AliFemtoCutMonitorParticleVertPos.cxx:165 AliFemtoCutMonitorParticleVertPos.cxx:166 AliFemtoCutMonitorParticleVertPos.cxx:167 AliFemtoCutMonitorParticleVertPos.cxx:168 AliFemtoCutMonitorParticleVertPos.cxx:169 AliFemtoCutMonitorParticleVertPos.cxx:170 AliFemtoCutMonitorParticleVertPos.cxx:171 AliFemtoCutMonitorParticleVertPos.cxx:172 AliFemtoCutMonitorParticleVertPos.cxx:173 AliFemtoCutMonitorParticleVertPos.cxx:174 AliFemtoCutMonitorParticleVertPos.cxx:175 AliFemtoCutMonitorParticleVertPos.cxx:176 AliFemtoCutMonitorParticleVertPos.cxx:177 AliFemtoCutMonitorParticleVertPos.cxx:178