Monte Carlo Tools for the LHC
Gennaro Corcella
CERN, Department of Physics Theory Division
Outline
First lecture:
Introduction to MC methods Parton shower algorithms
General-purpose event generators Second lecture:
Matrix-element corrections to parton showers MC@NLO and matrix-element generators
Comparisons and concluding remarks
Introduction to Monte Carlo methods
(A. Pellissetto, Lectures at the the 2nd Seminar of Theoretical Physics, Parma, 1992; S. Weinzierl, hep-ph/0006269, M.H.
Seymour, Lectures at CTEQ Summer School, 2000)
Monte Carlo algorithms are based on the generation of random numbers
A random number generator is a program which produces numbers which approach the properties of purely random numbers
Example: a sample of instable nuclei and a periodic counter which gives 0 if the number of decays is odd, 1 if the number of decays is even
Problem: storage of a huge amount of bits is not manageable
Practical random number generators try to approximate random number sets Example: with a computer able to store words with n bits, generate integer numbers x1, . . . xn, with 0 ≤ xn ≤ 2n, and xn+1 = f (xn)
‘Random’ numbers Un, 0 ≤ Un ≤ 1, can be obtained setting Un = xn/2n As xn+1 and xn are related, they cannot be random numbers!
However, properly choosing the function f , we can get a good approximation of random numbers, in the sense that they appear random to somebody who does not know the applied algorithm
Many random number generators follow the linear congruential method (LCG), by P. L’Ecuyer, Comp. Phys. Comm. 60 (1990) 329:
xn+1 = (axn + c) mod m 0 ≤ a < m ; 0 ≤ c < m
a is called multiplier, m modulus, c increment
Typically: c = 0 (multiplicative linear congruential generator), and m = 2w, with w available number of bits
The best approximation of a truly random number generator is achieved if xn has the maximum possible period, which is m
A necessary condition is that a and c are relatively prime to m
Preliminary applications of random numbers: generation of a probability distribution and Monte Carlo integration
Generation of probability distributions: inverse transform method
Problem: given a generator of uniform random numbers u ∈ [0, 1], generate the variable x according to the probability distribution f (x), which is known analitycally
Z +∞
−∞
f (x)dx = 1 ; Prob(x1 < x < x2) =
Z x2 x1
f (x)dx The cumulative distribution F (a) gives the probability that x ≤ a:
F (a) =
Z a
−∞ f (x)dx ; 0 ≤ F (a) ≤ 1
F (a) is a random variable, uniformly distributed in [0, 1], for any x in the domain of f (x). We can set it equal to the generated random number and obtain x inverting the function F (x):
u = F (x) ; x = F−1(u) Example: generate f (x) = 2/x2 for x ∈ [1, 2] , R 2
1 f (x)dx = 1
F (x) =
Z x 1
2
t2 dt = 2 − 2
x ; 2 − 2
x = u ⇒ x = 2
2 − u ; 1 ≤ x ≤ 2
Acceptance-rejection method
It is used if the function f (x) is known only numerically
Enclose f (x) in a function g(x) = Ch(x), with f (x) and h(x) normalized to one, and C > 1
Compare f (x) with ug(x), with u uniform random number ug(x) ≤ f(x): accept x ; ug(x) ≥ f(x): reject x
Better results if g(x) is fairly close to f (x) and C >∼ 1 a ≤ x ≤ b; 0 ≤ y ≤ c
Monte Carlo integration:
I = Z b
a g(x)dx = (b − a)hg(x)i
The integral I is computed as the average value of a random variable
One generates u1,. . . uN random numbers in [0, 1], evaluates xi = a + ui(b − a) and g(xi)
The integral is approximated to the following sample mean:
I ' IN = (b − a) 1 N
N
X
i=1
g(xi) The variance reads:
σ2 = (b − a) Z b
a
[g(x)]2dx −
"
Z b a
g(x)dx
#2
Central limit theorem: IN is a statistic variable with mean I and variance σ/√ N The Monte Carlo estimate for the variance σN is obtained using the same sample x1, . . . xN :
σN2 = b − a N
N
X
i=1
[g(xi)]2 − IN2 ; I ' IN ± σN/√ N
Importance sampling: change of integration variables ([a, b] = [0, 1]) Z
dxf (x) =
Z f (x)
p(x)p(x)dx =
Z f (x)
p(x)dP (x) ; p(x) = ∂d
∂x1 . . . ∂xdP (x)
If p(x) ≥ 0 and R p(x)dx = 1, we can generate a sample of random numbers x1 . . . xN according to P (x) and get the following estimates:
IN = 1 N
N
X
i=1
f (xi)
p(xi) ; σ2 f p
= 1 N
N
X
i=1
f (xi) p(xi)
2
− IN2
Example (M.H. Seymour):
R 1
0 dx cos π2x = 0.637 ± 0.307/√ N R 1
0 dx(1 − x2)cos(π2x)
1−x2 = Rρ2
ρ1 dρcos(π2x(ρ))
1−x(ρ)2
= 0.637 ± 0.031/√ N
Better efficiency after change of variables
VEGAS: learn where the function is large and approximate it to a step function The integration region is divided into a rectangular grid; an integral is performed in each region to understand where the integrand is largest and approximate the optimal probability pbest = |f(x)|/R |f(x)|dx to a step function
The grid is optimized and frozen; each j-th integration gives the estimate:
Ij = 1 Nj
Nj
X
n=1
f (xn)
p(xn) ; σj2 = 1 Nj
Nj
X
n=1
f (xn) p(xn)
2
− Ij2
The final result reads: I =
m
X
j=1
Nj σj2
−1
m
X
j=1
NjIj σj2
Example with f (x) = cos π2x
Multi-channel integration
If the integrand has several peaks in different regions, we need a variable transformation for each peak domain
Each channel will have probability pi(x), according to which we generate x:
Channel i is selected with probability αi, with Pm
i=1 αi = 1, p(x) = P
iαipi(x) The integral and its estimate read (Ni = αiN ):
I = Z
dxf (x) =
m
X
i=1
αi
Z f (x)
p(x)dPi(x) ; pi(x) = ∂Pi
∂x ; IN = 1 N
m
X
i=1 Ni
X
ni=1
f (xni) p(xni)
The error is given by:
σ2 = 1
N[W (α) − I2] ; W (α) =
m
X
i=1
αi
Z f (x) p(x)
2
dPi(x)
Phase-space integration (ab → 1 . . . n)
Phase-space factor for n particles of momenta p1 . . . pn and masses m1 . . . mn:
dΦn(P, p1, . . . pn) =
n
Y
i=1
d4pi
(2π)32Ei(2π)4δ4 P −
n
X
i=1
pi
!
Factorization: Q = Pj
k=1 pk, Q → p1 . . . pj, P → Qpj . . . pn Φn(P, p1, . . . pn) = 1
2πdQ2dΦj(Q, p1, . . . , pj)dΦn−j+1(P, Q, pj+1, . . . , pn) ;
Sequential approach: n-body phase space as a sequence of 1 → 2 decays dΦn = 1
(2π)n−2dMn−12 . . . dM22dΦ2(n) . . . dΦ2(2)
with qi = Pi
j=1 pj, Mi2 = qi2, (m1 + . . . mi)2 ≤ Mi2 ≤ (Mi+1 − mi+1)2 M22 = (p1 + p2)2, . . . Mn−12 = (p1 + . . . pn−1)2
In the rest frame of qi, the phase space for qi(Mi) → pi(mi)qi−1(Mi−1) reads:
dΦ2(qi, qi−1, pi) =
qλ(qi2, qi−12 , m2i)
(2π)2 8qi2 dϕi d cos θi
λ(x, y, z) = x2 + y2 + z2 − 2xy − 2yz − 2xz
Algorithm for phase space generation: (ui random numbers)
1) Rest frame of qi: qi = P = p1 + . . . pn, Mi = pqi2; ϕi = 2πu1, cos θi = u2; Mi−1 = (m1 + . . . mi−1) + u3(Mi − mi)
2) Set
|~pi0| =
qλ(Mi2, Mi−12 , m2i)
2Mi ; ~pi0 = |~pi0|(sin θisin ϕi, sin θi cos ϕi, cos θi)
p0i = “q
| ~pi0| + m2i, ~pi0”
, q0i−1 = “q
| ~pi0| + Mi−12 , − ~pi0”
3) Transform back to the original Lorentz system;
4) Set i → n − 1: if n ≥ 2 repeat all steps The weight reads:
w = 1
(2π)3n−422n−1Mn
n
Y
i=2
qλ(Mi2, Mi−12 , m2i) Mi
Monte Carlo techniques can be used to simulate multi-parton radiation in high-energy processes
! !!!
! !!!
! !!!
! !!!
! !!!
"" """
"" """
"" """
"" """
#### #
#### #
#### #
#### # $$$$ $
$$$$ $
$$$$ $
$$$$ $
%%% %%
%%% %%
%%% %%
%%% %%
& &&&&
& &&&&
& &&&&
& &&&&
''''
''''
''''
''''
( (((( (
( (((( (
( (((( (
)))) ))
)))) ))
)))) ))
**** *
**** *
**** *
**** *
+++ ++
+++ ++
+++ ++
+++ ++
, ,,,
, ,,,
, ,,,
, ,,,
----
----
----
---- . ..
. ..
. ..
. ..
. ..
///
///
///
///
0000
0000
0000
0000
0000
11 11
11 11
11 11
11 11 22 2
22 2
22 2
22 2
22 2
333
333
333
333
333
44
44
44
44
44
55
55
55
55
55
66 6
66 6
66 6
66 6
66 6
66 6
777
777
777
777
777 88 88
88 88
88 88
88 88
88 88
9 999
9 999
9 999
9 999:: :::
:: :::
:: :::
:: :::
:: :::
;;; ;;
;;; ;;
;;; ;;
;;; ;;
;;; ;; << <<
<< <<
<< <<
<< <<
<< <<
<< <<
= ==
= ==
= ==
= ==
= ==
= == > >>
> >>
> >>
> >>
> >>
> >>
???
???
???
???
???
???
@@@ @
@@@ @
@@@ @
@@@ @
AA AA
AA AA
AA AA
AA AA
Figure by Frank Krauss
Standard Monte Carlo event generators (HERWIG/PYTHIA):
Hard 2 → 2 subprocess: leading-order (LO) matrix element Parton showers in the soft or collinear approximation
Matrix-element corrections for hard and large-angle parton radiation
A simpler case: e+e− → γ(q) → q(p1)¯q(p2)g(p3) (see also M.Grazzini’s lectures)
____^^^^
____^^^^- γ(q)
@@
@@@
I q(p¯ 2)
g(p3)
q(p1)
____^^^^
____^^^^- γ(q)
q(p1)
@I@@
g(p3)
@I@@ q(p¯ 2)
d2σ
dx1dx2 = σ0CF αs 2π
x21 + x22
(1 − x1)(1 − x2) ; xi = 2pi · q
q2 = 2Ei
√s ; x1 + x2 + x3 = 2
x1 → 1: g k ¯q ; x2 → 1: g k q ; x3 → 0: soft gluon radiation x21 + x22
(1 − x1)(1 − x2) = −2 + 1 + (1 − x3)2 x3
1
1 − x1 + 1 1 − x2
Collinear approximation: θ = θ23 → 0 , x1 → 1
z = E3
E2 + E3 = x3
2 − x1 ' x3 ; θ2 ' 2(1 − cos θ) ' 4(1 − x1) x3(1 − x3)
P (z) = CF1 + (1 − z)2
z : Altarelli − Parisi splitting function x21 + x22
(1 − x1)(1 − x2) ' 1 CF
4
x3(1 − x3)
P (z)
θ2 , J = x3(1 − x3) 4
x21 + x22
(1 − x1)(1 − x2) ' 1 CF
4
x3(1 − x3)
P (z)
θ2 , J = x3(1 − x3) 4
Differential cross section in terms of z and θ:
d
2σ = σ
0α
S2π P (z)dz dθ
2θ
2Universal in the collinear limit
- - @
@@ 1 − z
R
z
- - @
@@ z
R
1 − z
Pgq(z) = CF 1+(1−z)z 2 Pqq(z) = CF 1+z1−z2
@
@@ 1 − z
R z
1 − z
z
Pqg(z) = CF 1 + (1 − z)2
Pgg(z) = CAz4+1+(1−z)z(1−z) 4
Soft approximation: γ(q) → q(p1)¯q(p2)g(p3, ) ω = E3 E1,2 ; |~p3| |~p1,2|
Maµ = −iegSTau(p¯ 1)
γµ i
6 p3+ 6 p1 6 + 6 i
6 p2+ 6 p3γµ
v(p2)
= gSTaν
pν1
p1 · p3 − pν2 p2 · p3
e¯u(p1)γµv(p2)
Eikonal factorization: universal in the soft limit
d2σ = σ0CFαS π
2dω ω
d cos θ
(1 − cos θ)(1 + cos θ) = σ0CFαS 2π
2dω ω
d cos θ
1 − cos θ + d cos θ
1 − cos(π − θ)
Collinear limit : d2σ = σ0 αS
2π P (z)dz dθ2
θ2 P (z)dz = CF 1 + (1 − z)2
z dz ' CF 2 ωdω Soft and/or collinear limit :
d2σ = σ0 αS
2π P (z)dz d cos θ 1 − cos θ
Starting point to simulate multiple radiation: need of ordering variable
In the collinear approximation, any Q2 ∝ θ2 is feasible to order multiple radiation
- θ
p, E
zE
@@
@@
@@ R
(1 − z)E
Gluon transverse momentum: kT2 = z2(1 − z)2E2θ2 Invariant mass: p2 = z(1 − z)E2θ2
Collinear limit: ln kT2 ∼ ln p2 ∼ ln θ2 dθ2
θ2 = dkT2
kT2 = dp2 p2
Soft gluons can be emitted anywhere, at any angle
-
Angular ordering allows one to implement probabilistically multiple soft emissions
Angular ordering
__^^
__^^- @
@@
@@
I q(p¯ 2)
g(p3)
q(p1)
__^^
__^^-
q(p1)
@@I @
g(p3)
@@
I@ q(p¯ 2)
__^^
__^^- @
@@
@@ I
-
θ12 θ13
__^^
__^^-
R@@
- R@@
θ12
θ23
|M|2 ∼ W = ω2 2
p1
p1 · p3 − p2 p2 · p3
2
= 1 − cos θ12
(1 − cos θ13)(1 − cos θ23) (soft limit)
W = W1 + W2 ; W1 = 1 2
W + 1
1 − cos θ13 − 1
1 − cos θ23
Z 2π 0
dφ13
2π W1 = 1
1 − cos θ13, if θ13 < θ12
= 0 if θ13 < θ12
Colour coherence: a parton radiates up to its colour partner
Implementation of angular ordering
dP =
dσ2σ0
=
α2πSP (z)dz
1−cos θd cos θ ____^^^^u θmax@@ I@
θ < θmax
-
Need to evaluate probability of no branching at larger angles Analogy with nuclear decay:
dP = λdt dN = −N0λdt N (t) = N0 exp(−λt) = N0 exp[−R t
0 dP ] Probability of no decay in [0, t]: N (t)N
0
= exp h
− R
t0
dP i
Probability of no branching in [θ, θmax]:
∆S(θmax, θ) = exp
"
−αS 2π
Z θmax θ
d cos θ0 1 − cos θ0
Z zmax zmin
dzP (z)
#
Sudakov form factor
dP = αS
2π P (z)dz d cos θ
1 − cos θ ∆S(θmax, θ)
Unitarity: 1=R+V ∆S sums virtual and unresolved emissions
Angular-ordered parton showers
__^^
__^^- @
@@
@@
@@@ I
@@
@ R
__^^
__^^- @θ
@I@@
@-
@I@
@@
@ R
@@I@
- @
@@ R
θ1 θ2
θ20 θ01
Parton shower ⇒ colour flow ⇒ angular ordering:
θ1 < θ; θ2 < θ1; θ10 < θ; θ20 < θ10
dP1 = αS
2π P (z1)dz1 d cos θ1
1 − cos θ1∆S(θ, θ1)
dP2 = αS
2π P (z2)dz2 d cos θ2
1 − cos θ2∆S(θ1, θ2)dP1
Iterating dP one construct the multiple-radiation algorithm
Evolution variable in general-purpose event generators
__^^
__^^u@
@@
p1(E1)
I
p(E) θ
k(ω)
- p2(E2), z = ω/E
HERWIG (G.C., I.Knowles,G. Marchesini, S. Moretti, K. Odagiri, P. Richardson, M.H. Seymour, B.R. Webber) :
Q2 = E2(1 − cos θ) ' E2θ2/2 ; Qmax = √p · p1 ; E = Qmax ; θ < π/2 Soft approximation: angular ordering
HERWIG++ (S.Gieseke, A. Ribon, M. Seymour, P. Stevens, B. Webber): Q02 = Q2+max(kz22,p2)+z2(1−z)k2 2 (only e+e− at the moment)
Angular ordering, better treatment of soft phase space and heavy quark masses PYTHIA (up to 6.2 version) (T. Sjostrand, L. Lonnblad, S. Mrenna, P. Skands): Q2 = p2
It includes angular ordering only by an additional veto (see CDF PRD 50 (1994) 5562)
PYTHIA 6.3: Q2 = kT2
ARIADNE (L. Lonnblad): Q2 = kT2
The Sudakov form factor will be: ∆S(Q2max, Q2) = ∆S(Q2max, Q20)/∆S(Q2, Q20)
Implementation of parton shower algorithm in a Monte Carlo program
Main step: given a generator of random numbers R and branching with evolution variable Q21, generate another branching at Q22
The Sudakov form factor gives the probability of evolution between two values of Q2 with no resolvable emission
∆S(Q21, Q22) = R
The variable z is to be distributed according to the splitting function P (z) The cumulative distribution will be ( : infrared cutoff)
F (z) =
Rz
P (z)dz R 1−
P (z)dz z will be obtained by solving the following equation:
Z z
dzP (z) = R0
Z 1−
dzP (z)
Initial-state radiation
Hard-scattering quantities are fixed (e.g. mW for W production, xBj for Deep Inelastic Scattering): better efficiency with backward evolution
~ -
h
Q21, x1
@@
@@
@@
R Q22, x2 = zx1
__^^
__u -^^
z = Eg/E1
Q21 < Q22 (ordering variable); x1 > x2
Step 1: evolution Q22 → Q21 at fixed x2 with no branching
∆S(Q22, Q21)fq(x2, Q21)
fq(x2, Q22) = ∆S(Q22, Q20) fq(x2, Q22)
fq(x2, Q21)
∆S(Q21, Q20) = R Step 2: generate z = x2/x1 at given Q21:
Z z
dz
z P (z)f x2
z , Q21
= R0
Z 1−
dz
z P (z)f x2
z , Q21
The algorithm is analogous to the final-state radiation, with ∆S → ∆S/f f /∆S satisfies the DGLAP evolution equation
(see Grazzini’s lectures and ‘QCD and Collider Physics’, pp.163–173 for proof) :
Q2 ∂
∂Q2
f
∆S
= 1
∆S
Z dz z
αS
2π f (x/z, Q2)P (z)
Solving iteratively for an evolution Q21 → Q2: f (x, Q2)
∆S(Q21, Q2) = f (x, Q21)
∆S(Q21, Q21) + αS 2π
Z Q21 Q2
dQ02 Q02
Z dz
z P (z) f (x/z, Q02)
∆S(Q21, Q02)
f (x, Q2) = ∆S(Q21, Q2)f (x, Q21) + αS 2π
Z Q2 Q21
dQ02 Q02
∆S(Q21, Q2)
∆S(Q21, Q02)
Z dz
z P (z)f (x/z, Q02) Interpretation :
∆S(Q21, Q2)f (x, Q21): no branching in [Q21, Q2]
P (z) f (x/z, Q02) : branching at Q02; ∆S(Q21, Q2)/∆S(Q21, Q02) evolution Q02 → Q2
Colour coherence in the hard scattering (example: q(p1)¯q(p2) → q0(p3)¯q0(p4))
-
@@
@@
@
¯ I
q0 q0
q¯
@@
@@
@
R q @@@
@@ R
-
@@
@@@
R
Mandelstam variables: ˆs = (p1 + p2)2, ˆt = (p1 − p3)2, ˆu = (p2 − p3)2
Double-differential cross section (massless appoximation):
d2σˆ
dˆsdˆt = 4
9 α2Sˆt2 + ˆu2 ˆ
s3 δ(ˆs + ˆt + ˆu)
Generate ˆs, ˆt and ˆu according to d2σ/(dˆsdˆt)
In a given frame, determine components of p1, p2, p3 and p4 in terms of ˆs, ˆt, ˆu Boost back to laboratory frame
Subsequent emissions:
q and q0 radiate at θ < θ1; ¯q and ¯q0 at θ0 < θ2
~ -
θ1
@@ I@@θ2
Branching algorithm for the final-state radiation (forward evolution)
__^^
__^^u@
@I@
q(p) θ
g(p1)
- q(p2)
z =
EE1dP =
α2πSP (z)dz
dQQ22∆
S(Q
2max, Q
2)
Initial-state radiation (backward evolution)
~ -
h
q(p)@@
@@@ R q(p2)
__^^
__u -^^
g(p1) θ
z =
EE2dP =
α2πSP (z)dz
x/zx fbf(x/z,Q2)a(x,Q2)
dQ2 Q2
∆S,a(Q2max,Q2)
∆S,b(Q2,Q20)
Scale of αS in parton showers: using the transverse momentum of the emitted parton allows one to resum a class of soft/collinear logarithms
(D. Amati et al. NPB (1980) 173 )
αS(kT2) = αS(Q2)
1 + αS(Q2)b0 ln(Q2/kT2) ' αS(Q2)
"
1 − αS(Q2)b0 lnQ2
kT2 + . . .
#
b0 = 33 − 12nf
12π (LO)
Parton showers and resummation: expansion of the Sudakov form factor
∆S(Q2max, Q2) = exp
"
−αS 2π
Z Q2max Q2
dQ02 Q02
Z zmax zmin
dzP (z)
#
Example: all q → qg, soft and collinear limit (z → 0, Q2 → 0) P (z) = CF 1 + (1 − z)2
z ' 2CF
z zmin = Q0
Q zmax = 1 − zmin (HERWIG)
∆S ' exp
−αSCF
4π log2 Qmax Q20
1 + αS
4π log2 Q2
Q20 + α2SCF2
32π2 log4 Q2 Q20 . . .
dP ∝ αS π
dQ2 Q2
dz z
1 + αSCF
4π log2 Q2
Q20 + α2SCF2
32π2 log4 Q2
Q20 + . . .
Probability of one emission at Q2:
P1 ∝ Z
dP = αS
4π log2 Q2
Q20 + α2S
256π2 log4 Q2
Q20 + . . . Resummation of double logarithms ∼ αnSL2n
Soft or collinear limit: resummation of single logarithms ∼ αnSLn