00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include "StHbtMaker/ThCorrFctn/ThNonId3DCF.h"
00017
00018 #ifdef __ROOT__
00019 ClassImp(ThNonId3DCF)
00020 #endif
00021
00022 ThNonId3DCF::ThNonId3DCF(char* title, const int& nbins, const float& QinvLo, const float& QinvHi)
00023 : StHbtThCorrFctn(), mBtMin(0.0), mBtMax(1.0), mUtMin(0.0), mUtMax(1.0)
00024 {
00025
00026 char TitNumOutP[100] = "NumOutP";
00027 strcat(TitNumOutP,title);
00028 mNumOutP = new StHbt1DHisto(TitNumOutP,title,nbins,QinvLo,QinvHi);
00029
00030 char TitDenOutP[100] = "DenOutP";
00031 strcat(TitDenOutP,title);
00032 mDenOutP = new StHbt1DHisto(TitDenOutP,title,nbins,QinvLo,QinvHi);
00033
00034 char TitRatOutP[100] = "RatOutP";
00035 strcat(TitRatOutP,title);
00036 mRatOutP = new StHbt1DHisto(TitRatOutP,title,nbins,QinvLo,QinvHi);
00037
00038 char TitNumOutN[100] = "NumOutN";
00039 strcat(TitNumOutN,title);
00040 mNumOutN = new StHbt1DHisto(TitNumOutN,title,nbins,QinvLo,QinvHi);
00041
00042 char TitDenOutN[100] = "DenOutN";
00043 strcat(TitDenOutN,title);
00044 mDenOutN = new StHbt1DHisto(TitDenOutN,title,nbins,QinvLo,QinvHi);
00045
00046 char TitRatOutN[100] = "RatOutN";
00047 strcat(TitRatOutN,title);
00048 mRatOutN = new StHbt1DHisto(TitRatOutN,title,nbins,QinvLo,QinvHi);
00049
00050 char TitRatOut[100] = "RatOut";
00051 strcat(TitRatOut,title);
00052 mRatOut = new StHbt1DHisto(TitRatOut,title,nbins,QinvLo,QinvHi);
00053
00054 char TitRatOutNOverP[100] = "RatOutNOverP";
00055 strcat(TitRatOutNOverP,title);
00056 mRatOutNOverP = new StHbt1DHisto(TitRatOutNOverP,title,nbins,QinvLo,QinvHi);
00057
00058
00059 char TitNumSideP[100] = "NumSideP";
00060 strcat(TitNumSideP,title);
00061 mNumSideP = new StHbt1DHisto(TitNumSideP,title,nbins,QinvLo,QinvHi);
00062
00063 char TitDenSideP[100] = "DenSideP";
00064 strcat(TitDenSideP,title);
00065 mDenSideP = new StHbt1DHisto(TitDenSideP,title,nbins,QinvLo,QinvHi);
00066
00067 char TitRatSideP[100] = "RatSideP";
00068 strcat(TitRatSideP,title);
00069 mRatSideP = new StHbt1DHisto(TitRatSideP,title,nbins,QinvLo,QinvHi);
00070
00071 char TitNumSideN[100] = "NumSideN";
00072 strcat(TitNumSideN,title);
00073 mNumSideN = new StHbt1DHisto(TitNumSideN,title,nbins,QinvLo,QinvHi);
00074
00075 char TitDenSideN[100] = "DenSideN";
00076 strcat(TitDenSideN,title);
00077 mDenSideN = new StHbt1DHisto(TitDenSideN,title,nbins,QinvLo,QinvHi);
00078
00079 char TitRatSideN[100] = "RatSideN";
00080 strcat(TitRatSideN,title);
00081 mRatSideN = new StHbt1DHisto(TitRatSideN,title,nbins,QinvLo,QinvHi);
00082
00083 char TitRatSide[100] = "RatSide";
00084 strcat(TitRatSide,title);
00085 mRatSide = new StHbt1DHisto(TitRatSide,title,nbins,QinvLo,QinvHi);
00086
00087 char TitRatSideNOverP[100] = "RatSideNOverP";
00088 strcat(TitRatSideNOverP,title);
00089 mRatSideNOverP = new StHbt1DHisto(TitRatSideNOverP,
00090 title,nbins,QinvLo,QinvHi);
00091
00092
00093 char TitNumLongP[100] = "NumLongP";
00094 strcat(TitNumLongP,title);
00095 mNumLongP = new StHbt1DHisto(TitNumLongP,title,nbins,QinvLo,QinvHi);
00096
00097 char TitDenLongP[100] = "DenLongP";
00098 strcat(TitDenLongP,title);
00099 mDenLongP = new StHbt1DHisto(TitDenLongP,title,nbins,QinvLo,QinvHi);
00100
00101 char TitRatLongP[100] = "RatLongP";
00102 strcat(TitRatLongP,title);
00103 mRatLongP = new StHbt1DHisto(TitRatLongP,title,nbins,QinvLo,QinvHi);
00104
00105 char TitNumLongN[100] = "NumLongN";
00106 strcat(TitNumLongN,title);
00107 mNumLongN = new StHbt1DHisto(TitNumLongN,title,nbins,QinvLo,QinvHi);
00108
00109 char TitDenLongN[100] = "DenLongN";
00110 strcat(TitDenLongN,title);
00111 mDenLongN = new StHbt1DHisto(TitDenLongN,title,nbins,QinvLo,QinvHi);
00112
00113 char TitRatLongN[100] = "RatLongN";
00114 strcat(TitRatLongN,title);
00115 mRatLongN = new StHbt1DHisto(TitRatLongN,title,nbins,QinvLo,QinvHi);
00116
00117 char TitRatLong[100] = "RatLong";
00118 strcat(TitRatLong,title);
00119 mRatLong = new StHbt1DHisto(TitRatLong,title,nbins,QinvLo,QinvHi);
00120
00121 char TitRatLongNOverP[100] = "RatLongNOverP";
00122 strcat(TitRatLongNOverP,title);
00123 mRatLongNOverP = new StHbt1DHisto(TitRatLongNOverP,title,nbins,QinvLo,QinvHi);
00124
00125 char tOP[100] = "ProfOutP";
00126 strcat(tOP,title);
00127 mProfOutP = new TProfile(tOP, tOP, nbins, QinvLo, QinvHi);
00128 char tON[100] = "ProfOutN";
00129 strcat(tON,title);
00130 mProfOutN = new TProfile(tON, tON, nbins, QinvLo, QinvHi);
00131 char tSP[100] = "ProfSideP";
00132 strcat(tSP,title);
00133 mProfSideP = new TProfile(tSP, tSP, nbins, QinvLo, QinvHi);
00134 char tSN[100] = "ProfSideN";
00135 strcat(tSN,title);
00136 mProfSideN = new TProfile(tSN, tSN, nbins, QinvLo, QinvHi);
00137 char tLP[100] = "ProfLongP";
00138 strcat(tLP,title);
00139 mProfLongP = new TProfile(tLP, tLP, nbins, QinvLo, QinvHi);
00140 char tLN[100] = "ProfLongN";
00141 strcat(tLN,title);
00142 mProfLongN = new TProfile(tLN, tLN, nbins, QinvLo, QinvHi);
00143
00144 char tDOP[100] = "ProfDenOutP";
00145 strcat(tDOP,title);
00146 mProfDenOutP = new TProfile(tDOP, tDOP, nbins, QinvLo, QinvHi);
00147 char tDON[100] = "ProfDenOutN";
00148 strcat(tDON,title);
00149 mProfDenOutN = new TProfile(tDON, tDON, nbins, QinvLo, QinvHi);
00150 char tDSP[100] = "ProfDenSideP";
00151 strcat(tDSP,title);
00152 mProfDenSideP = new TProfile(tDSP, tDSP, nbins, QinvLo, QinvHi);
00153 char tDSN[100] = "ProfDenSideN";
00154 strcat(tDSN,title);
00155 mProfDenSideN = new TProfile(tDSN, tDSN, nbins, QinvLo, QinvHi);
00156 char tDLP[100] = "ProfDenLongP";
00157 strcat(tDLP,title);
00158 mProfDenLongP = new TProfile(tDLP, tDLP, nbins, QinvLo, QinvHi);
00159 char tDLN[100] = "ProfDenLongN";
00160 strcat(tDLN,title);
00161 mProfDenLongN = new TProfile(tDLN, tDLN, nbins, QinvLo, QinvHi);
00162
00163
00164 mNumOutP->Sumw2();
00165 mDenOutP->Sumw2();
00166 mRatOutP->Sumw2();
00167 mNumOutN->Sumw2();
00168 mDenOutN->Sumw2();
00169 mRatOutN->Sumw2();
00170 mRatOut->Sumw2();
00171 mRatOutNOverP->Sumw2();
00172
00173 mNumSideP->Sumw2();
00174 mDenSideP->Sumw2();
00175 mRatSideP->Sumw2();
00176 mNumSideN->Sumw2();
00177 mDenSideN->Sumw2();
00178 mRatSideN->Sumw2();
00179 mRatSide->Sumw2();
00180 mRatSideNOverP->Sumw2();
00181
00182 mNumLongP->Sumw2();
00183 mDenLongP->Sumw2();
00184 mRatLongP->Sumw2();
00185 mNumLongN->Sumw2();
00186 mDenLongN->Sumw2();
00187 mRatLongN->Sumw2();
00188 mRatLong->Sumw2();
00189 mRatLongNOverP->Sumw2();
00190
00191 float klim = 1.2 * QinvHi;
00192 mHOutKSame = new StHbt2DHisto("HOutKSame","HOutKSame",
00193 100,-klim,klim,nbins,QinvLo,QinvHi);
00194 mHOutKDiff = new StHbt2DHisto("HOutKDiff","HOutKDiff",
00195 100,-klim,klim,nbins,QinvLo,QinvHi);
00196 mHSideKSame = new StHbt2DHisto("HSideKSame","HSideKSame",
00197 100,-klim,klim,nbins,QinvLo,QinvHi);
00198 mHSideKDiff = new StHbt2DHisto("HSideKDiff","HSideKDiff",
00199 100,-klim,klim,nbins,QinvLo,QinvHi);
00200 mHLongKSame = new StHbt2DHisto("HLongKSame","HLongKSame",
00201 100,-klim,klim,nbins,QinvLo,QinvHi);
00202 mHLongKDiff = new StHbt2DHisto("HLongKDiff","HLongKDiff",
00203 100,-klim,klim,nbins,QinvLo,QinvHi);
00204
00205 };
00206
00207 ThNonId3DCF::ThNonId3DCF(const ThNonId3DCF& ThCf) : StHbtThCorrFctn(ThCf)
00208 {
00209 mNumOutP = new StHbt1DHisto(*ThCf.mNumOutP);
00210 mDenOutP = new StHbt1DHisto(*ThCf.mDenOutP);
00211 mRatOutP = new StHbt1DHisto(*ThCf.mRatOutP);
00212 mNumOutN = new StHbt1DHisto(*ThCf.mNumOutN);
00213 mDenOutN = new StHbt1DHisto(*ThCf.mDenOutN);
00214 mRatOutN = new StHbt1DHisto(*ThCf.mRatOutN);
00215 mRatOut = new StHbt1DHisto(*ThCf.mRatOut);
00216 mRatOutNOverP = new StHbt1DHisto(*ThCf.mRatOutNOverP);
00217
00218 mNumSideP = new StHbt1DHisto(*ThCf.mNumSideP);
00219 mDenSideP = new StHbt1DHisto(*ThCf.mDenSideP);
00220 mRatSideP = new StHbt1DHisto(*ThCf.mRatSideP);
00221 mNumSideN = new StHbt1DHisto(*ThCf.mNumSideN);
00222 mDenSideN = new StHbt1DHisto(*ThCf.mDenSideN);
00223 mRatSideN = new StHbt1DHisto(*ThCf.mRatSideN);
00224 mRatSide = new StHbt1DHisto(*ThCf.mRatSide);
00225 mRatSideNOverP = new StHbt1DHisto(*ThCf.mRatSideNOverP);
00226
00227 mNumLongP = new StHbt1DHisto(*ThCf.mNumLongP);
00228 mDenLongP = new StHbt1DHisto(*ThCf.mDenLongP);
00229 mRatLongP = new StHbt1DHisto(*ThCf.mRatLongP);
00230 mNumLongN = new StHbt1DHisto(*ThCf.mNumLongN);
00231 mDenLongN = new StHbt1DHisto(*ThCf.mDenLongN);
00232 mRatLongN = new StHbt1DHisto(*ThCf.mRatLongN);
00233 mRatLong = new StHbt1DHisto(*ThCf.mRatLong);
00234 mRatLongNOverP = new StHbt1DHisto(*ThCf.mRatLongNOverP);
00235
00236 mHOutKSame = new StHbt2DHisto(*ThCf.mHOutKSame);
00237 mHOutKDiff = new StHbt2DHisto(*ThCf.mHOutKDiff);
00238 mHSideKSame = new StHbt2DHisto(*ThCf.mHSideKSame);
00239 mHSideKDiff = new StHbt2DHisto(*ThCf.mHSideKDiff);
00240 mHLongKSame = new StHbt2DHisto(*ThCf.mHLongKSame);
00241 mHLongKDiff = new StHbt2DHisto(*ThCf.mHLongKDiff);
00242
00243 mProfOutP = new TProfile(*ThCf.mProfOutP);
00244 mProfOutN = new TProfile(*ThCf.mProfOutN);
00245 mProfSideP = new TProfile(*ThCf.mProfSideP);
00246 mProfSideN = new TProfile(*ThCf.mProfSideN);
00247 mProfLongP = new TProfile(*ThCf.mProfLongP);
00248 mProfLongN = new TProfile(*ThCf.mProfLongN);
00249
00250 mProfDenOutP = new TProfile(*ThCf.mProfDenOutP);
00251 mProfDenOutN = new TProfile(*ThCf.mProfDenOutN);
00252 mProfDenSideP = new TProfile(*ThCf.mProfDenSideP);
00253 mProfDenSideN = new TProfile(*ThCf.mProfDenSideN);
00254 mProfDenLongP = new TProfile(*ThCf.mProfDenLongP);
00255 mProfDenLongN = new TProfile(*ThCf.mProfDenLongN);
00256 }
00257
00258 ThNonId3DCF::~ThNonId3DCF(){
00259 delete mNumOutP;
00260 delete mDenOutP;
00261 delete mRatOutP;
00262 delete mNumOutN;
00263 delete mDenOutN;
00264 delete mRatOutN;
00265 delete mRatOut;
00266 delete mRatOutNOverP;
00267
00268 delete mNumSideP;
00269 delete mDenSideP;
00270 delete mRatSideP;
00271 delete mNumSideN;
00272 delete mDenSideN;
00273 delete mRatSideN;
00274 delete mRatSide;
00275 delete mRatSideNOverP;
00276
00277 delete mNumLongP;
00278 delete mDenLongP;
00279 delete mRatLongP;
00280 delete mNumLongN;
00281 delete mDenLongN;
00282 delete mRatLongN;
00283 delete mRatLong;
00284 delete mRatLongNOverP;
00285
00286 delete mHOutKSame;
00287 delete mHOutKDiff;
00288 delete mHSideKSame;
00289 delete mHSideKDiff;
00290 delete mHLongKSame;
00291 delete mHLongKDiff;
00292
00293 delete mProfOutP;
00294 delete mProfOutN;
00295 delete mProfSideP;
00296 delete mProfSideN;
00297 delete mProfLongP;
00298 delete mProfLongN;
00299
00300 delete mProfDenOutP;
00301 delete mProfDenOutN;
00302 delete mProfDenSideP;
00303 delete mProfDenSideN;
00304 delete mProfDenLongP;
00305 delete mProfDenLongN;
00306
00307 }
00308
00309
00310
00311 void ThNonId3DCF::AddNum(StHbtThPair* aThPair){
00312 double tKStar = fabs(aThPair->GetMeasPair()->KStar());
00313 double tKOut = aThPair->GetMeasPair()->dKOut();
00314 double tKSide = aThPair->GetMeasPair()->dKSide();
00315 double tKLong = aThPair->GetMeasPair()->dKLong();
00316 double weight = aThPair->GetWeightNum();
00317
00318 if ((aThPair->Betat() < mBtMax) && (aThPair->Betat() > mBtMin) &&
00319 (aThPair->Ut() < mUtMax) && (aThPair->Ut() > mUtMin))
00320 {
00321 if(tKOut>0.){
00322 mNumOutP->Fill(tKStar, weight);
00323 mProfOutP->Fill(tKStar, weight);
00324 }
00325 else{
00326 mNumOutN->Fill(tKStar, weight);
00327 mProfOutN->Fill(tKStar, weight);
00328 }
00329 if(tKSide>0.){
00330 mNumSideP->Fill(tKStar, weight);
00331 mProfSideP->Fill(tKStar, weight);
00332 }
00333 else{
00334 mNumSideN->Fill(tKStar, weight);
00335 mProfSideN->Fill(tKStar, weight);
00336 }
00337 if(tKLong>0.){
00338 mNumLongP->Fill(tKStar, weight);
00339 mProfLongP->Fill(tKStar, weight);
00340 }
00341 else{
00342 mNumLongN->Fill(tKStar, weight);
00343 mProfLongN->Fill(tKStar, weight);
00344 }
00345
00346 mHOutKSame->Fill(tKOut, tKStar, weight);
00347 mHSideKSame->Fill(tKSide, tKStar, weight);
00348 mHLongKSame->Fill(tKLong, tKStar, weight);
00349 }
00350 }
00351
00352 void ThNonId3DCF::AddDen(StHbtThPair* aThPair){
00353 double tKStar = fabs(aThPair->GetMeasPair()->KStar());
00354 double tKOut = aThPair->GetMeasPair()->dKOut();
00355 double tKSide = aThPair->GetMeasPair()->dKSide();
00356 double tKLong = aThPair->GetMeasPair()->dKLong();
00357 double weight = aThPair->GetWeightDen();
00358
00359 if ((aThPair->Betat() < mBtMax) && (aThPair->Betat() > mBtMin) &&
00360 (aThPair->Ut() < mUtMax) && (aThPair->Ut() > mUtMin))
00361 {
00362 if(tKOut>0.){
00363 mDenOutP->Fill(tKStar, weight);
00364 mProfDenOutP->Fill(tKStar, weight);
00365 }
00366 else{
00367 mDenOutN->Fill(tKStar, weight);
00368 mProfDenOutN->Fill(tKStar, weight);
00369 }
00370 if(tKSide>0.){
00371 mDenSideP->Fill(tKStar, weight);
00372 mProfDenSideP->Fill(tKStar, weight);
00373 }
00374 else{
00375 mDenSideN->Fill(tKStar, weight);
00376 mProfDenSideN->Fill(tKStar, weight);
00377 }
00378 if(tKLong>0.){
00379 mDenLongP->Fill(tKStar, weight);
00380 mProfDenLongP->Fill(tKStar, weight);
00381 }
00382 else{
00383 mDenLongN->Fill(tKStar, weight);
00384 mProfDenLongN->Fill(tKStar, weight);
00385 }
00386
00387 mHOutKDiff->Fill(tKOut, tKStar, weight);
00388 mHSideKDiff->Fill(tKSide, tKStar, weight);
00389 mHLongKDiff->Fill(tKLong, tKStar, weight);
00390 }
00391 }
00392
00393 void ThNonId3DCF::Finish(){
00394
00395 double tScale;
00396 int tLastNormBin = mNumOutP->GetNbinsX();
00397 int tFirstNormBin = tLastNormBin/2+1;
00398
00399
00400
00401 mRatOutP->Divide(mNumOutP,mDenOutP,1.0,1.0);
00402 tScale = mRatOutP->Integral(tFirstNormBin,tLastNormBin);
00403 tScale/= (tLastNormBin-tFirstNormBin+1);
00404 mRatOutP->Scale(1./tScale);
00405 mRatOutN->Divide(mNumOutN,mDenOutN,1.0,1.0);
00406 tScale = mRatOutN->Integral(tFirstNormBin,tLastNormBin);
00407 tScale/= (tLastNormBin-tFirstNormBin+1);
00408 mRatOutN->Scale(1./tScale);
00409 mRatOutNOverP->Divide(mRatOutN,mRatOutP,1.0,1.0);
00410
00411 TH1D tHNumOut(*mNumOutP);
00412 tHNumOut.SetName("tHNumOut");
00413 tHNumOut.Add(mNumOutN);
00414 TH1D tHDenOut(*mDenOutP);
00415 tHDenOut.SetName("tHDenOut");
00416 tHDenOut.Add(mDenOutN);
00417 mRatOut->Divide(&tHNumOut,&tHDenOut);
00418 tScale = mRatOut->Integral(tFirstNormBin,tLastNormBin);
00419 tScale/= (tLastNormBin-tFirstNormBin+1);
00420 mRatOut->Scale(1./tScale);
00421
00422
00423
00424 mRatSideP->Divide(mNumSideP,mDenSideP,1.0,1.0);
00425 tScale = mRatSideP->Integral(tFirstNormBin,tLastNormBin);
00426 tScale/= (tLastNormBin-tFirstNormBin+1);
00427 mRatSideP->Scale(1./tScale);
00428 mRatSideN->Divide(mNumSideN,mDenSideN,1.0,1.0);
00429 tScale = mRatSideN->Integral(tFirstNormBin,tLastNormBin);
00430 tScale/= (tLastNormBin-tFirstNormBin+1);
00431 mRatSideN->Scale(1./tScale);
00432 mRatSideNOverP->Divide(mRatSideN,mRatSideP,1.0,1.0);
00433
00434 TH1D tHNumSide(*mNumSideP);
00435 tHNumSide.SetName("tHNumSide");
00436 tHNumSide.Add(mNumSideN);
00437 TH1D tHDenSide(*mDenSideP);
00438 tHDenSide.SetName("tHDenSide");
00439 tHDenSide.Add(mDenSideN);
00440 mRatSide->Divide(&tHNumSide,&tHDenSide);
00441 tScale = mRatSide->Integral(tFirstNormBin,tLastNormBin);
00442 tScale/= (tLastNormBin-tFirstNormBin+1);
00443 mRatSide->Scale(1./tScale);
00444
00445
00446
00447 mRatLongP->Divide(mNumLongP,mDenLongP,1.0,1.0);
00448 tScale = mRatLongP->Integral(tFirstNormBin,tLastNormBin);
00449 tScale/= (tLastNormBin-tFirstNormBin+1);
00450 mRatLongP->Scale(1./tScale);
00451 mRatLongN->Divide(mNumLongN,mDenLongN,1.0,1.0);
00452 tScale = mRatLongN->Integral(tFirstNormBin,tLastNormBin);
00453 tScale/= (tLastNormBin-tFirstNormBin+1);
00454 mRatLongN->Scale(1./tScale);
00455 mRatLongNOverP->Divide(mRatLongN,mRatLongP,1.0,1.0);
00456
00457 TH1D tHNumLong(*mNumLongP);
00458 tHNumLong.SetName("tHNumLong");
00459 tHNumLong.Add(mNumLongN);
00460 TH1D tHDenLong(*mDenLongP);
00461 tHDenLong.SetName("tHDenLong");
00462 tHDenLong.Add(mDenLongN);
00463 mRatLong->Divide(&tHNumLong,&tHDenLong);
00464 tScale = mRatLong->Integral(tFirstNormBin,tLastNormBin);
00465 tScale/= (tLastNormBin-tFirstNormBin+1);
00466 mRatLong->Scale(1./tScale);
00467
00468 }
00469
00470 inline void ThNonId3DCF::Write() {
00471 mNumOutP->Write();
00472 mDenOutP->Write();
00473 mRatOutP->Write();
00474 mNumOutN->Write();
00475 mDenOutN->Write();
00476 mRatOutN->Write();
00477 mRatOut->Write();
00478 mRatOutNOverP->Write();
00479
00480 mNumSideP->Write();
00481 mDenSideP->Write();
00482 mRatSideP->Write();
00483 mNumSideN->Write();
00484 mDenSideN->Write();
00485 mRatSideN->Write();
00486 mRatSide->Write();
00487 mRatSideNOverP->Write();
00488
00489 mNumLongP->Write();
00490 mDenLongP->Write();
00491 mRatLongP->Write();
00492 mNumLongN->Write();
00493 mDenLongN->Write();
00494 mRatLongN->Write();
00495 mRatLong->Write();
00496 mRatLongNOverP->Write();
00497
00498 mHOutKSame->Write();
00499 mHOutKDiff->Write();
00500 mHSideKSame->Write();
00501 mHSideKDiff->Write();
00502 mHLongKSame->Write();
00503 mHLongKDiff->Write();
00504
00505 mProfOutP->Write();
00506 mProfOutN->Write();
00507 mProfSideP->Write();
00508 mProfSideN->Write();
00509 mProfLongP->Write();
00510 mProfLongN->Write();
00511
00512 mProfDenOutP->Write();
00513 mProfDenOutN->Write();
00514 mProfDenSideP->Write();
00515 mProfDenSideN->Write();
00516 mProfDenLongP->Write();
00517 mProfDenLongN->Write();
00518
00519 };
00520
00521 StHbtString ThNonId3DCF::Report(){
00522 string stemp = "Qinv Correlation Function Report:\n";
00523 char ctemp[100];
00524 sprintf(ctemp,"Number of entries in numerator:\t%E\n",mNumOutP->GetEntries());
00525 stemp += ctemp;
00526 sprintf(ctemp,"Number of entries in denominator:\t%E\n",mDenOutP->GetEntries());
00527 stemp += ctemp;
00528 sprintf(ctemp,"Number of entries in ratio:\t%E\n",mRatOutP->GetEntries());
00529 stemp += ctemp;
00530 StHbtString returnThis = stemp;
00531 return returnThis;
00532 }
00533
00534 inline StHbtThCorrFctn* ThNonId3DCF::ThClone() const {return new ThNonId3DCF(*this);}
00535 inline void ThNonId3DCF::SetBtRange(double aBtMin, double aBtMax)
00536 {
00537 mBtMin = aBtMin;
00538 mBtMax = aBtMax;
00539 }
00540 inline void ThNonId3DCF::SetUtRange(double aUtMin, double aUtMax)
00541 {
00542 mUtMin = aUtMin;
00543 mUtMax = aUtMax;
00544 }