Coming from MadEvent¶
MadEvent is configured with Cards/run_card.dat, a list of value = name lines. MG7 uses
Cards/run_card.toml instead, which is described in Run card. This page shows where
the MadEvent settings went. The param_card.dat is unchanged.
Not every MadEvent setting has a counterpart yet. The last section lists what is missing.
Setting values from old scripts¶
At the launch question, a few MadEvent names are translated to their MG7 equivalent, so
existing scripts keep working. These are nevents, gridpack, fixed_ren_scale,
scale, dsqrt_q2fact1, dsqrt_q2fact2, scalefact, bwcutoff, cut_decays
and use_syst. The shortcuts set lhc, set lep, set fixed_scale,
set no_parton_cut and set dynamical_scale_choice HT/n work as before, and so does
set iseed. The beam settings ebeam, ebeam1, ebeam2, lpp, lpp1,
lpp2, pdlabel, pdlabel1, pdlabel2 and lhaid are translated as in the
table below. MadEvent draws a random seed for iseed = 0. MG7 does the same for
seed = -1 and treats 0 as an ordinary fixed seed, so set iseed 0 is translated.
The cut names of the Cuts table are translated as well, so set mmll 200 sets
lepton-sfos_pair_mass.min and set ptj1min 50 sets jet_1-pt.min. As in
run_card.dat, a minimum of zero or a negative maximum removes that bound. A cut on the
parton or alllepton group also adds the group to [multiparticles] if it is not
there yet. The per-pdg cuts are written as in run_card.dat, for example
set pt_min_pdg {6: 100}, and put on a group pdg6 = [6, -6]. ptheavy is not
translated, because it needs a group of your own.
fixed_fac_scale, fixed_fac_scale1, fixed_fac_scale2 and maxjetflavor are
translated as in the tables below, and so are the numbers of dynamical_scale_choice
(set dynamical_scale_choice 3) and sde_strategy. MG7 has one
beam.fixed_fact_scale for both beams, so different fixed_fac_scale1 and
fixed_fac_scale2 are reported once the launch question closes.
All other settings must use their new names.
Beams and PDFs¶
|
|
Notes |
|---|---|---|
|
|
One energy per beam. With different energies the events are written, and the \(\eta\) cuts applied, in the lab frame. |
|
|
|
|
|
The name of the LHAPDF set instead of its id. For example, |
|
|
One set per beam. A beam without PDF exists only for a lepton collider, as
|
Scales¶
|
|
Notes |
|---|---|---|
|
|
|
|
|
A single switch for both beams. |
|
|
|
|
|
|
|
|
A name instead of a number. |
|
|
Applies to the dynamical scale only. |
The MadEvent default dynamical_scale_choice = -1 follows the clustering of the diagram,
as needed for CKKW merging. MG7 does not have it. Its default is half_transverse_mass.
Generation and phase space¶
|
|
Notes |
|---|---|---|
|
|
|
|
|
|
|
|
Similar, but the run directory is |
|
|
See |
|
|
|
|
|
|
|
|
|
|
|
List the PDG ids of the quarks that count as jets. The default includes the quarks
up to the charm quark and the gluon. Add |
|
|
The scale and PDF variations are computed natively. Choose them with
|
|
|
Technical settings for the MadEvent run engine, such as vector_size, nb_warp,
job_strategy, survey_splitting, refine_evt_by_job and the hel_* options, have
no counterpart. The integration and the hardware are configured in [run],
[generation], [vegas], [phasespace] and [madnis] instead.
Cuts¶
MadEvent has one parameter per cut. MG7 has one entry per observable in [cuts], named
after the particle groups and the observable, as explained in the run card page. A bound that is switched off in MadEvent, such as a minimum of
zero, is simply left out.
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A group for the particle, for example |
|
|
The cut mmll only applies to pairs of same-flavor and opposite-sign leptons. The
observable sfos_pair_mass does the same.
The groups in the last rows are your own entries in [multiparticles]. The page about the
cut syntax explains how the selections, -sum- and -sum are
combined.
Decay widths¶
compute_widths and the auto widths of a param_card integrate the decays into
three bodies or more with madspace, like the rest of MG7, where MadEvent used to be run. The
two-body widths still come from the formulas of the model when it has them. Each decaying
particle is written as a decay output (output mg7) in a temporary directory and surveyed:
the integration takes milliseconds and the build is what there is to wait for. A build of at
least four subprocess directories (this holds for any mg7 run) precompiles the standard
headers first (make PCH=1, clang), which halves it. For the Higgs of the heft model up to three bodies, the whole
command takes 6 s, against 26 s with MadEvent.
alpha_s of a decay is run from the alpha_s(m_Z) of the card up to the mass of the
decaying particle, with the same two-loop running as MadEvent. The widths of the two
integrators agree within the integration error (the --precision_channel of
compute_widths, 1% by default, is the relative precision aimed at for each channel).
The integrator is madspace. The --engine=madevent flag of compute_widths (or of an
auto width of the card, DECAY 6 auto --engine=madevent) selects the Fortran MadEvent
integration of the former releases instead:
compute_widths t --body_decay=3 --engine=madevent
MG7 goes back to MadEvent on its own, with a warning, if madspace cannot compute the widths
and no engine was asked for with --engine. The complex mass scheme is not available in
madspace: the widths are always computed with MadEvent then.
NLO widths¶
compute_widths --nlo computes the width at NLO. A model that comes with a dedicated code for
it (SMWidth, for the Standard Model: NLO QCD and EW for t, W and Z, HDECAY for the Higgs)
uses it. For the others the two-body decays that have a colour charge, in the decaying particle
or in a decay product, are run at NLO in QCD with MC@NLO (aMC@NLO at fixed order, one run per
kind of decay, up to four at a time). --nlo=smwidth and --nlo=mcatnlo choose the code.
--corrections chooses the corrections of the MC@NLO runs, QCD (the default), QED (the
electroweak ones, EW is accepted too) or QCD+QED; the electroweak corrections are for
every two-body decay, not only the coloured ones, and ask for a model with loop information
(loop_qcd_qed_sm). Asking for corrections is asking for MC@NLO, as SMWidth has both.
The model needs loop information: sm is replaced by loop_sm, a model that cannot make
loops stops the computation of that decay, which keeps its LO width with a warning. The decays
into three bodies or more are always at LO (madspace, or MadEvent), so that
--nlo --body_decay=3 is the two-body decays at NLO and the three-body ones at LO, and
--nlo --body_decay=2 the two-body decays alone:
compute_widths t w+ z h --nlo --body_decay=3
The result depends on the renormalisation scheme of the model: with the pole-mass Yukawa of
loop_sm, h > b b~ gets a correction of -35%, which is the known
1 + 4/3 alpha_s/pi (9/4 + 3/2 log(m_b^2/m_H^2)) and not what a physical width with a running
Yukawa has.
The options also go in the param_card, after the auto of a width:
DECAY 6 auto --nlo --body_decay=3
DECAY 25 auto --body_decay=2
DECAY 23 auto@NLO
(auto@NLO is the older spelling of auto --nlo.) The options are those of
compute_widths: --nlo, --corrections, --body_decay, --precision_channel,
--min_br and --engine. The widths with the same options are computed together, and
set decay 6 auto --nlo --body_decay=3 writes the same line from the card editor.
Validation against SMWidth¶
The two NLO codes can be run on the same model, the Standard Model with SMWidth
(loop_qcd_qed_sm, alpha(MZ) scheme, with its default card: m_t = 173.3 GeV,
m_H = 125 GeV, alpha_s(m_Z) = 0.118):
import model loop_qcd_qed_sm
compute_widths t w+ z --nlo=smwidth # NLO QCD and EW, a few seconds
compute_widths t w+ z --nlo=mcatnlo # NLO QCD, 4 runs of MC@NLO, about a minute
SMWidth adds the EW corrections to the QCD ones, which the default runs of MC@NLO (QCD) do not
have, so this first comparison is made on the QCD part (the electroweak one is below): the QCD-only column comes from the width functions of SMWidth called
with the orders (qcd, qed) = (1, 0), the LO column with (0, 0). The errors of the
MC@NLO column are the statistical ones of the runs (0.1%); the LO widths of the two codes agree
to 1e-4. Widths in GeV:
particle |
LO |
SMWidth, NLO QCD |
MC@NLO, NLO QCD |
MC@NLO / SMWidth |
SMWidth, NLO QCD+EW ( |
|---|---|---|---|---|---|
|
1.5462 |
1.4136 |
1.4130 ± 0.0020 |
0.9996 ± 0.0014 |
1.3673 |
|
2.1049 |
2.1586 |
2.1576 ± 0.0022 |
0.9995 ± 0.0010 |
2.0847 |
|
2.5138 |
2.5793 |
2.5783 ± 0.0020 |
0.9996 ± 0.0008 |
2.4888 |
The QCD corrections agree to 0.05%, which is within the statistical error. The EW corrections
that SMWidth also includes are -3.3% for the top, -3.4% for the W and -3.5% for the Z, relative
to the NLO QCD width. In MC@NLO the corrections are the NLO/LO of each two-body decay:
0.914 for t > w+ b, 1.038 for w+ > u d~ (1 + alpha_s(m_W)/pi is 1.0383 in the
dedicated code) and 1.037 for z > q q~.
The Higgs is not in the table: SMWidth returns the HDECAY total (running quark masses,
and the loop-induced gg, a a and z a), where MC@NLO has the tree-level decays only
and the Yukawa couplings of the model.
The electroweak corrections of the two-body decays can be run with MC@NLO too:
compute_widths t w+ z --nlo --corrections=QED # NLO EW, 8 runs, about two minutes
compute_widths t w+ z --nlo --corrections=QCD+QED # NLO QCD and EW
(the 17 two-body decays of these three particles are run in 8 distinct runs: the b is not a d,
its isospin partner being the top quark, but the light quarks of a type and the leptons
and the neutrinos of the families are alike). The same model and card give, in GeV (SMWidth
called with the orders (0, 1) for the electroweak corrections alone and (1, 1) for
both):
particle |
LO |
SMWidth, NLO EW |
MC@NLO, NLO EW |
MC@NLO / SMWidth |
SMWidth, NLO QCD+EW |
MC@NLO, NLO QCD+EW |
|---|---|---|---|---|---|---|
|
1.5462 |
1.5245 |
1.5260 ± 0.0034 |
1.0010 ± 0.0022 |
1.3918 |
1.3900 ± 0.0021 |
|
2.1049 |
2.0309 |
2.0307 ± 0.0021 |
0.9999 ± 0.0010 |
2.0847 |
2.0839 ± 0.0024 |
|
2.5138 |
2.4234 |
2.4232 ± 0.0017 |
0.9999 ± 0.0007 |
2.4888 |
2.4878 ± 0.0019 |
The two codes agree to 0.1% on the widths with the electroweak corrections, and to 0.13% (the
top quark) or 0.04% (W and Z) with the QCD and the electroweak ones. The top quark of SMWidth
is taken without the finite width of the W that compute_widths --nlo adds to it (1.3673
GeV): it is a three-body effect, not in a two-body decay. Channel by channel the electroweak
correction Gamma_NLO - Gamma_LO of MC@NLO is, in GeV (SMWidth in parentheses),
-0.02485 (-0.02477) for w+ > u d~, -0.00818 (-0.00814) for w+ > l+ nu, -0.01256
(-0.01230) for z > u u~, -0.01337 (-0.01335) for z > d d~, -0.01977 (-0.01973) for
z > b b~, -0.00273 (-0.00272) for z > l+ l- and -0.00359 (-0.00374) for
z > nu nu~, the last two within the statistical error.
Not supported yet¶
The following MadEvent features have no MG7 equivalent. Settings for them are ignored.
Matching and merging:
ickkw,xqcut,ktdurham,ptlund,dparameter,highestmult,ktscheme,alpsfact,chcluster,pdfwgt,asrwgtflavor,clusinfo,auto_ptj_mjj,pdgs_for_merging_cut.Biasing:
bias_moduleandbias_parameters.Beam polarization and heavy-ion or equivalent-photon beams:
polbeam1,polbeam2,nb_proton1,nb_proton2,nb_neutron1,nb_neutron2,mass_ion1,mass_ion2,ievo_eva,evaorder,eva_xcut.Fixed factorization scales for the two beams, and the scale parameters
mue_over_ref,mue_ref_fixedandfixed_extra_scale.Cuts that are not a bound on a single observable:
cutuse = 1, which accepts an event if any of the ordered jet cuts passes, and the vector-boson-fusion cutsxetaminanddeltaeta, which require the two hardest jets to lie in opposite hemispheres.Photon isolation:
ptgmin,r0gamma,xn,epsgamma,isoem.Helicity sampling:
nhel,limhel,hel_recycling,hel_filtering,hel_splitamp,hel_zeroamp.Event output options:
event_norm,lhe_version,boost_event,me_frame,frame_id,systematics_programandsystematics_arguments.