Repository navigation
Expand file tree
/
Copy pathUpdateNotes.txt
More file actions
2881 lines (2630 loc) · 192 KB
/
Copy pathUpdateNotes.txt
File metadata and controls
2881 lines (2630 loc) · 192 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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Update notes for MadGraph5_aMC@NLO (in reverse time order)
ANNOUNCEMENT:
The 2.9.X LONG TERM STABLE version is now at end of life for bug fixing/support since December 2025.
A new LTS (based on the current 3.5.X) is starting now and will act as the stable release for the coming years.
0.3.0 (XX/XX/XX):
OM: Bug fix: 'check_sa.exe perf' of 'output standalone' ignored the alpha_s
of the param card and always used 0.118 (the 'matrix' mode was right).
With --momenta/-e and --dump-me, the matrix elements at user points are
now evaluated with the card alpha_s.
OM: Bug fix: in 'output standalone_fortran' (without --prefix), a plain
'make' in SubProcesses built the python module of the first P directory
only. It now builds all of them, like 'make all'.
OM: multi_run:the merge of the runs (merge.pl) is now done in python, 5 to 10
times faster. Fix the normalisation for event_norm=sum (the merged sample was
N_run times too large) and the <rwgt> weights (systematics/reweighting), which
were not rescaled with the central weight. The relative weights of the events
(bias, MadSpin, ...) are kept instead of being set to the same unit weight.
OM: 'import model' now says when the model keeps a mass for u, d, s, e or mu:
such a mass is negligible at collider energies but brings in Yukawa
vertices and helicity configurations in every process, and
'customize_model' removes it. Silent for a massive b or tau, which is
the 4F scheme and a deliberate choice.
OM: Bug fix: mg7 runs on AMD GPUs (device = ["hip"]) aborted at the start of
the survey with "GPU error: an illegal memory access was encountered".
The GPU matrix element rounds the batch up to a multiple of 256 events
and computes all of them, but only the first 'count' events of the
padded batch received inputs. The flavour index of the padding events
was whatever the fresh allocation held, and cFlavors[iflavor] then read
far out of bounds. The padding events are now copies of the first event.
CUDA has the same code; it did not crash there only because the fresh
memory happened to hold harmless values.
OM: mg7 (madspace) now supports the run_card "me_frame", with the same meaning
as in madevent: it names the external particles whose momentum sum is put
at rest, and the matrix element is evaluated on momenta boosted into that
frame. Only the matrix element sees them -- the cuts, the scales, the
momentum fractions and the written event all keep the momenta as
generated. It only changes the result for a matrix element that is not
Lorentz invariant, i.e. a polarised one, and it is then the frame the
polarisations are defined in; the default [] applies no boost, so every
other run is unaffected and pays nothing. [1, 2] asks for the partonic
centre of mass, which is the frame madevent evaluates in, and [1] is its
equivalent for a 1 -> n decay. madspace generates its momenta in the lab
frame, so unlike madevent it reaches the requested frame in two steps,
through the rest frame of the incoming system: a single boost from the
lab would leave a Wigner rotation behind and pick different polarisation
axes than madevent.
OM: BUG FIX (reweight): for a sample generated with a non-default me_frame,
the matrix elements were still evaluated in the partonic centre of mass.
The frame was read from frame_id, which a run_card read back from the LHE
banner never sets (it always said 6, whatever me_frame was), and which an
mg7 banner has none of -- there me_frame = [] means no boost at all, the
matrix element having seen the lab-frame momenta. It is now read from
me_frame, LO, NLO and mg7 alike. Only polarised samples were affected.
RunCardMG7.from_LO now also carries me_frame over, instead of reporting
it as unsupported. MadSpin likewise takes the frame of an mg7 sample from
its run.me_frame, the default [] meaning the lab frame (no boost) rather
than the partonic centre of mass every other sample defaults to.
OM: BUG FIX (mg7): the initial-state mirror paired each event with a matrix
element evaluated on the momenta *before* the mirror was applied. madspace
covers the beam-swapped copy of an asymmetric initial state by rotating
the event by pi about x (py, pz -> -py, -pz), but only the written event
was rotated; the weight kept the momenta as generated. The two agree only
because |M|^2 is invariant under that rotation -- which a polarised matrix
element is not once it is evaluated in a frame that holds the polarised
particle at rest, because HELAS then quantises the spin along the frame z
axis, the mirror flips it, and the + and - states swap. p p > z{+} j and
p p > z{-} j evaluated in the Z rest frame came out 4485 +- 39 pb against
6060 +- 54 pb, 23 sigma apart, where the symmetry of a pp collider
requires them to be equal; they now agree within 1 sigma. The sum over the
three polarisations was already right, which is why no unpolarised result
is affected (checked: p p > z j unchanged at 12420 +- 69 pb). The matrix
element is now evaluated on the momenta the event is written with, which
is both what madevent does and what the systematics reweighting here
already assumed, since it reads them back out of the event buffer.
OM: 'customize_model' now works for every UFO model: generic options (flavour
scheme, massive leptons, diagonal CKM), commands to fix a parameter or a whole
block ('set decay all 0'), to change a formula, to choose the values written in
param_NAME.dat ('set default'), and --explain to say what each choice removes.
OM: New command 'explain_restriction': report what a restriction card removes.
OM: Bug fix: a parallel build of a generated Source/ could fail and still be
reported as a success. Every library rule read 'cd DIR; make; cd ..', so
the recipe returned the exit status of the final 'cd' -- always 0 -- and a
failed sub-make went unnoticed until a subprocess directory later died
with "No rule to make target '../../lib/libdhelas.a', needed by 'gensym'".
They now use 'cd DIR && make'.
The underlying failure was a 'make -j' race on Fortran module files: the
Majorana-flip DHELAS routines and PDF/pdfwrap_lhapdf.f 'use model_object'
(from MODEL/flavor_couplings.f), the other MODEL sources use it too, and
the ALOHA routines 'use aloha_object' (from DHELAS/aloha_functions.f).
Order-only prerequisites now enforce those three orderings.
OM: 'set madanalysis_path'/'set td_path' no longer raise: the options are gone
with MadAnalysis4, so a value that would only disable them is ignored
silently and any other value warns once and is dropped. Stale entries in an
old configuration file are dropped the same way. This keeps old command
files and old process directories working.
OM: Removed MadAnalysis4 support. The 'install MadAnalysis4' command, the
'madanalysis_path'/'td_path' configuration options, the 'plot' command of
both madevent and aMC@NLO, the plot_card.dat and the topdrawer-based
plotting of the parton/Pythia6/PGS/Delphes outputs are all gone. The
topdrawer ('td') binary it relied on is no longer downloadable, so the
install had been broken for a while. Use MadAnalysis5 or Rivet instead.
The Pythia8 merging (DJR/pt) plots are unaffected: they go through HwU.
OM: Bug fix: OrganizeModelExpression.track_dependant is a class attribute that
analyze_parameters() was extending in place, so the tracked variables of one
UFO model leaked into every model imported afterwards in the same process.
Importing a Gmu-scheme model (no external aEWM1) added 'Gf' to the class
list for good, and a later import of e.g. loop_sm then grouped mdl_MW under
('aEWM1','Gf') instead of ('aEWM1',), reordering mp_intparam_definition.inc.
Each instance now works on its own copy.
3.8.1 (XX/XX/XX):
OM: LO: the final unweighting no longer truncates the events above the maximum
weight; they keep the weight w/w_max in units of the common weight
(part of the under-population of the tails).
OM: LO: fix dsqrt_shatmax: the phase-space grids were set in the wrong units, giving a zero
cross-section for 2>1 processes (e.g. p p > z) and a crash (Bjorken x > 1) when
dsqrt_shatmax was above the collider energy. dsqrt_shatmax <= 0 now means no cut
(was a zero cross-section).
ALL: Include all bug fixes from LTS 3.5.17 (see below)
3.8.0 (15/09/26):
OM+SA+VD: MadSpin2 (2609.02794)
- Arbitrary decay, support for loop-induced processes, interference, Pole Approximation mode, polarization weights, ...
FM+OM+VD: Quantum Information mode (2510.17730)
- Computation of density matrix for tree level and loop-induced
- Reweighting mode to get the density matrix over a sample of events
- Quantum Information python library for easy analysis (including many QI variables)
HS+LM+LS: P-Wave Support for Quarkonium/Leptonium (2607.26739)
Bug Fixes:
OM: Bug fix custom files for cuts/scale/... were broken for NLO computation
since 3.6.0
OM: Bug fix (since 3.6.0) for rapidity cut in asymmetric collision
(ebeam1 != ebeam2)
BF+JT: Fix two independent loop-wavefunction bugs in
check_majorana_and_flip_flow for models with sextet/Majorana
OM: MadSpin onshell_v1: wrong identical-particle factor between decay-chain
and production ME
OM: MadSpin v1: two beam-polarisation fixes (wrong polbeam convention,
reweighting applied after the helicity sum), both since 3.6.3
OM: Beam polarisation applied twice when a beam helicity is fixed in the process
OM: Long run_card lines (e.g. systematics_arguments) were truncated
in the LHE banner
OM: Make Source/make_opts writes atomic to avoid corrupted files
3.7.3 (01/09/26):
OM: MadSpin: the run_card me_frame and polbeam1/polbeam2 are now honoured by the
density-based spinmodes (onshell/PA/madspin/full) and no longer only by the
legacy madspin_v1/onshell_v1 paths.
- beampol reweights the initial-state helicity sum inside the density matrix,
through a new PY_SET_BEAMPOL entry point of the matrix-element library;
- me_frame boosts the momenta of the production and of every decay into the
selected frame before the matrix element sees them, which is what defines
the axis those helicities are quantised along. The boost is skipped for
unpolarised beams, so unpolarised runs are unchanged bit-for-bit. Note
that -- in the density modes as in the v1 path -- the frame turns out not
to change any observable: the initial-state legs are massless, so their
helicity labels and each fixed-helicity |M|^2 with them are boost
invariant, and so is the reweighted sum. What the boost does change is the
basis the individual density-matrix elements are written in, which is why
the production and every decay have to be boosted with the same momentum.
- "set frame_id"/"set beampol" in the MadSpin card now override the run_card
values instead of being silently discarded.
OM: Two MadSpin bug fixes in the beam-polarisation support of the legacy
madspin_v1/onshell_v1 paths (both since it was added in 3.6.3):
- the run_card polbeam1/polbeam2 were converted to the [0,1] left-handed-
fraction convention of the EVA PDF and then fed to a matrix-element
reweighting that expects madevent's /to_polarization/ convention. As a
result, an *unpolarised* run (polbeam=0 -> beampol=0.5) applied a spurious
factor 0.5 to one initial-state helicity and 1.5 to the other, while a
fully polarised beam (polbeam=-100 -> beampol=1) applied nothing at all,
and the sign of the polarisation was flipped. The mapping is now
sign(1+|polbeam|/100, polbeam), as in setrun.f;
- in matrix_standalone_msF_v4.inc the reweighting was applied after the
helicity sum rather than before it, so only HELAMP was polarised and the
full matrix element -- the numerator of the MadSpin decay weight, and the
only place the polarisation can reach the decay angles -- stayed
unpolarised. The decay distribution of the v1 path was therefore
insensitive to any partial beam polarisation (100% happened to work by
accident, through the GOODHEL filter zeroing the disfavoured helicities).
OM: BUG FIX (MadSpin): when two or more final-state particles with the same PDG code were decayed
via *different* decay lines -- e.g. "p p > z z" with "decay z > e+ e-" and "decay z > u u~" --
the two decay branches were paired with the two mothers in reverse order. The spin-correlated
weight of a given mother was therefore evaluated with one decay branch while the decay products
of the other branch were attached to it. Decay angular distributions were consequently wrong
(in p p > z z the lepton/quark helicity angle is off by ~45 sigma on a 200k event sample), while
the cross-section, the branching ratios, the decay-plane angle and the spin-correlation
observable <cos(theta_1) cos(theta_2)> were left exactly invariant -- which is why this stayed
unnoticed. Processes where each decayed particle carries a distinct PDG code (t t~, w+ w-, ...)
were never affected.
OM: BUG FIX (polarisation): LO cross-sections computed with a run_card "me_frame" that selects a
single particle -- e.g. "me_frame = 3" to work in the Z rest frame, which is the standard way
to ask for the polarisation of that Z -- were wrong for a fraction of the events.
OM: Allow to have +,- polarization restriction for onshell massive boson propagator
RF: Fix an issue in the collection of events at NLO when using too many cores (introduced in 3.7.2)
RF: Allow to have HWU histograms render with matplotlib instead of gnuplot
OM: improved fix for a missing LHAPDF argument in the info file
3.7.2 (07/07/26):
MZ: negative seeds are now allowed and are strictly pinned (so no automatic reset to 0 for the following run).
negative seeds are identical to positive ones (both produce exactly the same sample)
RF: Fixed the writing of LHE files in fixed-order computations that was broken since the previous release (3.7.1).
OM: Ensure that goldstones are merged with the SM coupling for FD gauge.
Note that FD needs models that are built such that the renormalization does not induce a shift of the SM values
OM: Allow the possibility to run Delphes in multicore. Compatible with the hepmc mode of pythia8 or autoremove
to avoid the costly merging of hepmc files.
OM: introduce two options nb_core_pythia8 nb_core_delphes
OM: Fix systematics.py for pdf variation for pdf set different than the original (thanks to Z. Marschall)
OM: (Try) to automatically update a pdf set if the pdf set has missing keys (like AlphaS_NumFlavors)
Team: include all bug fixes from 3.5.16 (see below)
3.7.1 (29/04/26):
OM: Change the handling of seed at NLO, after a run with a given seed, the seed is reset in the run_card
to 0 (automatic) meaning that the next run in the directory will be with a different seed.
Note that this was the behavior at LO already.
OM: Allow easier syntax in the run_card.
You can now use "set lpp1 e-" instead of "set lpp1 3"
You can now use "set fixed_scale mz" instead of "set fixed_scale 91.1880"
You can now use "set dynamical_scale_choice ht/2" instead of "set dynamical_scale_choice 3"
OM: Change the implementation of the "$" syntax such that the implementation moves at the amplitude level
This means that the syntax is now also supported at standalone level (bwcutoff hardcoded to 15)
This has no impact if sde_strategy=1 but avoids issue with sde_strategy=2.
We still recommend sde_strategy=1 when using the $ syntax since you can have spurious writing of resonances
in the lhef with sde_strategy=2.
RF: Refactored the code that collects all the events from the various channels
into a single event file at the end of an MC@NLO run.
OM: Remove the dependency on the six package
MZ+LJ: Bug fix in ew_sudakov (one in the color matrix and one in the value for alphas)
OM: Fix a couple of issues with the linking of the heptools library (especially on ubuntu)
RR: Extended propagator support for polarised bosons (https://arxiv.org/abs/2512.10015)
See https://github.com/mg5amcnlo/mg5amcnlo/pull/215 for simple instructions
OM: Cleaner version of how MLM selects the color for events
Team: include all bug fixes from 3.5.14 (see below)
Note slightly different handling of default parameter when a parameter is not within the run_card
3.7.0 (05/01/26):
RR: When carrying out parameter scans in MadGraph/MadEvent or MG5aMC@NLO with systematics (use_syst True or reweight_scale/pdf True), then the uncertainty information is also recorded in the scan summary.
RR: Enhance the equivalent vector approximation (EVA) implementation by adding full leading-power and next-to-leading-power accuracy modes, plus an optional xcut kinematic restriction, refactor core routines in both Fortran and Python, and introduce new (hidden by default) run_card parameters 'eva_xcut' to enable or disable the kinematic restriction x>MV/Ebeam in EVA.
LS: Support for NLO calculations in ultra-peripheral collision (UPC) processes (see arXiv:2504.10104)
Details: Introduce tagged initial-state photon (with symbol !a!) to denote coherent incoming photons in UPCs
→ Prevents generation of ISR diagrams involving initial-state fermion splitting
→ When QED corrections are requested, adopt the hybrid renormalization scheme (same as for tagged final-state photons)
→ For Born processes containing jets j, replace coherent photons !a! with the multiparticle aUPC, which includes all jet fermions plus the photon, ensuring all underlying Born diagrams required for subtraction are generated
SR: adding support for multi-gpu
3.6.7 (05/01/26):
ALL: include bug fixes for the 2.9.x LTS (latest bug fix for that LTS: 2.9.27) and from the new LTS 3.5.12
OM: improvement of the help command (the manual) for the set command.
Now any "set" command has its own help via "help set <name>"
GabrielMajeri: Add support for pigz (parallel version of gzip) speeding up the code
jakobnov: Adding support for checkpointing at NLO (with DMTCP), see "help set checkpointing" for details.
MZ: Fix another issue with the color matrix (introduced in 3.6.2) for computations with an interference term
OM: fix a crash for loop-induced processes (related to the dilog function defined twice --introduced in 3.6.6--)
3.6.6 (30/10/25):
OM: Fix a serious bug in the lhe writing of events where some intermediate particles were wrongly written in the file.
OM: change in default restriction for coupling order for BSM (closer to 2.9.x behaviour)
OM: new plugin feature: possibility to customize the entry in the scan summary file
OM: Fix the support of some electron/muon PDFs at LO
OM: User using git will now have the git version/tag printed in the banner of MG5aMC instead of a warning
3.6.5 (17/10/25):
MZ: Ensure that the code is crashing at NLO when the analysis contains a syntax error
OM: add a "compile" command at LO
OM: Fix a bug in cudacpp where the color of the events was wrongly selected when writing the events into the lhef file
3.6.4 (13/9/25):
RF: Fixed critical bug in FxFx merging, introduced in version 3.3.1. This resulted in too many negatively weighted events,
and too many high-pT jets. Particularly relevant for merging with up to 2 or 3 jets at NLO. Thanks to Lenart Jerala
for pointing this out and testing the fixes.
ALL: Merge with 3.5.10/2.9.25 bug fix (see below)
Include a change in the polarization reported for intermediate particles
(9 reported now instead of 0)
3.6.3 (12/6/25):
OM: Fix conversion model for the FD gauge
OM: Include all bug fixes from 3.5.9 and 2.9.24
OM: Fixing a bug that EW was by default on NLO+PS mode and not fixed order
3.6.2 (19/3/25):
RF: Implemented flavour_bias parameter in the NLO run-card to allow for biased event generation
based on the flavours of the external particles, as used in 2403.14419.
RF: Use a grid for the running of alpha_S (NLO only and only when not using LHAPDF).
Andy Buckley: change jpg output by png output for better quality (with OM)
RF: Updated histograms.py to prevent warnings/errors with latest gnuplot version
OM: Update Color computation (that part of the computation is close to two times faster and
much faster to compile)
3.6.1 (29/11/24):
OM+MZ: Fix a bug for lhapdf at NLO where the code was incorrectly changed like the LO version (and was crashing at compilation)
OM: Fixing various compilation issues at LO
ALL: Include fixes from LTS 3.5.7 and 2.9.22
- including some rare but serious bug in scan
- including support for python 3.13 (but for f2py related feature)
3.6.0 (30/09/24):
PT+RF: fixed the Pythia8 script so that SCALUP in the LHE file is ignored only when using FxFx or MC@NLO-Delta
OM: Allow the scan command within the run_card.
Note that such command can NOT be used if the scan command is used in the param_card.
so the following command is now working:
set ebeam scan1:[6500,7000]
Thanks to Kentarou Mawatari for pushing me to implement this.
DP+TV+MZ: Implementation of EW Sudakov corrections. See 2110.03714 and 2309.00452
AV+SR+SH+ZW+DM+OM: Implementation of the support for batch of events at LO.
This will allow to support the cudacpp plugin that will offer
- GPU support for LO processes
- SIMD support on cpu
Those modes need to install the cudacpp plugin (can be done via the command "install cudacpp")
This feature also add OpenMP support for LO process (deactivated by default and which does not need the plugin).
OM+JK+KM+KH+YJZ: implementation of the FD gauge via "set gauge FD" [2203.10440, 2405.01256]
3.5.17 (9/10/26):
RF: Fixed a bug in FxFx merging: MG side used inclusive-kT measure, PY side used exclusive. This mismatch resulted in an
underrepresentation of events in DRjj<1.0, particularly visibile in boosted configurations. Thanks, Sihyun Jeon.
OM: LO: setting mmnl without mmnlmax (default -1) silently removed the mmllmax upper cut
for processes with exactly two leptons/neutrinos.
OM: Fix beam polarization being applied twice when the helicity is fixed in the process definition
(e.g. "ve{L} d > e- u" was twice too large with polbeam1=-100) [bug #2148181]
OM: (NLO) Fix the truncation of long run_card lines (e.g. systematics_arguments) in the LHE banner [bug #2046152]
OM: MadSpin: fix decay branches assigned in reverse order to identical particles with different decays
(e.g. p p > z z with "decay z > e+ e-" and "decay z > u u~", also within a decay chain). Cross-section unchanged but decay
angular distributions were wrong.
OM: Reweighting: fix the crash when a non-default me_frame was used. The frame is now built as in madevent
(from the partonic center of mass) and used for both the original and the new matrix-element.
OM: Fix lhe_parser crash (or wrong output) when an event only matches the charge-conjugated process
OM: Fix FourMomentum.boost when the boost vector is at rest (e.g. partonic frame of a lepton collider)
OM: ALOHA: fix the sign of even power of the momentum for outgoing fermion in custom propagator
OM: LO: the s-hat sampling starved the region below M-5*Gamma of every resonance not in a decay chain
(e.g. p p > e+ ve j with mmnlmax=40 was 25% too low) and nested resonances (t > b w+, w+ > e+ ve)
were counted twice (single top p p > e+ ve b j a few percent too low).
OM: LO: fix the propagator denominators of the multi-channel weights of sde_strategy=2 (mass and mass
squared were mixed and the width entered as Re(1/D^2) instead of 1/|D|^2). The weights did not follow
the resonances, leading to slow integration and biased results (e.g. p p > e+ e- j 3.5% too low,
single top 1% too low).
RF: (NLO) Fix compilation of every NLO process with gfortran 16 (virtgranny_red not declared external
in genps_fks.f)
3.5.16 (3/7/26):
OM: fix a crash with systematics when the original pdf was not detected
OM: fix some loop-induced compilation issues
OM: avoid new Python syntax warnings
3.5.15 (17/4/26):
OM: revert a change of 3.5.14 on the grid handling to be more secure on the change
OM: Additional fix related to the matchbox template
3.5.14 (10/4/26):
OM: Fix an issue in how sextets were written within the lhef output
OM: Small change in the way default values are taken if some parameters are not present within the run_card
Now the default value will be taken first from the run_card_default.dat (which is process specific)
rather than using a hardcoded default. This is required to correctly take sde_strategy=1 when
a process uses the $ syntax (which is not compatible with sde_strategy=2). Note that 3.7.1 does change the
"$" handling to avoid such a type of issue in a cleaner way.
OM: Fixing various small issues related to linking to HEPTools
OM: Change some API for the matchbox output (for the interference case)
OM: Handle UFO models which are not python3.13 compatible (in the write_param_card.py script)
OM: Change in how madgraph sets up the grid for shat, to better handle processes at high energy and with very soft cuts
This also better handles the p p case since the grid is now aware of the implicit cut related to the CKKW merging scheme
3.5.13 (05/01/26):
VD: fixing issue with custom functions that moving back to no custom functions was not correctly recompiling the code.
OM: change f2py interface to make madspin/reweighting compatible both above and below python3.12
OM: merge with the latest version of the 2.9.x LTS (2.9.27)
in particular fix a bug for event with discarded overweight (with RF)
3.5.12 (30/10/25):
OM: Change in gensym to better determine which channels have an impossible BW configuration. This removes many spurious warnings.
OM: include bug fixing from LTS (2.9.26) --see below --
3.5.11 (19/9/25):
RF: Fixed critical bug in FxFx merging, introduced in version 3.3.1. This resulted in too many negatively weighted events,
and too many high-pT jets. Particularly relevant for merging with up to 2 or 3 jets at NLO. Thanks to Lenart Jerala
for pointing this out and testing the fixes.
3.5.10 (13/9/25):
All: propagate bug fixing from 2.9.x version (up to 2.9.25)
3.5.9 (4/6/25):
OM: Fixed an issue in fixed_fact_scale when set to T where sometimes some beams were kept on False (in an asymmetric beam context)
OM: Fixed a wrong scale assignment when beam#2 was dynamic but beam#1 was static (at LO)
ALL: Include fix from 2.9.24 (including support to GCC15 + bug in madspin with GCC13)
OM: (thanks to SungBeom Cho) crash when running multi_run during the merging of multiple lhe files if
MadSpin was activated (if the BR was different from one). If the BR=1, the merging was going through but
the merged sample would contain both decayed and undecayed events, making that file pointless.
3.5.8:
OM: Fix a quite serious bug introduced in 3.2.0:
The scale choice can in some cases be assigned in an asymmetric way in the presence of mirror processes.
This was leading to an asymmetric z -> -z production for LHC processes.
OM: Fixing a gridpack issue that cross-section was wrongly reported in the comment of the banner
Thanks to Joon-Bin-Lee and the CMS validation team for having identified those two bugs.
OM: Include fix from LTS 2.9.23
3.5.7 (29/11/24)
OM: Include fix from LTS 2.9.22
3.5.6 (26/9/24):
OM: Include fix from LTS 2.9.21
OM: fixing gridpack with large number of events (issue with the new strategy of combining events)
3.5.5 (17/06/24):
OM: Fix a bug in the new strategy of combining events.
OM: Allow slurm/condor cluster to specify the wall time of the jobs (cluster_walltime)
OM: add new (hidden) entry in the run_card to force to keep all the log file (keep_log)
OM: Fixing a matchbox issue (introduced in 2.9.0)
OM: Dynamical scale choice for NLO can now be set via custom_fcts (was bugged before)
OM: Include fixes from the (other) LTS 2.9.20
3.5.4 (05/04/23):
MZ+RF: Bug fixes:
1) a bug related to event-generation, when virtual corrections include more than one
coupling combination (so NLO QCD to SM processes were **not** affected), in particular
when the coupling combinations have different sign. The contribution
from the virtual amplitude was wrongly accounted for, resulting in unphysical distributions.
Thanks to Haoquan Ren for reporting it.
2) a bug related to NLO EW corrections at lepton colliders, for initial-state FKS configuration.
Phase-space points for which the real-emission momentum generation was failing but the Born one
was passing were thrown away altogether.
Thanks to Riccardo Lubello for leading to the identification of the bug.
OM: Change the way restriction models work, to be more aggressive in the data structure.
This was triggered by the fact that the virtual was considered different if some unused Lorentz structure
was left in the model/interaction. This allows to get back to the behaviour of the LTS version in terms
of number of directories for QCD processes and therefore gain disk area and speed-up the code.
OM: Change in the unweighting strategy for processes with a large number of channels (>80).
If you have deactivated the limit of number of open file (via the ulimit command) then the unweighting will be
done in a single step in one core (typically the most efficient strategy).
If not possible, then the unweighting will be done by packets of 80 channels in a multi-core way.
Then those packets will be merged together in a second step (single core).
In this second case the algorithm has also been made more aggressive.
Speed-ups of a factor 20 have been observed in some extreme cases.
Thanks to Mark Goodsell and Stephan Hageboeck, for pushing me on this and for your help.
OM: Python3.12 status:
- many (python) warnings are raised when running with python3.12. Work is in progress (and will be very long) to
remove all those warnings.
- f2py (needed for reweighting/madspin) is quite impacted by the drop of distutils and typically fails to compile
with the meson backend. numpy version 2.x (not yet released) will be the minimum for reweighting/madspin.
OM: Allow (back) LHE output in fixed-order format (thanks Gauthier)
OM: Change the internal representation of fixed_order card, that allow to use the set command to edit the card.
like for the param_card/run_card/...
OM: relax polarization restriction at NLO for massless particles.
SJ+OM: fix an issue with not correctly saving where fastjet was installed when installing it via the MG5aMC install command
SJ: Fixing rivet running, which was broken due to some libraries not being correctly linked
OM: Include bug fix from 2.9.19
3.6.0:
OM: Stop support for model in the legacy v4 format
3.5.3 (22/12/23)
OM: Include Bug fix from 2.9.18
OM: Update inner representation of the shower_card allowing to support any py8 parameter
3.5.2 (08/11/23)
MZ: fixing issue for 2>1 processes at NLO accuracy (like p p > Z [QCD])
For most compilers the process was just crashing, but some compilers were returning absurdly large cross-sections
RF: update tests at NLO to better include phase-space cuts
OM: Change restriction model to be less sensitive to numerical accuracy
OM: bug fixing from LTS up to 2.9.17 (see below)
PT: added options for matrix-element corrections in the shower card for PY8
3.5.1 (11/07/23)
SH+OM: Update interface for contur
OM: fix an issue with NLO reweighting introduced in 3.4.0 where loop scale was not correctly set anymore
OM: Better determination of zero helicity for helicity recycling part of the code
OM: Fix issue for powheg output
OM: bug fixing from LTS up to 2.9.16 (see below)
3.5.0 (12/05/23)
VB+MC+SF+GS+MZ+XZ: NLO EW implemented for lepton-lepton collisions with ISR and beamstrahlung
See 2207.03265 and the FAQ https://answers.launchpad.net/mg5amcnlo/+faq/3324 for details.
NNL-accurate parton distributions for lepton collisions are provided by eMELA
https://github.com/gstagnit/eMELA/releases
SF+MZ+PT+PY8author: Introduction of MCatNLO-Delta, a new matching procedure allowing to have less
negative events generated (see 2002.12716)
OM: MadSpin has now a syntax for handling semi-leptonic decay
not supported in spinmode=onshell/none
OM: possibility to install eMELA (install eMELA)
HS: Adding support of UPC
Bruno-Miguel-Oliveira: conform with the XDG Base Directory Specification for history/config file:
https://github.com/mg5amcnlo/mg5amcnlo/pull/45
OM: bug fixing from LTS up to 2.9.15 (see below)
3.4.2 (20/01/22)
ALL: fixing bugs related to 2.9.13 (Long Term Stable: see below)
OM: fix issue with hepmcremove (thanks to franaln)
OM: fix some issue with addmodel
OM: fix issue with the update of the param_card to set the used value for alphas
OM: fix issue with wrong env variable for pythia8data (thanks pavel)
3.4.1 (01/09/22)
MZ+CS: PineAPPL now supports user-defined bias_wgt_functions.
RF: removed a write statement in the reweighting routine (to get scale and PDF uncertainties at NLO+PS runs) that cluttered the reweight_xsec_events.output log files.
OM: Fixing an issue with lhapdf when trying to use a pdf set not yet installed within the database
All: in sync with bug fixing in LTS (version 2.9.12)
3.4.0 (06/05/22)
SJ: Allowing to use RIVET/CONTUR from madgraph. In the presence of a scan, such running can also be done
at the end of the scan. (Contribution from Sihyun Jeon)
OM: Allow EFT operators to run for some special UFO models (quite a restricted class of running is supported
-- corresponding to EFT running --)
OM: change reweighting/spinmode=onshell (from madspin) to use the average of the matrix-element when it exists an order ambiguity in the matrix element like for the following process:
p p > e+ ... z, z > e+ e-
where permuting the momenta of the "e+" does not lead to the same
matrix-element.
CF: include notification when jobs are done in the unix notification center if executable notify-send is present.
Contribution from Carlo Flore.
All: Dropping the support for python2.7
All: include bug fix from Long Term Stable version (2.9.10) see below
3.3.2(18/03/22)
OM: (re)allow --loop_filter=True/... syntax for MC@NLO
RF: Fixed a bug in the phase-space generation of MadSpin,
relevant for processes with more than 1 t-channel.
MZ: Restored functionalities for processes with external photons and
only QCD corrections
all: include all bug fix from the LTS version (2.9.9)
including important bug on MLM generation
3.3.1 (04/12/21)
RF: Fix for bug #1928364 related to the new FxFx clustering routines.
OM: Fix for bug #1952050 systematics/reweighting run at NLO that was broken
introduced in 3.3.0
OM: Fix bug related to python 3.10
OM: Fix bug when running from the process directory
all: include all bug fix from the LTS version (2.9.7)
including important bug on MC@NLO and on madspin
3.3.0 (12/11/21)
DP+HS+IT+MZ: EW corrections can be computed for tagged photons
OM+RR+AC: Implementation of EWA within MG5aMC (PDF for W/Z boson out of lepton beam)
MZ+CS: A fix in amcatnlo_run_interface to prevent integer overflows when a
very high precision is requested.
MZ+CS: Fixes/improvements relevant to PineAPPL:
- the function pineappl_grid_optimize is called by pineappl_interface,
to reduce the size of the grids. PineAPPL v0.5 or later is required
- minor fix on the gluon pdg code in pineappl_interface.cc
- the integration channels are treated the same way with or without PineAPPL
(maxchannels is kept the same in both cases)
RF: Fix for montecarlocounter in case the Born is not strictly positive
(i.e., only interference contributions).
RF+IT: Rewritten the clustering code for FxFx. This allows for
separation of QCD and EW jets. Needs special JetMatching.h for
Pythia8 (can be found in Template/NLO/MCatNLO/Scripts/JetMatching.h)
OM: adding a new cut dsqrt_shat to set a minimum center of mass energy cut
OM: allow the support of latest LUX PDF with lepton content of the proton
Note that running PY8 is automatically forbidden in that case.
ALL: include bug fixing from Long Term Stable version version (2.9.6) see below
OM+RR: better handling of multiparticles with both photon and massive vector when
the user asks for longitudinal polarization. Longitudinal photons are automatically
discarded. (This overwrites the LTS fix that was simply making the code crash)
OM: Fixing a bug introduced in 3.1.0, where the automatic setup of FxFx
was broken.
OM: Code update to avoid randomness in ordering in code generation (only in debug mode)
3.2.0 (22/08/21)
SF/OM/MZ/XZ: Implementation (at LO) of ISR and beamstrahlung for e+e- colliders
BUG FIX (from 2.9.5 long term stable, see below)
OM: Fix an infinite loop when running with condor cluster
or with other cluster/multi-core when cluster_temp_path
was used.
3.1.1 (28/05/21)
ALL: put a crash for potentially ambiguous syntax with explanation
on how to bypass such crash via a new entry in
input/mg5_configuration.txt
BUG FIX (from 2.9.4 long term stable)
3.1.0 (30/03/21)
ALL: include all changes up to 2.9.3 of the 2.x release
ALL: pass to python3 by default
MZ+RF+OM: Fix relevant to the case when PDG specific cuts are set in the NLO run_card.
The generation of tau was not taking into account the information.
DP+HS+MZ: Allow for the computation of NLO EW and complete NLO corrections in the 4FS
MZ+SC+ERN+CS: The code can be linked to PineAPPL (arXiv:2008.12789), making it possible
to generate PDF-independent fast-interpolation grids including EW corrections.
This supersedes the interface to ApplGrid+aMCFast which was not working in v3
MZ: Change syntax meaning in 3.0 series to be consistent with the one of 2.0 series:
QCD<=X, QED<=Y apply at the amplitude level (not to the squared amplitude anymore).
Squared-amplitude constraints can be imposed by using the usual squared-order
syntax, e.g.:
QCD^2<=X, QED^2<=Y (constrained at the diagram squared level).
MZ: Different coupling combinations and their scale variations are written in the
event file as extra weights
OM: Some aliases have been added for the orders constraints:
- aEW<=X / aS<=Y is equivalent to QCD^2<=2X / QED^2<=2Y
- EW<=X / EW^2<=X is equivalent to QED<=X / QED^2<=X
** Long Term Stable Update **
2.9.27 (05/01/26): LAST Bug fix for that LTS version
OM+RF: Fix an issue where overweights were discarded, leading to some under-estimation
of the tail (and of the error)
OM: fix madspin onshell in the computation of the BR when multiple decays were present
OM: correct an issue with exrootanalysis where the event file was deleted due to an unhandled flag on how the file was unzipped
OM: add warning message for python37,3.8,3.9
Alexander Puck Neuwirth: Fix quotes and permissions in PYTHIA8 script
2.9.26 (30/10/25):
OM: setup the code to not print the python3.12 syntax warning anymore (still printed in debug mode)
OM: fix card edition issue when combining "set" and "edit" command
OM: fix some additional issues related to GCC15
2.9.25 (11/9/25):
OM: (thanks to SungBeom Cho) crash when running multi_run during the merging of multiple lhe files if
MadSpin was activated (if the BR was different from one). If the BR=1, the merging was going through but
the merged sample would contain both decayed and undecayed events, making that file pointless.
(fixed first in 3.5.9)
OM (thanks to Julien for the help) fixing a wrong color computation in the presence of sextets where the color matrix
was wrong starting at 2>4
2.9.24 (23/05/25)
OM: Fix some compilation issues with the GCC15 compiler
OM: Fix a serious bug in MadSpin where the benchmark used to generate the sample was ignored by MadSpin and it was using the default of the benchmark instead. This was clearly indicated by a warning stating the fact that the default benchmark was used.
This bug is more compiler specific than madgraph specific, so this bug is likely present since MG5aMC v2.0.0 if you use a recent version of GCC (like GCC13 or GCC14)
2.9.23 (14/03/25)
MZ: fix in the pseudorapidity function in lhe_parser FourMomentum class (super minor issue)
2.9.22 (29/11/24):
OM: Fix an (NLO) issue if the environment variable FFLAGS was set
OM: set auto_update X, now automatically set the configuration file (as it should).
OM: Fix a bug in helicity recycling with scan for rare case where a matrix element is first correct, then zero, then has a single helicity.
In that third case, the code was not recompiled correctly and was picking the wrong amplitude.
Thanks to Matteo Maltoni for finding such bug
OM: Starting support for python3.13, as for python3.12, functionality like reweighting will not work with the 2.9.x LTS branch.
2.9.21 (26/9/24):
OM: Adding support for GCC14 (thanks to joequant)
OM: Fixing a rare issue within aloha where some generated code was not compiling
OM: Fix issue with Pythia8 when running in run_mode=0
OM: Fixing gnuplot related issue (when pythia8 was running)
OM: Avoid a numerical inaccuracy issue when the user requested a boost to the center of mass frame for a non Lorentz invariant amplitude
OM: Avoid to use sde=2 by default for more processes (like Drell-Yan)
2.9.20 (17/6/24):
OM: Fix a wrong syntax handling for decay chain like
generate ... > A A B , B > , A > , A >
where due to the different order in production (AAB) and in decay (BAA)
all A particles were decayed with both decay modes, instead of with their specific ones.
(present since v1.0.0)
Note this bug can still be present if A or B are multi-particles, in that case we advise to use
the same order for the production and decay syntax.
OM: Fix an issue with helicity recycling if some processes did not have available phase-space.
In some situations, the cross-section was reported as simply zero even if other processes were
kinematically allowed (thanks Sihyun Jeon)
OM: Improving the detection of cache invalidity for UFO model (thanks A. Valassi)
OM: Fix compilation of Stdhep on some unix machines (thanks jmcarcell)
OM: Fix an issue with the weight normalization when running PY8@LO
2.9.19 (20/03/24):
OM: Fix a "cot" issue introduced in 2.9.18.
OM: Fixing some regular expressions for the way the fortran writer works.
The bugged expression was not spotted as problematic for the LTS version.
OM: Fix some compiler issues with modern compilers for rambo (standalone mode)
OM: Fix one rare bug for helicity recycling (case without propagator)
2.9.18 (08/12/23):
OM: Fix a bug for processes extremely close to threshold, where
the initial grid for some angle was wrongly biased towards \theta=\pi.
In extreme case, the determination of the non-zero helicity was starting to
remove helicities proportional to (1+\cos\theta) since theta was so close to \pi.
While the grid bias was corrected after the first iteration, the accidental removal of helicity
could lead to a bias in the cross-section. One way to detect if you are impacted by such a bug is to
run 5 times with different seeds: if the cross-section fluctuates between two values then you are
impacted by such issue.
OM: Implement better handling of the phase-space when you have a S-channel Breit-Wigner but where cuts prevent
such a resonance from being onshell. (Thanks Sihyun Jeon)
OM: Implement better handling of the MMNL cut if the process has exactly two leptons (including neutrino).
This improves the phase-space integrator when MMNL is used for putting invariant mass cut on single W production
OM: Change the support of the function "cot" within ufo model to have it consistent with UFO convention.
It might potentially impact old UFO models; please contact us if this is the case
OM: Fix a critical bug when exporting code with two different models where the second model was not correctly imported
(likely a python3 only bug)
OM: Fixing issue when using cluster_tmp_dir in multicore mode
OM: add a warning concerning the status with python3.12
2.9.17(19/10/23):
OM: change integration strategy (SDE=1) for width computation
OM: clearer error message in some situation
2.9.16(26/07/23):
OM: fix for helicity recycling
OM: Update numpy support to latest version
OM: Fix some interface issue
2.9.15 (12/05/23)
OM: Fix a bug where the number of cores used was higher than requested
OM: Reduce RAM used by madspin
OM: Fix a rare issue with helicity recycling leading to an incorrect format in the generated code (and a crash)
OM: Fix an issue with param_card parsing for some blocks not related to the model
OM: Fix compilation error for stdhep
OM: Fix one issue for sextet model/process
2.9.14 (17/02/2023)
OM: Fix some "output aloha" commands, where some routines were not defined
OM: Fix a crash in the multicore mode when 0 job was needed. (introduced in 2.9.13)
2.9.13 (01/12/2022)
OM: Fixing display diagrams on MacOS Catalina
OM: fixing issue within reweighting module where runname was not respected during scan
OM: remove unused thread which should allow large scan
OM: fix a compilation issue of IREGI
OM: fix auto-download of pdf
OM: fix systematics.py which was not called with the most appropriate default for matching/merging generation (MLM)
2.9.12 (09/08/2022)
OM: Fixing an issue with models (like SMEFTatNLO) where some interactions were using more than 9 couplings.
The couplings were assigned to the wrong Lorentz structure
OM: Fixing another issue for BSM models where an interaction is associated
to many couplings (detected for 10 couplings) where helicity recycling
was discarding incorrectly such type of interaction.
OM: Fixing an helicity recycling issue if during a benchmark scan a full
matrix-element did not have any contribution (all amplitude set to zero)
but not in the following one. Those two runs were fine but any
following points in the scan will automatically discard that
matrix-element.
2.9.11 (03/06/22)
OM: Fixing a bug on the color assignment for b-quark (that's leading to a crash of herwig)
This occurs in five flavor models, if you do not force yourself the definition of the
multi-particle "j" and "b". This bug was present since 2.3.1 (where the flipping of such
multi-particle to 4/5 flavor was done automatically for the first time)
2.9.10 (06/05/2022)
OM: allow model with GC in their name to use helicity recycling
OM: Forbid madspin to run with crazy values of BWcut
OM: Fixing some IO issue with Madspin that was leading to a lock of the code
OM: set a user interface for the set ewscheme option
OM: forbid helicity recycling for models with spin2 and spin3/2 (optimization is not implemented for such case)
2.9.9 (25/02/2022)
OM: Fix a bug introduced in 2.9.0 for MLM generation in the presence of mixed EW/QCD processes.
The bug typically leads to a crash within the systematics.py due to wrong power of alpha_s
The bug might sometimes not lead to a crash but the impact is "limited" to a change in the (various)
scale choice associated to the events. Therefore this is likely to be within scale uncertainty. It can
impact the matching with the parton-shower (but this should be visible within the DJR validation plot).
OM: Fix some wrong zero results that occur in the presence of conflicting Breit-Wigners.
OM: Fix an issue when using "$ X" when X~ can be onshell, the phase-space symmetry factor was wrongly set.
2.9.8 (21/02/2022)
OM: Fix in madspin where onlyhelicity mode was not working anymore
also allows to not specify any decay in that mode.
OM: Fix in multi_run mode where some meta-data were incorrectly set within the merged lhef file.
This occurs ONLY in the presence of non positive definite cross-section.
Only the normalization of the cross-section/weight/statistical error could be wrong. Shapes are not impacted.
2.9.7 (29/11/21)
OM: Fix the behavior of python seed for madevent/madwidth/mcatnlo/madspin
Now the first of those to set up a python seed will forbid any future reset of the seed
Frequent reset of the seed when moving to one package to the next was creating
a bias in the effective branching ratio out of madspin (observed only of NLO sample)
see: https://bugs.launchpad.net/mg5amcnlo/+bug/1951120
Thanks Hannes for the information.
RF+PT+SF: Fixed a 10-year-old bug that was there in the importance sampling over the FKS configurations.
- Fix to pick one shower scale for the S event at random among the FKS configurations,
instead of taking the weighted average.
- removed the n-body contributions from the random picking of the showerscale among FKS configurations.
Those bugs were leading to an incorrect pick of the shower scale. The observed impact is relatively small
and occur in the matching region.
2.9.6 (02/11/21)
OM: Forbid the possibility to ask for massless bosons to be longitudinally polarised.
Asking for those with a large multi-particle label could have hidden the fact that the code
was returning a non zero cross-section for such request.
OM: for process like p p > w+{X} w+{Y}, w+ > l+ vl
i.e. processes with polarization of identical particles where the decay involves multi-particles and
where the leptons do not all have the same mass, some of the processes were incorrectly discarded.
OM: fix an issue for photon initial state with lpp=+-4 where the lhef output was not setting the muon
as the correct colliding particles (thanks to Yuunjia Bao)
OM: Fixing an issue that madspin was not always using the python executable that was used by the
mg5_aMC executable
OM+PT: Change the shower script running pythia8 in order to be working with pythia8.3.
Running with Pythia8.2 (or lower) is then not possible anymore.
OM: Fix issue that some loop-induced processes were not working anymore since 2.9.0
OM: Fix the default set of cuts present in the default run_card if gluons were present in the final state but no
light (or b) quark. The absence of those cuts, in that situation, was leading to hardcoded cuts that were
not easy to overwrite for a non expert user.
2.9.5 (22/08/21)
OM+LM: [LO only] Fix the factorization scale dependence for lpp=2/3/4.
This was claimed to be using a fixed scale computation while
in some cases the scale was dynamical
To have full flexibility we introduced two additional
(hidden) parameters: "fixed_fac_scale1" and "fixed_fac_scale2"
that allow to choose fixed scale for only one beam.
OM: fix auto-width that was not following run_mode specification
OM: fixing missing rwgt_info for reweighting with gridpack mode
OM: fixing 'check' command with the skip_event mode
OM: fixing auto-width computation for 3 body decays and identical particles which was sometimes leading to a crash
OM: Fix some potential infinite loop when running with python3
2.9.4(30/05/21)
OM: Fix a python3 issue for madSpin when using in a gridpack mode (set ms_dir)
OM: Fix an issue for non positive definite matrix-element when using the
"set group_subprocesses False" mode of MG5aMc
OM: Fix a speed issue for gridpacks in readonly mode where the grids were recomputed
** PARALLEL VERSION FOR EW branch **
3.0.3 (06/07/20)
include up to 2.7.3
3.0.2
include up to 2.7.2
MZ: better handling of zeros in color-linked borns
RF: improved the behaviour for integration channels that give zero cross section
RF: Rewritten the mint integrator package. Makes for easier extensions.
RF: Fixed a problem related to the multi-channel enhancement factor for
NLO runs that only appeared in BSM theories (or EFTs)
RF: In the virt-tricks, replaced the grids for the virtuals with a
polynomial fit, which is more precise and allows for a reduction of
the number of calls to the virtual. However, requires to save all the
phase-space points for which the virtual has been computed to disk,
hence requires more disk space and memory for highly-accurate
runs. Can be disabled in the FKS_params.dat card, if disk space
and/or memory use needs to be limited.
3.0.1
include up to 2.6.4
MZ: Enable shower for QCD-only splittings
RF: Fixed a major bug in the code that affected 3.0.0, which affected processes with
cuts and --to a lesser extent-- processes with massive final state particles:
the phase-space region where "xi_i_fks != xinorm*xi_i_hat" had the wrong "prefact".
3.0.0 (01/05/18):
RF+SF+VH+DP+HS+MZ: Allow for the computation of NLO EW corrections (and more subleading NLO corrections).
[Note: when requiring NLO corrections ([QCD], [QED] or [QCD QED]), internally the code always treats this [QCD QED],
and then uses the coupling orders to specify which contributions should be considered. Among other things, this means
that when doing QCD corrections only --contrary to previous versions-- also loop diagrams with non-QCD-charged
particles will be included (e.g., the pentagons in Higgs production via vector-boson fusion).]
HS: inclusion of SMWidth for fast evaluation of NLO accurate widths for all SM particles
RF+SF: Resonance-aware phase-space mapping for NLO computations
RF: Reduction of the number of jobs -- results in earlier detection of small integration channels for fNLO
OM: remove ./bin/mg5 executable
** Main Branch (version 2.x) Update **
2.9.3(25/03/21)
OM: Fix an issue with t-channel particles for massive initial states where sqrt(S)
was close to the initial mass. Boundary conditions on t-channel were
incorrectly set up, leading to strange spectra in various distributions (very old bug)
OM: Fix an issue with a crash for loop computation
OM: more python3 fixing bug
OM: Fix a bug in the re-writing of the run_card when the seed was specified, leading to a wrong templating
OM: various small fixes of crashes/better logging/debug information
2.9.2(14/02/21)
MZ+RF+OM: Fix relevant to the case when PDG specific cuts are set in the NLO run_card.
The generation of tau was not taking into account the information.
OM: fix an issue when running with python3 where the normalization of pythia8 files was wrong
when pythia8 was run in parallel.
OM: fixing more issues related to MSSM (introduced within 2.9.0)
OM: fixing an issue with loop-induced processes (introduced within 2.9.0)
OM: Fix some wrong scale variation at NLO+PS (introduced in 2.9.0)
OM: Fix an issue with the installation of pythia-pgs
2.9.1.2 (02/02/21)
Kiran+OM: Fixing issue for the MSSM model
OM: Fixing issue with mac support
OM: fix a bug introduced within 2.8.2 related to a wrong phase-space mapping of conflicting resonances.
Leading to zero cross-section and/or a potentially biased cross-section for more complex cases.
The issue occurs only if you have a conflicting resonance followed by a massless propagator.
one example is generate p p > z h , z > e+ e-, h > b b~ a
2.9.0 (30/01/21) **** Major speed-up update for LO computation ***
Kiran+OM: Optimization of the matrix-element at run-time using recycling helicity method
- This speeds up LO computation by a factor of around 2
- This can be turned off via the command "output PATH --hel_recycling=False"
OM: Various optimizations for T-channel integration
- use different orderings for T-channel. Four different orderings have been implemented
at generation time, the code decides which ordering to use channel-per-channel.
This can be turned off via the command "output PATH --t_strategy=2"
- increase number of maximum iteration for double or more T-channel
- implement an alternative to the standard multi-channel.
instead of using the amplitude squared it uses the product of the denominators
(the default strategy use depends of the process)
- speed-ups for VBF type processes are often around 100 times faster
- This fixes a lot of issues for processes failing to generate the targeted number of events.
OM: Better version of the color computation (this leads to only a modest gain except for very complex processes).
This optimization leads to a longer generation time of the code (only for complex processes).
This can be turned off via "output PATH --jamp_optim=False"
OM: New parameter in the run_card:
- sde_strategy: allows to change the default multi-channel strategy
- new phase-space optimization parameters are now easily available via the command "update ps_optim"
OM: New global parameter "auto_convert_model"
if set on True (set auto_convert_model T or via input/mg5_configuration.txt)
all model crashing due to a python3 compatibility issue of the UFO model will be automatically converted
to a python3 compatible model.
2.8.3 (26/01/21):
OM: Bunch of bug fixing related to python3 issues (mainly related to unicode encoding)
OM: Various fix for reweighting with loop (mainly with python3 as well)
OM: Fix a potential bug for polarized samples with at least three polarised particles, with at least two
identical particles and one different polarised particle.
OM: Fix various bugs for the maddm interface (thanks Daniele)
OM: Fix various issues with overall order usage
OM: Fix compatibility with MacOS 11
OM: fix additional GCC10 compatibility issue
OM: fix an issue for 1>n processes where widths were set to zero automatically (introduced in 2.8.0)
OM: fix aloha output mode for python output
OM: avoid a bug with helicity filtering that was kept for all benchmark when using
multiple successive re-weighting
OM: Edition of the reweighting card via the "set" command is now starting from the original param_card
used to generate the events file, and not from the model default anymore.
OM: Interference terms now have their default dynamical scale set to HT/2
2.8.2 (30/10/20):
OM: Fix a bug when setting widths to zero where they were actually set to 1e-6 times the width
This can lead to bias in the cross-section if your process is very sensitive to the cross-section
due to gauge cancellation. Bug introduced in version 2.6.4.
OM: Hide Block parameter loop from NLO model but for madloop run.
The factorization scale is still determined by the setup of the run_card as before
OM: Fix a couple of python3 specific bugs
2.8.1(24/09/20):
OM: Change user interface related to FxFx mode
- If you have multiple multiplicities at NLO,
- the default run_card is modified accordingly
- has ickkw=3 and follows the official FxFx recommendation (i.e. for
scale and jet algo)
- the shower card has two parameters that are dynamically set
- njmax (default: -1) is automatically set depending on the process definition
- Qcut (default: -1) is now automatically set to twice ptj parameter
- the default parton-shower is automatically set to Pythia8
- The value of the cross-section after FxFx formalism (removing double counting) is
now printed on the log and available on the HTML page
OM: Fix for the auto width for three body decays in the presence of identical particles.
OM: add support for __header__ in UFO model
OM: allow restriction card to have auto-width
OM: fixing some html links (removed ajax links forbidden by major web browsers)
OM: Various fix related to the python3 support
- including more efficient model conversion method
2.8.0 (21/08/20):
OM: pass to python3 by default
OM: For LO processes, you can now set lpp1 and lpp2 to "4" for processes with an initial photon in order to get the
effective photon approximation. This mode behaves like the "3" one: The cut-off scale of the approximation
is taken from the fixed renormalization factorisation scale: "dsqrt_q2fact1/dsqrt_q2fact2"
OM: The widths of T-channel propagators are now set to zero automatically.
To return to the previous behaviour, you can use the option "set zerowidth_tchannel False"
(to set before the output command)
OM: Change in madevent phase-space integrator for T-channel:
- The integration of photon/Z/Higgs is now done together rather than separately and follows importance
sampling of the photon channel
- A new option "set max_t_for_channel X" allows to veto some channel of integration with more than X
t-channel propagators. This option can significantly speed up the computation in VBF processes.
(We advise to set X to 2 in those cases)
- Fix a numerical issue occurring for low invariant mass in T-channel, creating spurious configurations.
OM: In madspin_card you can now replace the line "launch"
by "launch -n NAME", this will allow to specify the name of the
directory in EVENTS where that run is stored.
OM: Change in the python interface of the standalone output. On top of the pdg of the particles,
you can now use the process_id (the one specified with @X) to distinguish processes with the same particle
content. This parameter can be set to -1 and the function then ignores that parameter.
OM: Adding new option in reweighting to allow the user to use the process_id in the presence of ambiguous
initial/final state.
OM: Update the makefile of standalone interface to python to be able to compile in multicore.
(thanks Matthias Komm)
OM: Update of the auto-width code to support UFO form-factors
OM: Fixing a numerical issue with the boost in EPA mode.
** PARALLEL VERSION FOR PYTHON 3 **
2.7.3.py3(28/06/20):
ALL: Contains all features of 2.7.3 (see below)
OM: Fix a crash when running PY8 in matched/merged mode (bug not present in not .py3 version of the code)
MZ: low_mem_multicore_nlo_generation is working again
but not for LOonly mode and not in OLP mode
2.7.2.py3(25/03/20):
ALL: Contains all features of 2.7.2 (see below)
2.7.1.py3(09/03/20):
ALL: Contains all features of 2.7.1 (see below)
OM: Fixed a lot of python3 compatibility issues raised by users
Particular Thanks to Congqiao Li (CMS), Richard Ruiz and Leif Gellersen
for their reports.