Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
B
Be_libraries
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vratislav Chudoba
Be_libraries
Commits
2f24fab2
Commit
2f24fab2
authored
Jul 24, 2017
by
Vratislav Chudoba
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Parametrization of EpsilonT(), ... solved
parent
2f96c67e
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
377 additions
and
288 deletions
+377
-288
BeAnalysis.cpp
Be/BeAnalysis.cpp
+282
-94
BeAnalysis.h
Be/BeAnalysis.h
+19
-7
ES1_7590.cxx
macros/BeCorrPRC/ES1_7590.cxx
+76
-187
No files found.
Be/BeAnalysis.cpp
View file @
2f24fab2
...
...
@@ -11,7 +11,7 @@
#include "TCanvas.h"
#include "TGaxis.h"
BeAnalysis
::
BeAnalysis
()
:
che
(
0
),
lowExpFile
(
0
),
upExpFile
(
0
),
spectra
(
1
)
{
BeAnalysis
::
BeAnalysis
()
:
che
(
0
),
lowExpFile
(
0
),
upExpFile
(
0
),
spectra
(
0
)
{
// TODO Auto-generated constructor stub
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
...
...
@@ -22,45 +22,53 @@ BeAnalysis::BeAnalysis() : che(0), lowExpFile(0), upExpFile(0), spectra(1) {
SetCuts
();
SetChainsToDraw
();
noIntervals
=
5
;
epsilonT
=
new
Bool_t
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
epsilonT
[
i
]
=
0
;
}
epsilonT
[
0
]
=
1
;
epsilonT
[
2
]
=
1
;
epsilonT
=
0
;
noIntervals
=
5
;
cosThetaT
=
new
Bool_t
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
cosThetaT
[
i
]
=
0
;
}
cosThetaT
[
0
]
=
1
;
cosThetaT
[
2
]
=
1
;
cosThetaT
[
4
]
=
1
;
epsilonY
=
new
Bool_t
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
epsilonY
[
i
]
=
0
;
}
epsilonY
[
0
]
=
1
;
epsilonY
[
2
]
=
1
;
cosThetaY
=
new
Bool_t
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
cosThetaY
[
i
]
=
0
;
}
cosThetaY
[
0
]
=
1
;
cosThetaY
[
2
]
=
1
;
cosThetaY
[
4
]
=
1
;
thetaAT
=
new
Bool_t
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
thetaAT
[
i
]
=
0
;
}
thetaAT
[
0
]
=
1
;
thetaAT
[
2
]
=
1
;
thetaAT
[
4
]
=
1
;
// epsilonT = new Bool_t[noIntervals];
// for (Int_t i = 0; i < noIntervals; i++) {
// epsilonT[i] = 0;
// }
// epsilonT[0] = 1;
// epsilonT[2] = 1;
cosThetaT
=
0
;
// cosThetaT = new Bool_t[noIntervals];
// for (Int_t i = 0; i < noIntervals; i++) {
// cosThetaT[i] = 0;
// }
// cosThetaT[0] = 1;
// cosThetaT[2] = 1;
// cosThetaT[4] = 1;
epsilonY
=
0
;
// epsilonY = new Bool_t[noIntervals];
// for (Int_t i = 0; i < noIntervals; i++) {
// epsilonY[i] = 0;
// }
// epsilonY[0] = 1;
// epsilonY[2] = 1;
cosThetaY
=
0
;
// cosThetaY = new Bool_t[noIntervals];
// for (Int_t i = 0; i < noIntervals; i++) {
// cosThetaY[i] = 0;
// }
// cosThetaY[0] = 1;
// cosThetaY[2] = 1;
// cosThetaY[4] = 1;
thetaAT
=
0
;
// thetaAT = new Bool_t[noIntervals];
// for (Int_t i = 0; i < noIntervals; i++) {
// thetaAT[i] = 0;
// }
// thetaAT[0] = 1;
// thetaAT[2] = 1;
// thetaAT[4] = 1;
kVerbose
=
1
;
kRangeProportionIn
=
2.0
;
...
...
@@ -297,15 +305,17 @@ void BeAnalysis::SetNoSimEvents(Long64_t *noSimEvents) {
}
void
BeAnalysis
::
SetRatiosGStoEX
()
{
void
BeAnalysis
::
SetRatiosGStoEX
(
TString
sRatioAl0
,
TString
sRatioNoAl0
,
TString
sRatioAl180
,
TString
sRatioNoAl180
,
TString
sRatioAl90
,
TString
sRatioNoAl90
)
{
sRatioAl0
=
"sRatio>0.051 && sRatio<0.101"
;
// TCut sRatioAl0 = "sRatio>0.060 && sRatio<0.110";
sRatioNoAl0
=
"sRatio>0.050 && sRatio<0.100"
;
sRatioAl180
=
"sRatio>0.047 && sRatio<0.097"
;
sRatioNoAl180
=
"sRatio>0.048 && sRatio<0.098"
;
sRatioAl90
=
"sRatio>0.051 && sRatio<0.101"
;
sRatioNoAl90
=
"sRatio>0.051 && sRatio<0.101"
;
//
sRatioAl0 = "sRatio>0.051 && sRatio<0.101";
//
// TCut sRatioAl0 = "sRatio>0.060 && sRatio<0.110";
//
sRatioNoAl0 = "sRatio>0.050 && sRatio<0.100";
//
sRatioAl180 = "sRatio>0.047 && sRatio<0.097";
//
sRatioNoAl180 = "sRatio>0.048 && sRatio<0.098";
//
sRatioAl90 = "sRatio>0.051 && sRatio<0.101";
//
sRatioNoAl90 = "sRatio>0.051 && sRatio<0.101";
sRatio
[
0
]
=
sRatioAl0
;
sRatio
[
1
]
=
sRatioNoAl0
;
...
...
@@ -422,6 +432,10 @@ void BeAnalysis::Spectra() {
void
BeAnalysis
::
EpsilonT
()
{
if
(
!
epsilonT
)
{
Error
(
"BeAnalysis::EpsilonT"
,
"Energy intervals were not set."
);
return
;
}
TCanvas
*
canEpsilonT
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
//energy intervals (canvases)
...
...
@@ -438,9 +452,20 @@ void BeAnalysis::EpsilonT() {
canEpsilonT
[
i
]
->
SetTitle
(
canvasTitle
.
Data
());
canEpsilonT
[
i
]
->
Divide
(
2
,
3
);
// cProtons.Print();
// cQ.Print();
// crBeE[i].Print();
// crAngles.Print();
che
->
SetLineColor
(
kBlack
);
for
(
Int_t
j
=
0
;
j
<
6
;
j
++
)
{
//different files
if
(
!
kChains
[
j
])
continue
;
// sRatio[j].Print();
// cout << sEventsECuts[i][j] << endl;
// cout << eEventsECuts[i][j] << endl;
canEpsilonT
[
i
]
->
cd
(
j
+
1
);
chs
[
j
]
->
SetLineColor
(
kGray
+
1
);
chs
[
j
]
->
SetFillColor
(
kGray
+
1
);
...
...
@@ -452,14 +477,16 @@ void BeAnalysis::EpsilonT() {
drawCommand
.
Form
(
"fTpp/fBeIM>>%s"
,
heName
.
Data
());
che
->
Draw
(
drawCommand
.
Data
(),
cProtons
&&
cQ
&&
cBeE
[
i
]
&&
cAngles
,
"E same"
,
eEventsECuts
[
i
][
j
]);
heeT
[
i
][
j
]
=
(
TH1F
*
)
gPad
->
FindObject
(
heName
.
Data
());
// continue;
hseT
[
i
][
j
]
->
Draw
();
hseT
[
i
][
j
]
->
SetTitle
(
""
);
hseT
[
i
][
j
]
->
SetXTitle
(
"
\\
varepsilon"
);
hseT
[
i
][
j
]
->
GetXaxis
()
->
SetTitleOffset
(
0.95
);
// hseT[i][j]->GetXaxis()->SetTitleOffset(0.95);
// hseT[i][j]->GetXaxis()->SetTitleSize(0.11);
hseT
[
i
][
j
]
->
GetXaxis
()
->
CenterTitle
();
hseT
[
i
][
j
]
->
SetYTitle
(
"counts"
);
hseT
[
i
][
j
]
->
GetYaxis
()
->
SetTitleOffset
(
0.7
);
//
hseT[i][j]->GetYaxis()->SetTitleOffset(0.7);
hseT
[
i
][
j
]
->
GetYaxis
()
->
CenterTitle
();
heeT
[
i
][
j
]
->
Draw
(
"E same"
);
if
(
kAutoRange
)
{
...
...
@@ -484,16 +511,16 @@ void BeAnalysis::EpsilonT() {
hieT
[
i
][
j
]
->
Scale
(
scale
);
//draw an axis on the right side
TGaxis
*
axis
=
new
TGaxis
(
gPad
->
GetUxmax
(),
gPad
->
GetUymin
(),
gPad
->
GetUxmax
(),
gPad
->
GetUymax
(),
0
,
rightmax
,
510
,
"+L"
);
axis
->
SetLineColor
(
kRed
);
axis
->
SetLabelColor
(
kRed
);
axis
->
Draw
();
//
TGaxis *axis = new TGaxis(gPad->GetUxmax(),gPad->GetUymin(),
//
gPad->GetUxmax(), gPad->GetUymax(),0,rightmax,510,"+L");
//
axis->SetLineColor(kRed);
//
axis->SetLabelColor(kRed);
//
axis->Draw();
canEpsilonT
[
i
]
->
Update
();
if
(
kVerbose
)
{
Info
(
"
sfAngInt_epsilonT.cxx
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
Info
(
"
BeAnalysis::EpsilonT
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
i
,
j
,
heeT
[
i
][
j
]
->
Integral
(
0
,
heeT
[
i
][
j
]
->
GetNbinsX
()),
hseT
[
i
][
j
]
->
Integral
(
0
,
hseT
[
i
][
j
]
->
GetNbinsX
()),
heeT
[
i
][
j
]
->
Integral
(
0
,
heeT
[
i
][
j
]
->
GetNbinsX
())
/
hseT
[
i
][
j
]
->
Integral
(
0
,
hseT
[
i
][
j
]
->
GetNbinsX
())
);
...
...
@@ -518,6 +545,11 @@ void BeAnalysis::EpsilonT() {
void
BeAnalysis
::
CosThetaTk
()
{
if
(
!
cosThetaT
)
{
Error
(
"BeAnalysis::CosThetaTk"
,
"Energy intervals were not set."
);
return
;
}
TCanvas
*
cThetaT
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
//energy intervals (canvases)
...
...
@@ -583,7 +615,7 @@ void BeAnalysis::CosThetaTk() {
cThetaT
[
i
]
->
Update
();
if
(
kVerbose
)
{
Info
(
"
sfAngInt_cosThetaTk.cxx
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
Info
(
"
BeAnalysis::CosThetaTk
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
i
,
j
,
hecoskT
[
i
][
j
]
->
Integral
(
0
,
hecoskT
[
i
][
j
]
->
GetNbinsX
()),
hscoskT
[
i
][
j
]
->
Integral
(
0
,
hscoskT
[
i
][
j
]
->
GetNbinsX
()),
hecoskT
[
i
][
j
]
->
Integral
(
0
,
hecoskT
[
i
][
j
]
->
GetNbinsX
())
/
hscoskT
[
i
][
j
]
->
Integral
(
0
,
hscoskT
[
i
][
j
]
->
GetNbinsX
())
);
...
...
@@ -606,6 +638,11 @@ void BeAnalysis::CosThetaTk() {
void
BeAnalysis
::
EpsilonY
()
{
if
(
!
epsilonY
)
{
Error
(
"BeAnalysis::EpsilonY"
,
"Energy intervals were not set."
);
return
;
}
TCanvas
*
canEpsilonY
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
//energy intervals (canvases)
...
...
@@ -668,7 +705,7 @@ void BeAnalysis::EpsilonY() {
canEpsilonY
[
i
]
->
Update
();
if
(
kVerbose
)
{
Info
(
"
sfAngInt_epsilonY.cxx
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
Info
(
"
BeAnalysis::EpsilonY
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
i
,
j
,
heeY
[
i
][
j
]
->
Integral
(
0
,
heeY
[
i
][
j
]
->
GetNbinsX
()),
hseY
[
i
][
j
]
->
Integral
(
0
,
hseY
[
i
][
j
]
->
GetNbinsX
()),
heeY
[
i
][
j
]
->
Integral
(
0
,
heeY
[
i
][
j
]
->
GetNbinsX
())
/
hseY
[
i
][
j
]
->
Integral
(
0
,
hseY
[
i
][
j
]
->
GetNbinsX
())
);
...
...
@@ -693,6 +730,11 @@ void BeAnalysis::EpsilonY() {
void
BeAnalysis
::
CosThetaYk
()
{
if
(
!
cosThetaY
)
{
Error
(
"BeAnalysis::CosThetaYk"
,
"Energy intervals were not set."
);
return
;
}
TCanvas
*
cThetaY
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
//energy intervals (canvases)
...
...
@@ -756,7 +798,7 @@ void BeAnalysis::CosThetaYk() {
cThetaY
[
i
]
->
Update
();
if
(
kVerbose
)
{
Info
(
"
sfAngInt_cosThetaYk.cxx
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
Info
(
"
BeAnalysis::CosThetaYk
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
i
,
j
,
hecoskY
[
i
][
j
]
->
Integral
(
0
,
hecoskY
[
i
][
j
]
->
GetNbinsX
()),
hscoskY
[
i
][
j
]
->
Integral
(
0
,
hscoskY
[
i
][
j
]
->
GetNbinsX
()),
hecoskY
[
i
][
j
]
->
Integral
(
0
,
hecoskY
[
i
][
j
]
->
GetNbinsX
())
/
hscoskY
[
i
][
j
]
->
Integral
(
0
,
hscoskY
[
i
][
j
]
->
GetNbinsX
())
);
...
...
@@ -781,6 +823,11 @@ void BeAnalysis::CosThetaYk() {
void
BeAnalysis
::
ThetaAT
()
{
if
(
!
thetaAT
)
{
Error
(
"BeAnalysis::ThetaAT"
,
"Energy intervals were not set."
);
return
;
}
TCanvas
*
cThetaAT
[
noIntervals
];
for
(
Int_t
i
=
0
;
i
<
noIntervals
;
i
++
)
{
//energy intervals (canvases)
...
...
@@ -853,7 +900,7 @@ void BeAnalysis::ThetaAT() {
cThetaAT
[
i
]
->
Update
();
if
(
kVerbose
)
{
Info
(
"
sfAngInt_thetaAT.cxx
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
Info
(
"
BeAnalysis::ThetaAT
"
,
"cut%d; case%d: %3.1f (exp)/ %3.1f (sim) = %3.3f"
,
i
,
j
,
hethetaAT
[
i
][
j
]
->
Integral
(
0
,
hethetaAT
[
i
][
j
]
->
GetNbinsX
()),
hsthetaAT
[
i
][
j
]
->
Integral
(
0
,
hsthetaAT
[
i
][
j
]
->
GetNbinsX
()),
hethetaAT
[
i
][
j
]
->
Integral
(
0
,
hethetaAT
[
i
][
j
]
->
GetNbinsX
())
/
hsthetaAT
[
i
][
j
]
->
Integral
(
0
,
hsthetaAT
[
i
][
j
]
->
GetNbinsX
())
);
...
...
@@ -872,54 +919,101 @@ void BeAnalysis::ThetaAT() {
}
void
BeAnalysis
::
ExpEventsECuts
()
{
eEventsECuts
[
0
][
0
]
=
3950000
;
eEventsECuts
[
0
][
1
]
=
3950000
;
eEventsECuts
[
0
][
2
]
=
3800000
;
eEventsECuts
[
0
][
3
]
=
3850000
;
eEventsECuts
[
0
][
4
]
=
3950000
;
eEventsECuts
[
0
][
5
]
=
3900000
;
//void BeAnalysis::ExpEventsECuts(Long64_t **noExpEvents) {
//void BeAnalysis::ExpEventsECuts(Int_t (&noExpEvents)[5][6]) {
//void BeAnalysis::ExpEventsECuts(Int_t (*noExpEvents)[5][6]) {
void
BeAnalysis
::
ExpEventsECuts
(
Long64_t
noExpEvents
[
5
][
6
])
{
eEventsECuts
[
1
][
0
]
=
eMaxEvents
;
eEventsECuts
[
1
][
1
]
=
eMaxEvents
;
eEventsECuts
[
1
][
2
]
=
4100000
;
eEventsECuts
[
1
][
3
]
=
eMaxEvents
;
eEventsECuts
[
1
][
4
]
=
eMaxEvents
;
eEventsECuts
[
1
][
5
]
=
eMaxEvents
;
eEventsECuts
[
2
][
0
]
=
3050000
;
eEventsECuts
[
2
][
1
]
=
3150000
;
eEventsECuts
[
2
][
2
]
=
3200000
;
eEventsECuts
[
2
][
3
]
=
3200000
;
eEventsECuts
[
2
][
4
]
=
3250000
;
eEventsECuts
[
2
][
5
]
=
3350000
;
// eMaxEvents = 5000000;
if
(
!
noExpEvents
)
{
for
(
Int_t
i
=
0
;
i
<
5
;
i
++
)
{
for
(
Int_t
j
=
0
;
j
<
6
;
j
++
)
{
eEventsECuts
[
i
][
j
]
=
eMaxEvents
;
}
}
Warning
(
"BeAnalysis::ExpEventsECuts"
,
"Default numbers of experimental events were set."
);
return
;
}
for
(
Int_t
i
=
0
;
i
<
5
;
i
++
)
{
for
(
Int_t
j
=
0
;
j
<
6
;
j
++
)
{
eEventsECuts
[
i
][
j
]
=
(
Long64_t
)
noExpEvents
[
i
][
j
];
}
}
return
;
eEventsECuts
[
3
][
0
]
=
3850000
;
eEventsECuts
[
3
][
1
]
=
3950000
;
eEventsECuts
[
3
][
2
]
=
3900000
;
eEventsECuts
[
3
][
3
]
=
3900000
;
eEventsECuts
[
3
][
4
]
=
4000000
;
eEventsECuts
[
3
][
5
]
=
4000000
;
eEventsECuts
[
4
][
0
]
=
4100000
;
eEventsECuts
[
4
][
1
]
=
4100000
;
eEventsECuts
[
4
][
2
]
=
4000000
;
eEventsECuts
[
4
][
3
]
=
4100000
;
eEventsECuts
[
4
][
4
]
=
eMaxEvents
;
eEventsECuts
[
4
][
5
]
=
eMaxEvents
;
// eEventsECuts[0][0] = 3950000;
// eEventsECuts[0][1] = 3950000;
// eEventsECuts[0][2] = 3800000;
// eEventsECuts[0][3] = 3850000;
// eEventsECuts[0][4] = 3950000;
// eEventsECuts[0][5] = 3900000;
//
// eEventsECuts[1][0] = eMaxEvents;
// eEventsECuts[1][1] = eMaxEvents;
// eEventsECuts[1][2] = 4100000;
// eEventsECuts[1][3] = eMaxEvents;
// eEventsECuts[1][4] = eMaxEvents;
// eEventsECuts[1][5] = eMaxEvents;
//
// eEventsECuts[2][0] = 3050000;
// eEventsECuts[2][1] = 3150000;
// eEventsECuts[2][2] = 3200000;
// eEventsECuts[2][3] = 3200000;
// eEventsECuts[2][4] = 3250000;
// eEventsECuts[2][5] = 3350000;
//
// eEventsECuts[3][0] = 3850000;
// eEventsECuts[3][1] = 3950000;
// eEventsECuts[3][2] = 3900000;
// eEventsECuts[3][3] = 3900000;
// eEventsECuts[3][4] = 4000000;
// eEventsECuts[3][5] = 4000000;
//
// eEventsECuts[4][0] = 4100000;
// eEventsECuts[4][1] = 4100000;
// eEventsECuts[4][2] = 4000000;
// eEventsECuts[4][3] = 4100000;
// eEventsECuts[4][4] = eMaxEvents;
// eEventsECuts[4][5] = eMaxEvents;
}
void
BeAnalysis
::
SimEventsECuts
()
{
void
BeAnalysis
::
SimEventsECuts
(
Long64_t
noSimEvents
[
5
][
6
])
{
// sMaxEvents;
if
(
!
noSimEvents
)
{
for
(
Int_t
i
=
0
;
i
<
5
;
i
++
)
{
for
(
Int_t
j
=
0
;
j
<
6
;
j
++
)
{
sEventsECuts
[
i
][
j
]
=
sMaxEvents
;
}
}
Warning
(
"BeAnalysis::SimEventsECuts"
,
"Default numbers of experimental events were set."
);
return
;
}
for
(
Int_t
i
=
0
;
i
<
5
;
i
++
)
{
for
(
Int_t
j
=
0
;
j
<
6
;
j
++
)
{
sEventsECuts
[
i
][
j
]
=
noSimEvents
[
i
][
j
];
}
}
return
;
sEventsECuts
[
1
][
1
]
=
2630000
;
sEventsECuts
[
1
][
4
]
=
2660000
;
sEventsECuts
[
1
][
5
]
=
2660000
;
// for (Int_t i = 0; i < 5; i++) {
// for (Int_t j = 0; j < 6; j++) {
// sEventsECuts[i][j] = sMaxEvents;
// }
// }
//
// sEventsECuts[1][1] = 2630000;
// sEventsECuts[1][4] = 2660000;
// sEventsECuts[1][5] = 2660000;
}
...
...
@@ -996,6 +1090,100 @@ void BeAnalysis::SetNoSimFiles(Int_t* minFnumber, Int_t* maxFnumber) {
return
;
}
void
BeAnalysis
::
SetEpsilonTintervals
(
Bool_t
intervals
[
6
])
{
epsilonT
=
new
Bool_t
[
noIntervals
];
if
(
!
intervals
)
{
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
epsilonT
[
i
]
=
1
;
}
Warning
(
"BeAnalysis::SetEpsilonTintervals"
,
"All intervals epsilonT will be drawn"
);
return
;
}
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
// cout << intervals[i] << endl;
epsilonT
[
i
]
=
intervals
[
i
];
}
return
;
}
void
BeAnalysis
::
SetCosThetaTkIntervals
(
Bool_t
intervals
[
6
])
{
cosThetaT
=
new
Bool_t
[
noIntervals
];
if
(
!
intervals
)
{
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
cosThetaT
[
i
]
=
1
;
}
Warning
(
"BeAnalysis::SetCosThetaTkIntervals"
,
"All intervals epsilonT will be drawn"
);
return
;
}
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
// cout << intervals[i] << endl;
cosThetaT
[
i
]
=
intervals
[
i
];
}
return
;
}
void
BeAnalysis
::
SetEpsilonYintervals
(
Bool_t
intervals
[
6
])
{
epsilonY
=
new
Bool_t
[
noIntervals
];
if
(
!
intervals
)
{
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
epsilonY
[
i
]
=
1
;
}
Warning
(
"BeAnalysis::SetEpsilonYintervals"
,
"All intervals epsilonT will be drawn"
);
return
;
}
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
// cout << intervals[i] << endl;
epsilonY
[
i
]
=
intervals
[
i
];
}
return
;
}
void
BeAnalysis
::
SetCosThetaYkIntervals
(
Bool_t
intervals
[
6
])
{
cosThetaY
=
new
Bool_t
[
noIntervals
];
if
(
!
intervals
)
{
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
cosThetaY
[
i
]
=
1
;
}
Warning
(
"BeAnalysis::SetCosThetaYkIntervals"
,
"All intervals epsilonT will be drawn"
);
return
;
}
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
// cout << intervals[i] << endl;
cosThetaY
[
i
]
=
intervals
[
i
];
}
return
;
}
void
BeAnalysis
::
SetThetaATintervals
(
Bool_t
intervals
[
6
])
{
thetaAT
=
new
Bool_t
[
noIntervals
];
if
(
!
intervals
)
{
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
thetaAT
[
i
]
=
1
;
}
Warning
(
"BeAnalysis::SetThetaATintervals"
,
"All intervals epsilonT will be drawn"
);
return
;
}
for
(
Int_t
i
=
0
;
i
<
6
;
i
++
)
{
// cout << intervals[i] << endl;
thetaAT
[
i
]
=
intervals
[
i
];
}
return
;
}
void
BeAnalysis
::
SaveFigures
(
TCanvas
*
canvas
,
TString
variable
,
Int_t
interval
)
{
if
(
!
kSaveFigures
)
return
;
...
...
Be/BeAnalysis.h
View file @
2f24fab2
...
...
@@ -50,11 +50,22 @@ public:
void
SetNoExpEvents
(
Long64_t
*
noExpEvents
=
0
);
void
SetNoSimEvents
(
Long64_t
*
noSimEvents
=
0
);
void
SetRatiosGStoEX
();
void
ExpEventsECuts
();
void
SimEventsECuts
();
void
SetRatiosGStoEX
(
TString
sRatioAl0
,
TString
sRatioNoAl0
,
TString
sRatioAl180
,
TString
sRatioNoAl180
,
TString
sRatioAl90
,
TString
sRatioNoAl90
);
// void ExpEventsECuts(Long64_t **noExpEvents = 0);
// void ExpEventsECuts(Int_t (&noExpEvents)[5][6]);
// void ExpEventsECuts(Int_t (*noExpEvents)[5][6]);
void
ExpEventsECuts
(
Long64_t
noExpEvents
[
5
][
6
]
=
0
);
void
SimEventsECuts
(
Long64_t
noSimEvents
[
5
][
6
]
=
0
);
void
EpsilonTRange
();
void
SetEpsilonTintervals
(
Bool_t
intervals
[
6
]
=
0
);
void
SetCosThetaTkIntervals
(
Bool_t
intervals
[
6
]
=
0
);
void
SetEpsilonYintervals
(
Bool_t
intervals
[
6
]
=
0
);
void
SetCosThetaYkIntervals
(
Bool_t
intervals
[
6
]
=
0
);
void
SetThetaATintervals
(
Bool_t
intervals
[
6
]
=
0
);
void
Spectra
();
void
EpsilonT
();
void
CosThetaTk
();
...
...
@@ -66,10 +77,11 @@ public:
//
private
:
//
private:
TChain
*
che
;
//chain with experimental trees
TChain
*
chs
[
6
];
//array of chains with simulation trees
TTree
*
ti
[
6
];
//array of chains with simulation input
private
:
Int_t
lowExpFile
;
Int_t
upExpFile
;
...
...
@@ -125,9 +137,9 @@ private:
TCut
sRatioNoAl90
;
TCut
sRatio
[
6
];
Long64_t
eEventsECuts
[
5
][
6
];
Long64_t
sEventsECuts
[
5
][
6
];
Double_t
eTRange
[
5
][
6
];
Long64_t
eEventsECuts
[
5
][
6
];
//!
Long64_t
sEventsECuts
[
5
][
6
];
//!
Double_t
eTRange
[
5
][
6
];
//!
//cuts
TCut
cBe20
;
...
...
macros/BeCorrPRC/ES1_7590.cxx
View file @
2f24fab2
...
...
@@ -11,7 +11,16 @@ void ES1_7590()
ana
.
SetCMAngularRange
(
75
,
90
);
ana
.
SetChainsToDraw
(
0
,
1
,
1
,
0
,
0
,
0
);
ana
.
SetChainsToDraw
(
1
,
1
,
1
,
1
,
0
,
0
);
// ana.SetChainsToDraw();
Bool_t
epsilonT
[
6
]
=
{
0
,
0
,
1
,
0
,
0
};
Bool_t
cosThetaT
[
6
]
=
{
0
,
1
,
0
,
0
,
0
};
Bool_t
epsilonY
[
6
]
=
{
0
,
0
,
0
,
1
,
0
};
Bool_t
cosThetaY
[
6
]
=
{
0
,
1
,
0
,
0
,
0
};
Bool_t
thetaAT
[
6
]
=
{
0
,
0
,
0
,
0
,
0
};
ana
.
SetExpChain
(
"../../../be/rootdata/correlations/v5_exp/Be."
,
0
,
40
);
...
...
@@ -24,9 +33,9 @@ void ES1_7590()
cout
<<
sEvents
<<
endl
;
ana
.
SetNoSimEvents
(
sEvents
);
const
Int_t
lowSimFile
[
6
]
=
{
0
,
0
,
0
,
0
,
0
,
0
};
//
const
Int_t upSimFile[6] = {5, 5, 5, 5, 5, 5};
const
Int_t
upSimFile
[
6
]
=
{
12
,
12
,
12
,
12
,
12
,
12
};
Int_t
lowSimFile
[
6
]
=
{
0
,
0
,
0
,
0
,
0
,
0
};
// Int_t upSimFile[6] = {5, 5, 5, 5, 5, 5};
Int_t
upSimFile
[
6
]
=
{
12
,
12
,
12
,
12
,
12
,
12
};
ana
.
SetNoSimFiles
(
lowSimFile
,
upSimFile
);
ana
.
SetSimChains
(
"../../../be/rootdata/correlations/v5_7590/Sim_mix_br_al_0_65-100_"
,
"../../../be/rootdata/correlations/v5_7590/Sim_mix_br_noal_0_65-100_"
,
...
...
@@ -49,70 +58,76 @@ void ES1_7590()
ana
.
Spectra
();
ana
.
EpsilonT
();
sw
.
Print
();
sw
.
Continue
();
ana
.
SetRatiosGStoEX
(
"sRatio>0.075 && sRatio<0.125"
,
"sRatio>0.076 && sRatio<0.126"
,
"sRatio>0.070 && sRatio<0.120"
,
"sRatio>0.070 && sRatio<0.120"
,
"sRatio>0.075 && sRatio<0.125"
,
"sRatio>0.076 && sRatio<0.126"
);
ana
.
SetCuts
();
return
;
Long64_t
eEventsECuts
[
5
][
6
]
=
{
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
};
// ana.ExpEventsECuts();
ana
.
ExpEventsECuts
(
eEventsECuts
);
const
Long64_t
sMaxEvents
=
3000000
;
Long64_t
sEventsECuts
[
5
][
6
]
=
{
/*sMaxEvents, sMaxEvents, sMaxEvents, sMaxEvents, sMaxEvents, sMaxEvents,*/
2020000
,
2040000
,
2130000
,
2080000
,
2060000
,
2080000
,
2000000
,
2020000
,
2000000
,
2010000
,
1990000
,
1970000
,
2320000
,
2300000
,
2340000
,
2310000
,
2300000
,
2290000
,
2060000
,
2070000
,
2110000
,
2110000
,
2070000
,
2060000
,
2050000
,
2050000
,
2110000
,
2110000
,
2050000
,
2050000
};
ana
.
SimEventsECuts
(
sEventsECuts
);
TCut
sRatioAl0
=
"sRatio>0.075 && sRatio<0.125"
;
TCut
sRatioNoAl0
=
"sRatio>0.076 && sRatio<0.126"
;
TCut
sRatioAl180
=
"sRatio>0.070 && sRatio<0.120"
;
// TCut sRatioAl180 = "sRatio>0.050 && sRatio<0.100";
TCut
sRatioNoAl180
=
"sRatio>0.070 && sRatio<0.120"
;
// TCut sRatioNoAl180 = "sRatio>0.010 && sRatio<0.150";
TCut
sRatioAl90
=
"sRatio>0.075 && sRatio<0.125"
;
TCut
sRatioNoAl90
=
"sRatio>0.076 && sRatio<0.126"
;
TCut
sRatio
[
6
]
=
{
sRatioAl0
,
sRatioNoAl0
,
sRatioAl180
,
sRatioNoAl180
,
sRatioAl90
,
sRatioNoAl90
};
ana
.
SetRangeProportion
(
1.1
,
1
);
// const Double_t eTRange[5][6] = {280, 280, 280, 280, 280, 280,
// 350, 350, 350, 350, 350, 350,
// 350, 350, 350, 350, 350, 350,
// 630, 630, 630, 630, 630, 630,
// 700, 700, 700, 700, 700, 700};
// const Int_t kMinAngle = 75;
// const Int_t kMaxAngle = 90;
ana
.
SetEpsilonTintervals
(
epsilonT
);
// ana.SetEpsilonTintervals();
ana
.
EpsilonT
();
// ana.SetCosThetaTkIntervals(cosThetaT);
// ana.CosThetaTk();
//
// ana.SetEpsilonYintervals(epsilonY);
// ana.EpsilonY();
//
// const Int_t lowfile = 0;
// const Int_t upfile = 40;
// const Int_t lowSimFile[6] = {0, 0, 0, 0, 0, 0};
//// const Int_t upSimFile[6] = {5, 5, 5, 5, 5, 5};
// const Int_t upSimFile[6] = {12, 12, 12, 12, 12, 12};
const
Bool_t
shapeFit
=
0
;
// TCut cAngles = "fBeThetaCM1>75*TMath::DegToRad() && fBeThetaCM1<90*TMath::DegToRad()";
// TCut crAngles = "f6BeThetaCM1>75*TMath::DegToRad() && f6BeThetaCM1<90*TMath::DegToRad()";
//simulations
//aligned, 0 degrees
//// TString chainAl0name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_al_0_65-100_";
// TString inputTreeAl0name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_al_0_65-100_000.root";
// //isotropic, 0 degrees
//// TString chainNoAl0name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_noal_0_65-100_";
// TString inputTreeNoAl0name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_noal_0_65-100_000.root";
// //aligned, 180 degrees
//// TString chainAl180name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_al_180_65-100_";
// TString inputTreeAl180name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_al_180_65-100_000.root";
// //isotropic, 180 degrees
//// TString chainNoAl180name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_noal_180_65-100_";
// TString inputTreeNoAl180name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_noal_180_65-100_000.root";
// //isotropic, 90 degrees
//// TString chainAl90name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_al_90_65-100_";
// TString inputTreeAl90name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_al_90_65-100_000.root";
// //isotropic, 90 degrees
//// TString chainNoAl90name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_noal_90_65-100_";
// TString inputTreeNoAl90name = "/data2/be/rootdata/correlations/v5_7590/Sim_mix_br_noal_90_65-100_000.root";
//open tree with MC simulations
// gROOT->ProcessLine(".x corr_templates/sfAngInt_opensimtree.cxx");
// TChain *che = BeWork::OpenChain("/data2/be/rootdata/correlations/v5_exp/Be.",
// lowfile, upfile, "beonly"); //original file
// Info("statesRatioFitting.cxx", "%d events in chain \"%s\" containing experimental data",
// che->GetEntries(), che->GetName());
// gROOT->ProcessLine(".x corr_templates/sfAngInt_cuts.cxx");
//auxiliary strings
TString
drawCommand
;
TString
hsName
;
TString
heName
;
TString
hiName
;
// ana.SetCosThetaYkIntervals(cosThetaY);
// ana.CosThetaYk();
ana
.
SetThetaATintervals
(
thetaAT
);
// ana.SetThetaATintervals();
ana
.
ThetaAT
();
sw
.
Print
();
sw
.
Continue
();
Info
(
"ES1_7590.cxx"
,
"Finished."
);
return
;
const
Bool_t
savePictures
=
0
;
TString
ppath
=
"pictures/correlations/v5_7590/"
;
TString
configuration
=
"v5_7590"
;
...
...
@@ -123,91 +138,13 @@ void ES1_7590()
// TString pictFormat = ".jpg";
const
Bool_t
kVerbose
=
1
;
const
Bool_t
kAutoRange
=
1
;
// const Float_t kRangeProportion = 1.2;
const
Float_t
kRangeProportion
=
1.1
;
// const Float_t kRangeProportionIn = 1.1;
const
Float_t
kRangeProportionIn
=
2.0
;
const
Bool_t
kChains
[
6
]
=
{
0
,
0
,
0
,
1
,
0
,
1
};
// const Bool_t kChains[6] = {1,1,1,1,1,1};
const
Bool_t
spectra
=
0
;
const
Int_t
nointervals
=
5
;
// const Bool_t cosThetaT[nointervals] = {1,1,1,1,1};
const
Bool_t
cosThetaT
[
nointervals
]
=
{
0
,
0
,
0
,
0
,
0
};
const
Bool_t
epsilonT
[
nointervals
]
=
{
0
,
0
,
1
,
0
,
0
};
// const Bool_t epsilonT[nointervals] = {1,1,1,1,1};
const
Bool_t
epsilonY
[
nointervals
]
=
{
0
,
0
,
0
,
0
,
0
};
// const Bool_t epsilonY[nointervals] = {1,1,1,1,1};
const
Bool_t
cosThetaY
[
nointervals
]
=
{
0
,
0
,
0
,
0
,
0
};
// const Bool_t cosThetaY[nointervals] = {1,1,1,1,1};
//quasibinary kinematics
const
Bool_t
thetaAT
[
nointervals
]
=
{
0
,
0
,
0
,
0
,
0
};
// const Bool_t thetaAT[nointervals] = {1,1,1,1,1};
const
Bool_t
thetaP1T
[
nointervals
]
=
{
0
,
0
,
0
,
0
,
0
};
// const Bool_t thetaP1T[nointervals] = {1,1,1,1,1};
const
Bool_t
thetaP2Y
[
nointervals
]
=
{
0
,
0
,
0
,
0
,
0
};
//0-2 MeV, 2-3.1 MeV
TCut
sRatioAl0
=
"sRatio>0.075 && sRatio<0.125"
;
TCut
sRatioNoAl0
=
"sRatio>0.076 && sRatio<0.126"
;
TCut
sRatioAl180
=
"sRatio>0.070 && sRatio<0.120"
;
// TCut sRatioAl180 = "sRatio>0.050 && sRatio<0.100";
TCut
sRatioNoAl180
=
"sRatio>0.070 && sRatio<0.120"
;
// TCut sRatioNoAl180 = "sRatio>0.010 && sRatio<0.150";
TCut
sRatioAl90
=
"sRatio>0.075 && sRatio<0.125"
;
TCut
sRatioNoAl90
=
"sRatio>0.076 && sRatio<0.126"
;
TCut
sRatio
[
6
]
=
{
sRatioAl0
,
sRatioNoAl0
,
sRatioAl180
,
sRatioNoAl180
,
sRatioAl90
,
sRatioNoAl90
};
//integral fit
// const Long64_t eMaxEvents = 5000000;
// Long64_t eEventsAl0 = eMaxEvents;
// Long64_t eEventsNoAl0 = eMaxEvents;
// Long64_t eEventsAl180 = eMaxEvents;
// Long64_t eEventsNoAl180 = eMaxEvents;
// Long64_t eEventsAl90 = eMaxEvents;
// Long64_t eEventsNoAl90 = eMaxEvents;
Long64_t
eEventsECuts
[
5
][
6
]
=
{
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
,
eMaxEvents
};
// const Long64_t eEvents[6] = {eEventsAl0, eEventsNoAl0, eEventsAl180, eEventsNoAl180, eEventsAl90, eEventsNoAl90};
// const TChain *chs[6] = {chsAl0, chsNoAl0, chsAl180, chsNoAl180, chsAl90, chsNoAl90};
// const TTree *ti[6] = {tiAl0, tiNoAl0, tiAl180, tiNoAl180, tiAl90, tiNoAl90};
// const Long64_t sMaxEvents = 3000000;
// Long64_t sEventsAl0 = 2050000;
// Long64_t sEventsNoAl0 = 2050000;
// Long64_t sEventsAl180 = 2050000;
// Long64_t sEventsNoAl180 = 2050000;
// Long64_t sEventsAl90 = 1900000;
// Long64_t sEventsNoAl90 = 1950000;
// const Long64_t sEvents[6] = {sEventsAl0, sEventsNoAl0, sEventsAl180, sEventsNoAl180, sEventsAl0, sEventsNoAl0};
const
Long64_t
sMaxEvents
=
3000000
;
Long64_t
sEventsECuts
[
5
][
6
]
=
{
/*sMaxEvents, sMaxEvents, sMaxEvents, sMaxEvents, sMaxEvents, sMaxEvents,*/
2020000
,
2040000
,
2130000
,
2080000
,
2060000
,
2080000
,
2000000
,
2020000
,
2000000
,
2010000
,
1990000
,
1970000
,
2320000
,
2300000
,
2340000
,
2310000
,
2300000
,
2290000
,
2060000
,
2070000
,
2110000
,
2110000
,
2070000
,
2060000
,
2050000
,
2050000
,
2110000
,
2110000
,
2050000
,
2050000
};
TString
canvasTitle
;
TString
canvasName
;
//spectra
const
Double_t
sRange
[
6
]
=
{
2000
,
2000
,
2000
,
2000
,
2000
,
2000
};
if
(
spectra
)
{
gROOT
->
ProcessLine
(
".x corr_templates/sfAngInt_spectra_v5.cxx"
);
}
//
const Double_t sRange[6] = {2000, 2000, 2000, 2000, 2000, 2000};
//
if (spectra) {
//
gROOT->ProcessLine(".x corr_templates/sfAngInt_spectra_v5.cxx");
//
}
// "T" system
const
Double_t
eTRange
[
5
][
6
]
=
{
280
,
280
,
280
,
280
,
280
,
280
,
...
...
@@ -217,54 +154,6 @@ void ES1_7590()
700
,
700
,
700
,
700
,
700
,
700
};
gROOT
->
ProcessLine
(
".x corr_templates/sfAngInt_epsilonT.cxx"
);
const
Double_t
coskTRange
[
5
][
6
]
=
{
300
,
300
,
300
,
300
,
300
,
300
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
900
,
900
,
900
,
900
,
900
,
900
,
1100
,
1100
,
1100
,
1100
,
1100
,
1100
};
gROOT
->
ProcessLine
(
".x corr_templates/sfAngInt_cosThetaTk.cxx"
);
// "Y" system
const
Double_t
eYRange
[
5
][
6
]
=
{
350
,
350
,
350
,
350
,
350
,
350
,
400
,
400
,
400
,
400
,
400
,
400
,
450
,
450
,
450
,
450
,
450
,
450
,
1000
,
1000
,
1000
,
1000
,
1000
,
1000
,
1300
,
1300
,
1300
,
1300
,
1300
,
1300
};
gROOT
->
ProcessLine
(
".x corr_templates/sfAngInt_epsilonY.cxx"
);
const
Double_t
coskYRange
[
5
][
6
]
=
{
230
,
230
,
230
,
230
,
230
,
230
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
350
,
600
,
600
,
600
,
600
,
600
,
600
,
650
,
650
,
650
,
650
,
650
,
650
};
gROOT
->
ProcessLine
(
".x corr_templates/sfAngInt_cosThetaYk.cxx"
);
//quasibinary kinematics: diproton
const
Double_t
tP1Range
[
5
][
6
]
=
{
80
,
80
,
80
,
80
,
80
,
80
,
120
,
120
,
120
,
120
,
120
,
120
,
160
,
120
,
160
,
120
,
160
,
120
,
250
,
200
,
250
,
200
,
250
,
200
,
240
,
240
,
240
,
240
,
240
,
240
};
gROOT
->
ProcessLine
(
".x corr_templates/sfAngInt_thetaP1T.cxx"
);
const
Double_t
tARange
[
5
][
6
]
=
{
80
,
80
,
80
,
80
,
80
,
80
,
130
,
130
,
130
,
130
,
130
,
130
,
200
,
120
,
200
,
120
,
200
,
120
,
300
,
200
,
300
,
200
,
300
,
200
,
270
,
270
,
270
,
270
,
270
,
270
};
gROOT
->
ProcessLine
(
".x corr_templates/sfAngInt_thetaAT.cxx"
);
//quasibinary kinematics: 5Li
const
Double_t
tP2YRange
[
5
][
6
]
=
{
50
,
50
,
50
,
50
,
50
,
50
,
75
,
75
,
75
,
75
,
75
,
75
,
110
,
70
,
110
,
70
,
110
,
70
,
300
,
300
,
300
,
300
,
300
,
300
,
200
,
200
,
200
,
200
,
200
,
200
};
gROOT
->
ProcessLine
(
".x corr_templates/sfAngInt_thetaP2Y.cxx"
);
Info
(
"correlations_v5_7590.cxx"
,
"Finished."
);
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment