JHUGen MELA
JHUGen v7.5.6, MELA v2.4.2
Matrix element calculations as used in JHUGen.
VectorPdfFactory.h
Go to the documentation of this file.
1
#ifndef VECTOR_PDF_FACTORY
2
#define VECTOR_PDF_FACTORY
3
4
#include <cmath>
5
#include "
TVar.hh
"
6
#include "
RooSpinOne_7D.h
"
7
#include "RooRealVar.h"
8
#include "RooAbsPdf.h"
9
#include "TF1.h"
10
11
12
class
VectorPdfFactory
{
13
14
public
:
15
16
RooRealVar*
mZ
;
17
RooRealVar*
gamZ
;
18
19
RooRealVar*
R1Val
;
20
RooRealVar*
R2Val
;
21
22
RooSpinOne_7D
*
PDF
;
23
24
RooRealVar*
g1Val
;
25
RooRealVar*
g2Val
;
26
27
RooRealVar*
aParam
;
28
29
VectorPdfFactory
(){};
30
31
VectorPdfFactory
(RooRealVar* m1,RooRealVar* m2,RooRealVar* hs,RooRealVar* h1,RooRealVar* h2,RooRealVar* Phi,RooRealVar* Phi1,RooRealVar* mZZ){
32
33
// Parameters
34
mZ
=
new
RooRealVar(
"mZ"
,
"mZ"
,91.188);
35
gamZ
=
new
RooRealVar(
"gamZ"
,
"gamZ"
,2.5);
36
37
// related to tensor structure of V decays
38
R1Val
=
new
RooRealVar(
"R1Val"
,
"R1Val"
,0.15);
39
R2Val
=
new
RooRealVar(
"R2Val"
,
"R2Val"
,0.15);
40
41
// dimensionless couplings
42
g1Val
=
new
RooRealVar(
"g1Val"
,
"g1Val"
, 0.0);
43
g2Val
=
new
RooRealVar(
"g2Val"
,
"g2Val"
, 0.0);
44
45
// random paramter (?)
46
aParam
=
new
RooRealVar(
"aParam"
,
"aParam"
,0.0);
47
48
PDF
=
new
RooSpinOne_7D
(
"PDF"
,
"PDF"
, *mZZ, *m1, *m2, *h1, *h2,*hs, *Phi, *Phi1,
49
*
g1Val
, *
g2Val
, *
R1Val
, *
R2Val
, *
aParam
, *
mZ
, *
gamZ
);
50
51
};
52
53
~VectorPdfFactory
(){
54
55
delete
g1Val
;
56
delete
g2Val
;
57
58
delete
aParam
;
59
60
delete
mZ
;
61
delete
gamZ
;
62
63
delete
R1Val
;
64
delete
R2Val
;
65
66
delete
PDF
;
67
68
};
69
70
int
configure
(
TVar::Process
model_){
71
72
switch
(model_){
73
case
TVar::H1plus
:
makePseudoZprime
();
return
0;
break
;
74
case
TVar::H1minus
:
makeZprime
();
return
0;
break
;
75
case
TVar::SelfDefine_spin1
:
return
0;
break
;
76
default
:
makeZprime
();
return
1;
break
;
77
}
78
79
};
80
81
82
void
makePseudoZprime
(){
// NEED TO CALCULATE NORMALIZATIONS
83
84
g1Val
->setVal(0.0);
85
g2Val
->setVal(1.0);
86
87
};
88
89
void
makeZprime
(){
// NEED TO CALCULATE NORMALIZATIONS
90
91
g1Val
->setVal(1.0);
92
g2Val
->setVal(0.0);
93
94
};
95
96
void
makeParamsConst
(
bool
yesNo=
true
){
97
if
(yesNo){
98
99
g1Val
->setConstant(kTRUE);
100
g2Val
->setConstant(kTRUE);
101
102
gamZ
->setConstant(kTRUE);
103
mZ
->setConstant(kTRUE);
104
R1Val
->setConstant(kTRUE);
105
R2Val
->setConstant(kTRUE);
106
107
}
else
{
108
109
g1Val
->setConstant(kFALSE);
110
g2Val
->setConstant(kFALSE);
111
112
gamZ
->setConstant(kFALSE);
113
mZ
->setConstant(kFALSE);
114
R1Val
->setConstant(kFALSE);
115
R2Val
->setConstant(kFALSE);
116
}
117
};
118
119
void
setZZ4fOrdering
(
bool
flag=
true
){
PDF
->
setZZ4fOrdering
(flag); }
120
121
};
122
123
#endif
124
125
TVar::H1plus
@ H1plus
Definition:
TVar.hh:148
VectorPdfFactory::R1Val
RooRealVar * R1Val
Definition:
VectorPdfFactory.h:19
VectorPdfFactory::~VectorPdfFactory
~VectorPdfFactory()
Definition:
VectorPdfFactory.h:53
VectorPdfFactory::g1Val
RooRealVar * g1Val
Definition:
VectorPdfFactory.h:24
TVar::Process
Process
Definition:
TVar.hh:124
VectorPdfFactory::makePseudoZprime
void makePseudoZprime()
Definition:
VectorPdfFactory.h:82
VectorPdfFactory
Definition:
VectorPdfFactory.h:12
RooSpinOne_7D::setZZ4fOrdering
void setZZ4fOrdering(Bool_t flag=true)
Definition:
RooSpinOne_7D.cc:460
TVar::H1minus
@ H1minus
Definition:
TVar.hh:147
VectorPdfFactory::gamZ
RooRealVar * gamZ
Definition:
VectorPdfFactory.h:17
VectorPdfFactory::aParam
RooRealVar * aParam
Definition:
VectorPdfFactory.h:27
RooSpinOne_7D
Definition:
RooSpinOne_7D.h:18
VectorPdfFactory::configure
int configure(TVar::Process model_)
Definition:
VectorPdfFactory.h:70
VectorPdfFactory::makeZprime
void makeZprime()
Definition:
VectorPdfFactory.h:89
VectorPdfFactory::PDF
RooSpinOne_7D * PDF
Definition:
VectorPdfFactory.h:22
VectorPdfFactory::g2Val
RooRealVar * g2Val
Definition:
VectorPdfFactory.h:25
VectorPdfFactory::VectorPdfFactory
VectorPdfFactory()
Definition:
VectorPdfFactory.h:29
VectorPdfFactory::setZZ4fOrdering
void setZZ4fOrdering(bool flag=true)
Definition:
VectorPdfFactory.h:119
VectorPdfFactory::R2Val
RooRealVar * R2Val
Definition:
VectorPdfFactory.h:20
VectorPdfFactory::makeParamsConst
void makeParamsConst(bool yesNo=true)
Definition:
VectorPdfFactory.h:96
TVar.hh
RooSpinOne_7D.h
VectorPdfFactory::mZ
RooRealVar * mZ
Definition:
VectorPdfFactory.h:16
TVar::SelfDefine_spin1
@ SelfDefine_spin1
Definition:
TVar.hh:180
VectorPdfFactory::VectorPdfFactory
VectorPdfFactory(RooRealVar *m1, RooRealVar *m2, RooRealVar *hs, RooRealVar *h1, RooRealVar *h2, RooRealVar *Phi, RooRealVar *Phi1, RooRealVar *mZZ)
Definition:
VectorPdfFactory.h:31
MELA
interface
VectorPdfFactory.h
Generated on Fri Oct 18 2024 15:51:14 for JHUGen MELA by
1.8.17