#include "AliFemtoCorrFctnMinvMonitor.h"
#include <cstdio>
#include <TMath.h>
#ifdef __ROOT__
ClassImp(AliFemtoCorrFctnMinvMonitor)
#endif
AliFemtoCorrFctnMinvMonitor::AliFemtoCorrFctnMinvMonitor(char* title):
AliFemtoCorrFctn(),
fMinveeFail(0),
fMinvee(0),
fMinv2piFail(0),
fMinv2pi(0),
fMinvppiFail(0),
fMinvppi(0)
{
fMinveeFail = new TH1D(Form("MinveeGamma%s",title), "ee mass assumption GAMMA, minv",1000, 0.0, 10.0);
fMinvee = new TH1D(Form("Minvee%s",title), "ee mass assumption, minv",1000, 0.0, 10.0);
fMinv2piFail = new TH1D(Form("Minv2piResonances%s",title), "pipi mass assumption RESONANCES, minv",1000, 0.0, 10.0);
fMinv2pi = new TH1D(Form("Minv2pi%s",title), "pipi mass assumption, minv",1000, 0.0, 10.0);
fMinvppiFail = new TH1D(Form("MinvppiResonances%s",title), "ppi mass assumption RESONANCES, minv",1000, 0.0, 10.0);
fMinvppi = new TH1D(Form("Minvppi%s",title), "ppi mass assumption, minv",1000, 0.0, 10.0);
}
AliFemtoCorrFctnMinvMonitor::AliFemtoCorrFctnMinvMonitor(const AliFemtoCorrFctnMinvMonitor& aCorrFctn) :
AliFemtoCorrFctn(),
fMinveeFail(0),
fMinvee(0),
fMinv2piFail(0),
fMinv2pi(0),
fMinvppiFail(0),
fMinvppi(0)
{
if (fMinveeFail) delete fMinveeFail;
fMinveeFail = new TH1D(*aCorrFctn.fMinveeFail);
if (fMinvee) delete fMinvee;
fMinvee = new TH1D(*aCorrFctn.fMinvee);
if (fMinv2piFail) delete fMinv2piFail;
fMinv2piFail = new TH1D(*aCorrFctn.fMinv2piFail);
if (fMinv2pi) delete fMinv2pi;
fMinv2pi = new TH1D(*aCorrFctn.fMinv2pi);
if (fMinvppiFail) delete fMinvppiFail;
fMinvppiFail = new TH1D(*aCorrFctn.fMinvppiFail);
if (fMinvppi) delete fMinvppi;
fMinvppi = new TH1D(*aCorrFctn.fMinvppi);
}
AliFemtoCorrFctnMinvMonitor::~AliFemtoCorrFctnMinvMonitor(){
delete fMinveeFail;
delete fMinvee;
delete fMinv2piFail;
delete fMinv2pi;
delete fMinvppiFail;
delete fMinvppi;
}
AliFemtoCorrFctnMinvMonitor& AliFemtoCorrFctnMinvMonitor::operator=(const AliFemtoCorrFctnMinvMonitor& aCorrFctn)
{
if (this == &aCorrFctn)
return *this;
if (fMinveeFail) delete fMinveeFail;
fMinveeFail = new TH1D(*aCorrFctn.fMinveeFail);
if (fMinvee) delete fMinvee;
fMinvee = new TH1D(*aCorrFctn.fMinvee);
if (fMinv2piFail) delete fMinv2piFail;
fMinv2piFail = new TH1D(*aCorrFctn.fMinv2piFail);
if (fMinv2pi) delete fMinv2pi;
fMinv2pi = new TH1D(*aCorrFctn.fMinv2pi);
if (fMinvppiFail) delete fMinvppiFail;
fMinvppiFail = new TH1D(*aCorrFctn.fMinvppiFail);
if (fMinvppi) delete fMinvppi;
fMinvppi = new TH1D(*aCorrFctn.fMinvppi);
return *this;
}
void AliFemtoCorrFctnMinvMonitor::Finish(){
}
AliFemtoString AliFemtoCorrFctnMinvMonitor::Report(){
string stemp = "Mass invariant Monitor Function Report\n";
AliFemtoString returnThis = stemp;
return returnThis;
}
void AliFemtoCorrFctnMinvMonitor::AddRealPair( AliFemtoPair* pair){
double me = 0.000511;
double mPi = 0.13957018;
double mp = 0.938272046;
double mgammamax = 0.04;
double mK0min = 0.00049;
double mK0max = 0.00051;
double mRhomin = 0.000765;
double mRhomax = 0.000785;
double mLmin = 1.095;
double mLmax = 1.135;
if ((pair->Track1()->Track()->Charge() * pair->Track2()->Track()->Charge()) < 0.0) {
double e1 = TMath::Sqrt(me*me + pair->Track1()->Track()->P().Mag2());
double e2 = TMath::Sqrt(me*me + pair->Track2()->Track()->P().Mag2());
double minvGamma = 2*me*me + 2*(e1*e2 -
pair->Track1()->Track()->P().x()*pair->Track2()->Track()->P().x() -
pair->Track1()->Track()->P().y()*pair->Track2()->Track()->P().y() -
pair->Track1()->Track()->P().z()*pair->Track2()->Track()->P().z());
if ( minvGamma < mgammamax )
{
fMinveeFail->Fill(minvGamma);
}
else fMinvee->Fill(minvGamma);
double pi1 = TMath::Sqrt(mPi*mPi + pair->Track1()->Track()->P().Mag2());
double pi2 = TMath::Sqrt(mPi*mPi + pair->Track2()->Track()->P().Mag2());
double p1 = TMath::Sqrt(mp*mp + pair->Track1()->Track()->P().Mag2());
double p2 = TMath::Sqrt(mp*mp + pair->Track2()->Track()->P().Mag2());
double minv2pi = 2*mPi*mPi + 2*(pi1*pi2 -
pair->Track1()->Track()->P().x()*pair->Track2()->Track()->P().x() -
pair->Track1()->Track()->P().y()*pair->Track2()->Track()->P().y() -
pair->Track1()->Track()->P().z()*pair->Track2()->Track()->P().z());
if ( ((minv2pi>mK0min && minv2pi<mK0max) || (minv2pi>mRhomin && minv2pi<mRhomax)) )
{
fMinv2piFail->Fill(minv2pi);
}
else fMinv2pi->Fill(minv2pi);
double minvpPi = 2*mp*mPi + 2*(p1*pi2 -
pair->Track1()->Track()->P().x()*pair->Track2()->Track()->P().x() -
pair->Track1()->Track()->P().y()*pair->Track2()->Track()->P().y() -
pair->Track1()->Track()->P().z()*pair->Track2()->Track()->P().z());
double minvPip = 2*mPi*mp + 2*(pi1*p2 -
pair->Track1()->Track()->P().x()*pair->Track2()->Track()->P().x() -
pair->Track1()->Track()->P().y()*pair->Track2()->Track()->P().y() -
pair->Track1()->Track()->P().z()*pair->Track2()->Track()->P().z());
if( (minvpPi>mLmin) && (minvpPi<mLmax) )
{
fMinvppiFail->Fill(minvpPi);
}
else fMinvppi->Fill(minvpPi);
if( (minvPip>mLmin) && (minvPip<mLmax) )
{
fMinvppiFail->Fill(minvPip);
}
else fMinvppi->Fill(minvPip);
}
}
void AliFemtoCorrFctnMinvMonitor::WriteHistos()
{
fMinveeFail->Write();
fMinvee->Write();
fMinv2piFail->Write();
fMinv2pi->Write();
fMinvppiFail->Write();
fMinvppi->Write();
}
TList* AliFemtoCorrFctnMinvMonitor::GetOutputList()
{
TList *tOutputList = new TList();
tOutputList->Add(fMinveeFail);
tOutputList->Add(fMinvee);
tOutputList->Add(fMinv2piFail);
tOutputList->Add(fMinv2pi);
tOutputList->Add(fMinvppiFail);
tOutputList->Add(fMinvppi);
return tOutputList;
}
AliFemtoCorrFctnMinvMonitor.cxx:1 AliFemtoCorrFctnMinvMonitor.cxx:2 AliFemtoCorrFctnMinvMonitor.cxx:3 AliFemtoCorrFctnMinvMonitor.cxx:4 AliFemtoCorrFctnMinvMonitor.cxx:5 AliFemtoCorrFctnMinvMonitor.cxx:6 AliFemtoCorrFctnMinvMonitor.cxx:7 AliFemtoCorrFctnMinvMonitor.cxx:8 AliFemtoCorrFctnMinvMonitor.cxx:9 AliFemtoCorrFctnMinvMonitor.cxx:10 AliFemtoCorrFctnMinvMonitor.cxx:11 AliFemtoCorrFctnMinvMonitor.cxx:12 AliFemtoCorrFctnMinvMonitor.cxx:13 AliFemtoCorrFctnMinvMonitor.cxx:14 AliFemtoCorrFctnMinvMonitor.cxx:15 AliFemtoCorrFctnMinvMonitor.cxx:16 AliFemtoCorrFctnMinvMonitor.cxx:17 AliFemtoCorrFctnMinvMonitor.cxx:18 AliFemtoCorrFctnMinvMonitor.cxx:19 AliFemtoCorrFctnMinvMonitor.cxx:20 AliFemtoCorrFctnMinvMonitor.cxx:21 AliFemtoCorrFctnMinvMonitor.cxx:22 AliFemtoCorrFctnMinvMonitor.cxx:23 AliFemtoCorrFctnMinvMonitor.cxx:24 AliFemtoCorrFctnMinvMonitor.cxx:25 AliFemtoCorrFctnMinvMonitor.cxx:26 AliFemtoCorrFctnMinvMonitor.cxx:27 AliFemtoCorrFctnMinvMonitor.cxx:28 AliFemtoCorrFctnMinvMonitor.cxx:29 AliFemtoCorrFctnMinvMonitor.cxx:30 AliFemtoCorrFctnMinvMonitor.cxx:31 AliFemtoCorrFctnMinvMonitor.cxx:32 AliFemtoCorrFctnMinvMonitor.cxx:33 AliFemtoCorrFctnMinvMonitor.cxx:34 AliFemtoCorrFctnMinvMonitor.cxx:35 AliFemtoCorrFctnMinvMonitor.cxx:36 AliFemtoCorrFctnMinvMonitor.cxx:37 AliFemtoCorrFctnMinvMonitor.cxx:38 AliFemtoCorrFctnMinvMonitor.cxx:39 AliFemtoCorrFctnMinvMonitor.cxx:40 AliFemtoCorrFctnMinvMonitor.cxx:41 AliFemtoCorrFctnMinvMonitor.cxx:42 AliFemtoCorrFctnMinvMonitor.cxx:43 AliFemtoCorrFctnMinvMonitor.cxx:44 AliFemtoCorrFctnMinvMonitor.cxx:45 AliFemtoCorrFctnMinvMonitor.cxx:46 AliFemtoCorrFctnMinvMonitor.cxx:47 AliFemtoCorrFctnMinvMonitor.cxx:48 AliFemtoCorrFctnMinvMonitor.cxx:49 AliFemtoCorrFctnMinvMonitor.cxx:50 AliFemtoCorrFctnMinvMonitor.cxx:51 AliFemtoCorrFctnMinvMonitor.cxx:52 AliFemtoCorrFctnMinvMonitor.cxx:53 AliFemtoCorrFctnMinvMonitor.cxx:54 AliFemtoCorrFctnMinvMonitor.cxx:55 AliFemtoCorrFctnMinvMonitor.cxx:56 AliFemtoCorrFctnMinvMonitor.cxx:57 AliFemtoCorrFctnMinvMonitor.cxx:58 AliFemtoCorrFctnMinvMonitor.cxx:59 AliFemtoCorrFctnMinvMonitor.cxx:60 AliFemtoCorrFctnMinvMonitor.cxx:61 AliFemtoCorrFctnMinvMonitor.cxx:62 AliFemtoCorrFctnMinvMonitor.cxx:63 AliFemtoCorrFctnMinvMonitor.cxx:64 AliFemtoCorrFctnMinvMonitor.cxx:65 AliFemtoCorrFctnMinvMonitor.cxx:66 AliFemtoCorrFctnMinvMonitor.cxx:67 AliFemtoCorrFctnMinvMonitor.cxx:68 AliFemtoCorrFctnMinvMonitor.cxx:69 AliFemtoCorrFctnMinvMonitor.cxx:70 AliFemtoCorrFctnMinvMonitor.cxx:71 AliFemtoCorrFctnMinvMonitor.cxx:72 AliFemtoCorrFctnMinvMonitor.cxx:73 AliFemtoCorrFctnMinvMonitor.cxx:74 AliFemtoCorrFctnMinvMonitor.cxx:75 AliFemtoCorrFctnMinvMonitor.cxx:76 AliFemtoCorrFctnMinvMonitor.cxx:77 AliFemtoCorrFctnMinvMonitor.cxx:78 AliFemtoCorrFctnMinvMonitor.cxx:79 AliFemtoCorrFctnMinvMonitor.cxx:80 AliFemtoCorrFctnMinvMonitor.cxx:81 AliFemtoCorrFctnMinvMonitor.cxx:82 AliFemtoCorrFctnMinvMonitor.cxx:83 AliFemtoCorrFctnMinvMonitor.cxx:84 AliFemtoCorrFctnMinvMonitor.cxx:85 AliFemtoCorrFctnMinvMonitor.cxx:86 AliFemtoCorrFctnMinvMonitor.cxx:87 AliFemtoCorrFctnMinvMonitor.cxx:88 AliFemtoCorrFctnMinvMonitor.cxx:89 AliFemtoCorrFctnMinvMonitor.cxx:90 AliFemtoCorrFctnMinvMonitor.cxx:91 AliFemtoCorrFctnMinvMonitor.cxx:92 AliFemtoCorrFctnMinvMonitor.cxx:93 AliFemtoCorrFctnMinvMonitor.cxx:94 AliFemtoCorrFctnMinvMonitor.cxx:95 AliFemtoCorrFctnMinvMonitor.cxx:96 AliFemtoCorrFctnMinvMonitor.cxx:97 AliFemtoCorrFctnMinvMonitor.cxx:98 AliFemtoCorrFctnMinvMonitor.cxx:99 AliFemtoCorrFctnMinvMonitor.cxx:100 AliFemtoCorrFctnMinvMonitor.cxx:101 AliFemtoCorrFctnMinvMonitor.cxx:102 AliFemtoCorrFctnMinvMonitor.cxx:103 AliFemtoCorrFctnMinvMonitor.cxx:104 AliFemtoCorrFctnMinvMonitor.cxx:105 AliFemtoCorrFctnMinvMonitor.cxx:106 AliFemtoCorrFctnMinvMonitor.cxx:107 AliFemtoCorrFctnMinvMonitor.cxx:108 AliFemtoCorrFctnMinvMonitor.cxx:109 AliFemtoCorrFctnMinvMonitor.cxx:110 AliFemtoCorrFctnMinvMonitor.cxx:111 AliFemtoCorrFctnMinvMonitor.cxx:112 AliFemtoCorrFctnMinvMonitor.cxx:113 AliFemtoCorrFctnMinvMonitor.cxx:114 AliFemtoCorrFctnMinvMonitor.cxx:115 AliFemtoCorrFctnMinvMonitor.cxx:116 AliFemtoCorrFctnMinvMonitor.cxx:117 AliFemtoCorrFctnMinvMonitor.cxx:118 AliFemtoCorrFctnMinvMonitor.cxx:119 AliFemtoCorrFctnMinvMonitor.cxx:120 AliFemtoCorrFctnMinvMonitor.cxx:121 AliFemtoCorrFctnMinvMonitor.cxx:122 AliFemtoCorrFctnMinvMonitor.cxx:123 AliFemtoCorrFctnMinvMonitor.cxx:124 AliFemtoCorrFctnMinvMonitor.cxx:125 AliFemtoCorrFctnMinvMonitor.cxx:126 AliFemtoCorrFctnMinvMonitor.cxx:127 AliFemtoCorrFctnMinvMonitor.cxx:128 AliFemtoCorrFctnMinvMonitor.cxx:129 AliFemtoCorrFctnMinvMonitor.cxx:130 AliFemtoCorrFctnMinvMonitor.cxx:131 AliFemtoCorrFctnMinvMonitor.cxx:132 AliFemtoCorrFctnMinvMonitor.cxx:133 AliFemtoCorrFctnMinvMonitor.cxx:134 AliFemtoCorrFctnMinvMonitor.cxx:135 AliFemtoCorrFctnMinvMonitor.cxx:136 AliFemtoCorrFctnMinvMonitor.cxx:137 AliFemtoCorrFctnMinvMonitor.cxx:138 AliFemtoCorrFctnMinvMonitor.cxx:139 AliFemtoCorrFctnMinvMonitor.cxx:140 AliFemtoCorrFctnMinvMonitor.cxx:141 AliFemtoCorrFctnMinvMonitor.cxx:142 AliFemtoCorrFctnMinvMonitor.cxx:143 AliFemtoCorrFctnMinvMonitor.cxx:144 AliFemtoCorrFctnMinvMonitor.cxx:145 AliFemtoCorrFctnMinvMonitor.cxx:146 AliFemtoCorrFctnMinvMonitor.cxx:147 AliFemtoCorrFctnMinvMonitor.cxx:148 AliFemtoCorrFctnMinvMonitor.cxx:149 AliFemtoCorrFctnMinvMonitor.cxx:150 AliFemtoCorrFctnMinvMonitor.cxx:151 AliFemtoCorrFctnMinvMonitor.cxx:152 AliFemtoCorrFctnMinvMonitor.cxx:153 AliFemtoCorrFctnMinvMonitor.cxx:154 AliFemtoCorrFctnMinvMonitor.cxx:155 AliFemtoCorrFctnMinvMonitor.cxx:156 AliFemtoCorrFctnMinvMonitor.cxx:157 AliFemtoCorrFctnMinvMonitor.cxx:158 AliFemtoCorrFctnMinvMonitor.cxx:159 AliFemtoCorrFctnMinvMonitor.cxx:160 AliFemtoCorrFctnMinvMonitor.cxx:161 AliFemtoCorrFctnMinvMonitor.cxx:162 AliFemtoCorrFctnMinvMonitor.cxx:163 AliFemtoCorrFctnMinvMonitor.cxx:164 AliFemtoCorrFctnMinvMonitor.cxx:165 AliFemtoCorrFctnMinvMonitor.cxx:166 AliFemtoCorrFctnMinvMonitor.cxx:167 AliFemtoCorrFctnMinvMonitor.cxx:168 AliFemtoCorrFctnMinvMonitor.cxx:169 AliFemtoCorrFctnMinvMonitor.cxx:170 AliFemtoCorrFctnMinvMonitor.cxx:171 AliFemtoCorrFctnMinvMonitor.cxx:172 AliFemtoCorrFctnMinvMonitor.cxx:173 AliFemtoCorrFctnMinvMonitor.cxx:174 AliFemtoCorrFctnMinvMonitor.cxx:175 AliFemtoCorrFctnMinvMonitor.cxx:176 AliFemtoCorrFctnMinvMonitor.cxx:177 AliFemtoCorrFctnMinvMonitor.cxx:178 AliFemtoCorrFctnMinvMonitor.cxx:179 AliFemtoCorrFctnMinvMonitor.cxx:180 AliFemtoCorrFctnMinvMonitor.cxx:181 AliFemtoCorrFctnMinvMonitor.cxx:182 AliFemtoCorrFctnMinvMonitor.cxx:183 AliFemtoCorrFctnMinvMonitor.cxx:184 AliFemtoCorrFctnMinvMonitor.cxx:185 AliFemtoCorrFctnMinvMonitor.cxx:186 AliFemtoCorrFctnMinvMonitor.cxx:187 AliFemtoCorrFctnMinvMonitor.cxx:188 AliFemtoCorrFctnMinvMonitor.cxx:189 AliFemtoCorrFctnMinvMonitor.cxx:190 AliFemtoCorrFctnMinvMonitor.cxx:191 AliFemtoCorrFctnMinvMonitor.cxx:192 AliFemtoCorrFctnMinvMonitor.cxx:193 AliFemtoCorrFctnMinvMonitor.cxx:194 AliFemtoCorrFctnMinvMonitor.cxx:195 AliFemtoCorrFctnMinvMonitor.cxx:196 AliFemtoCorrFctnMinvMonitor.cxx:197 AliFemtoCorrFctnMinvMonitor.cxx:198 AliFemtoCorrFctnMinvMonitor.cxx:199 AliFemtoCorrFctnMinvMonitor.cxx:200 AliFemtoCorrFctnMinvMonitor.cxx:201 AliFemtoCorrFctnMinvMonitor.cxx:202 AliFemtoCorrFctnMinvMonitor.cxx:203 AliFemtoCorrFctnMinvMonitor.cxx:204 AliFemtoCorrFctnMinvMonitor.cxx:205