-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtot.c
More file actions
54 lines (43 loc) · 1.25 KB
/
tot.c
File metadata and controls
54 lines (43 loc) · 1.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include "BosonJetNLL.h"
#include <iostream>
#include <fstream>
#include <sstream>
#include <iomanip>
using namespace std;
double sigma(double y[], size_t dim, void *p){
//dim=5 dimensional integration variables: y[]={xT, phi, pT, yB,yJ, qT};
BosonJetNLL *bj=(BosonJetNLL *)p;
double cphix=cos(y[1]);
bj->setqT(y[5]);
return y[5]*(bj->sigmaR(y[0],cphix,y[2],y[3],y[4]));
}
int main(){
//Particle photon("photon",Particle::photon,0.0,0.0);
Particle Z0("Z0",Particle::Z0,91.1876,0.0);
//BosonJet gammaJ(1.3e4,&photon);
BosonJetNLL ZJ(1.3e4,&Z0);
double R=0.1;ZJ.setR(R);
//range of the integration: from ymin to ymax
double pT=200.0;
double ymin[]={0.0,-0.5*M_PI,pT,-10.0,-2.4,0.0};
double ymax[]={1.5,0.5*M_PI,6500.0,10.0,2.4,pT};
int dim=6;
size_t calls = 500000;
ZJ.setupMC( &sigma, dim, ymin,ymax, &ZJ);
ZJ.setCalls(calls);
//output file:
ZJ.setImgcphix(true);
ZJ.setCSS(false);
ZJ.setNGL(true);
ZJ.setLL(false);
ZJ.setNonPert(false);
ZJ.setScaleVar(1.0,1.0,1.0,1.0);
double res[2];
double Rls[]={0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0};
for(int i=0;i<10;i++){
ZJ.setR(Rls[i]);ZJ.calculate(res);
cout << Rls[i] << " " << res[0] << " " << res[1] << endl;
}
ZJ.cleanupMC();
return 0;
}