lp:~maddevelopers/mg5amcnlo/madweight
In this branch, madweight has been implemented into mg5.
Up to now, the modifications in madgraph itself are rather minimal (see below).
The branch passes all the tests:
./tests/
Ran 473 tests in 38.241s => OK
./tests/
Ran 25 tests in 72.552s => OK
but I haven't added any test for madweight yet.
This preliminary version of madweight is still far from the one discussed at the 2011
mg meeting (in Rome) with Olivier, but it includes essentially all the features
of the previous mw version. The big advantage is that mg5 gives access to a much larger
class of matrix elements, which is actually the main motivation for implementing this
(preliminary) madweight version in mg5. I also implemented several new features, such as the
possibility to use the narrow width approximation, and the possibility to use MINT instead of
VEGAS for the adaptive MC integrator.
USAGE:
output madweight MY_DIR_NAME
creates a madweight directory associated with the generated process.
In this directory, madweight can be used in the same way as before.
When the user types
./bin/madweight
for the first time, she/he is asked to specify the tranfer function he wants to consider.
DESCRIPTION OF MODIFICATIONS:
modifications in cmd_interface.py
*******
add a new entry for madwight. The modifications are somewhat minimal, and can easily
be traced back with a diff
modifications in export_v4.py
*******
1) creation of a new class ProcessExporter
in analogy with the existing classes for madevent and for standalone
2) because several methods are now used BOTH for MW and for ME, I have moved
these methods from class ProcessExporter
ProcessExpor
the real modifications with a simple "diff".
These displaced methods are:
write_
get_
write_
write_
modification in the Template
*******
1. in setscales.f and setrun.f: comment lines with
include 'genps.inc'
since none of the variables defined in genps.inc is used in setscales.f or setrun.f
2. add a "MadWeight" directory in Source, see the details below
3. add a script "madweight" in bin to prepare the Template for MadWeight
(the script "madweight" is analog to the previously existing script "standalone")
modifications in the "Fortran part of MadWeight"
*******
1. All the libraries have been made independent of the variable nexternal, which required
slight modifications, such as
nexternal -> max_particles
max_branch -> max_branches
double precision momenta(
double precision mvir2(-
the new parameters max_particles, max_branches are defined in the new include file "phasespace.inc".
The fact that the libraries do not depend on "nexternal" also forced other slight modifications,
such as
FILL_
since the plotting routines in the library "tools" do not know anything about nexternal
2. In the previous MadWeight version, there were many small files with one or two short routines.
In the new version, beside the libraries, there are four premanent "MadWeight" fortran files:
driver.f : the driver for the whole calculation
gen_ps.f : routines connected with the generation of a phase-space point
initializ
permutation.f : all routines connected with the permutation of jets
Note that the routines in next_perm.f have been moved into permutation.f, i.e. they are not part
of the "tools" library since they depends on process-dependent variables (such as nexternal).
Beside these permanent files, some files are created on fly, as in the previous version:
d_choices.f
main_code.f
multi_
call_TF.f (has been renamed)
3. NO CUTS ARE APPLIED (cuts.f, setcuts.f are not used anymore)
4. The Narrow Width Approximation has been implemented as an option.
In the MadWeight_card.dat: nwa = .false. means no narrow width approximation
5. A second integrator (mint) has been intorduced.
In driver.f: integrator='m' means that mint is used
modifications in the "Python part of MadWeight"
*******
1. A big modification is that the new version calculates ONLY the UN-NORMALIZED weights,
i.e. cross sections are not evaluated anymore. The motivation of such a modification is
that the weights must be normalized by the OBSERVED cross section, which cannot be calculated
at the parton level. The directories MWP**** have been renamed into P**** (=standard MG names)
I modified the files cluster.py and cluster_lib.py accordingly, but up to now
I have taken care of "single machine" and "condor" only.
2. The analyser is still the one of the previous version of MadWeight. The only modification so far
concerns the reading of the information on the topology of the decay chain. No information
is read anymore in the proc_card.dat (topo info is read only from the files configs.inc and
leshouche.inc). For this, I modified the file proc_info.py
So MadWeight is (in principle) not limited anymore to the decay chain syntax.
3. In the previous version, information on the particles in the model was read from the file "particle.dat",
which does not exist anymore. Currently the "pid_to_label" info, pid <-> mass/width info have been
!!!HARDCODED!!! (sm only) in the file Cards.py. Obviously this will be removed in the future,
when the analyser will be integrated in mg5 itself.
4. Other modifications here and there for the compatibility with mg5. Example given, the format
of information in leshouche.inc has changed (there is now an additional index), so I had to change
the script Cards.py accordingly.
- Get this branch:
- bzr branch lp:~maddevelopers/mg5amcnlo/madweight
Branch merges
- marco zaro: Approve
- Rikkert Frederix: Approve
- Valentin Hirschi: Approve
- FabioMaltoni: Pending requested
- Stefano Frixione: Pending requested
-
Diff: 36480 lines (+33701/-471)143 files modifiedTemplate/LO/Cards/delphes_trigger.dat (+20/-0)
Template/LO/Source/PDF/pdg2pdf.f (+1/-1)
Template/LO/Source/open_file.f (+4/-1)
Template/LO/SubProcesses/setscales.f (+1/-1)
Template/MadWeight/Cards/MadWeight_card.dat (+90/-0)
Template/MadWeight/Cards/run_card.dat (+197/-0)
Template/MadWeight/MW_TemplateVersion.txt (+3/-0)
Template/MadWeight/MW_UpdateNote.txt (+253/-0)
Template/MadWeight/MW_banner_header.txt (+28/-0)
Template/MadWeight/Python/Info.py (+18/-0)
Template/MadWeight/Python/MW_param_default.inc (+48/-0)
Template/MadWeight/Python/clean.py (+240/-0)
Template/MadWeight/Python/expand_MadWeight.py (+60/-0)
Template/MadWeight/Python/madweight.py (+181/-0)
Template/MadWeight/Python/put_banner.py (+314/-0)
Template/MadWeight/Python/splitbanner.py (+105/-0)
Template/MadWeight/Python/tests.py (+288/-0)
Template/MadWeight/Readme.txt (+41/-0)
Template/MadWeight/bin/internal/pass_to_madweight (+109/-0)
Template/MadWeight/bin/madweight.py (+192/-0)
Template/MadWeight/bin/mw_options (+207/-0)
Template/MadWeight/blocks/block_a.f (+206/-0)
Template/MadWeight/blocks/block_b.f (+199/-0)
Template/MadWeight/blocks/block_c.f (+189/-0)
Template/MadWeight/blocks/block_d.f (+238/-0)
Template/MadWeight/blocks/block_e.f (+363/-0)
Template/MadWeight/blocks/class_a.f (+196/-0)
Template/MadWeight/blocks/class_b.f (+285/-0)
Template/MadWeight/blocks/class_c.f (+501/-0)
Template/MadWeight/blocks/class_d.f (+612/-0)
Template/MadWeight/blocks/class_e.f (+490/-0)
Template/MadWeight/blocks/class_f.f (+388/-0)
Template/MadWeight/blocks/class_g.f (+486/-0)
Template/MadWeight/blocks/class_h.f (+175/-0)
Template/MadWeight/blocks/fuse.f (+46/-0)
Template/MadWeight/blocks/makefile (+25/-0)
Template/MadWeight/mod_file/MW_pos (+38/-0)
Template/MadWeight/mod_file/check_model.py (+55/-0)
Template/MadWeight/mod_file/mod_file.py (+320/-0)
Template/MadWeight/mod_file/mod_main_code (+178/-0)
Template/MadWeight/mod_file/mod_putbanner (+113/-0)
Template/MadWeight/mod_file/mod_pythia_card (+30/-0)
Template/MadWeight/mod_file/mod_setpara (+187/-0)
Template/MadWeight/mod_file/mod_setup_model (+58/-0)
Template/MadWeight/src/driver.f (+914/-0)
Template/MadWeight/src/gen_ps.f (+667/-0)
Template/MadWeight/src/initialization.f (+758/-0)
Template/MadWeight/src/madweight_param.inc (+57/-0)
Template/MadWeight/src/makefile (+45/-0)
Template/MadWeight/src/makefile_source (+79/-0)
Template/MadWeight/src/maxamps.inc (+3/-0)
Template/MadWeight/src/permutation_template.f (+39/-0)
Template/MadWeight/src/permutation_weight_default.dat (+133/-0)
Template/MadWeight/src/phasespace.inc (+13/-0)
Template/MadWeight/src/run.inc (+56/-0)
Template/MadWeight/src/setrun.f (+497/-0)
Template/MadWeight/tools/bsub_schedular (+7/-0)
Template/MadWeight/tools/dbook.f (+997/-0)
Template/MadWeight/tools/dbook.inc (+36/-0)
Template/MadWeight/tools/eq_solver.f (+507/-0)
Template/MadWeight/tools/htuple.f (+245/-0)
Template/MadWeight/tools/makefile (+24/-0)
Template/MadWeight/tools/mint-integrator.f (+409/-0)
Template/MadWeight/tools/nexper_2.f (+91/-0)
Template/MadWeight/tools/sge_schedular (+20/-0)
Template/MadWeight/tools/stat.f (+26/-0)
Template/MadWeight/tools/toms659.f (+1193/-0)
Template/MadWeight/tools/topgraph.f (+193/-0)
Template/MadWeight/tools/vegas.f (+342/-0)
Template/MadWeight/tools/xran1.f (+33/-0)
Template/MadWeight/transfer_function/Transfer_FctVersion.txt (+1/-0)
Template/MadWeight/transfer_function/data/TF_all_delta.dat (+73/-0)
Template/MadWeight/transfer_function/data/TF_dbl_gauss_pt_jet.dat (+108/-0)
Template/MadWeight/transfer_function/data/TF_gauss_on_leptons.dat (+95/-0)
Template/MadWeight/transfer_function/data/TF_single_gaussian.dat (+124/-0)
Template/MadWeight/transfer_function/data/TF_uniform.dat (+104/-0)
Template/MadWeight/transfer_function/data/TF_user.dat (+170/-0)
Template/MadWeight/transfer_function/data/transfer_card_dbl_gauss_pt_jet.dat (+36/-0)
Template/MadWeight/transfer_function/data/transfer_card_gauss_on_leptons.dat (+28/-0)
Template/MadWeight/transfer_function/data/transfer_card_single_gaussian.dat (+42/-0)
Template/MadWeight/transfer_function/data/transfer_card_uniform.dat (+25/-0)
Template/MadWeight/transfer_function/input/TF_param_generic.inc (+52/-0)
Template/MadWeight/transfer_function/input/ident_mw_card_generic.dat (+31/-0)
Template/MadWeight/transfer_function/input/mod_generic (+261/-0)
Template/MadWeight/transfer_function/input/ordering_file.inc (+18/-0)
Template/MadWeight/transfer_function/input/rw_tf_generic.f (+35/-0)
Template/MadWeight/transfer_function/input/transfer_card_generic.dat (+8/-0)
Template/MadWeight/transfer_function/input/transfer_functions_generic.f (+1271/-0)
Template/MadWeight/transfer_function/makefile (+26/-0)
Template/MadWeight/transfer_function/phasespace.inc (+13/-0)
Template/MadWeight/transfer_function/setTF.f (+13/-0)
UpdateNotes.txt (+18/-1)
aloha/create_aloha.py (+0/-1)
madgraph/VERSION (+1/-1)
madgraph/interface/common_run_interface.py (+310/-53)
madgraph/interface/extended_cmd.py (+68/-1)
madgraph/interface/launch_ext_program.py (+75/-0)
madgraph/interface/madevent_interface.py (+7/-11)
madgraph/interface/madgraph_interface.py (+68/-23)
madgraph/interface/madweight_interface.py (+1029/-0)
madgraph/iolibs/export_v4.py (+1228/-198)
madgraph/iolibs/files.py (+7/-1)
madgraph/iolibs/group_subprocs.py (+66/-11)
madgraph/iolibs/template_files/auto_dsig_mw.inc (+77/-0)
madgraph/iolibs/template_files/madweight_makefile_source (+79/-0)
madgraph/iolibs/template_files/madweight_run_config.inc (+8/-0)
madgraph/iolibs/template_files/matrix_madweight_group_v4.inc (+119/-0)
madgraph/iolibs/template_files/super_auto_dsig_mw_group_v4.inc (+144/-0)
madgraph/madweight/Cards.py (+554/-0)
madgraph/madweight/MW_driver.py (+357/-0)
madgraph/madweight/MW_fct.py (+339/-0)
madgraph/madweight/MW_info.py (+512/-0)
madgraph/madweight/blob_solution.py (+911/-0)
madgraph/madweight/change_tf.py (+757/-0)
madgraph/madweight/create_param.py (+588/-0)
madgraph/madweight/create_run.py (+731/-0)
madgraph/madweight/diagram_class.py (+874/-0)
madgraph/madweight/mod_file.py (+826/-0)
madgraph/madweight/particle_class.py (+258/-0)
madgraph/madweight/permutation.py.THIS (+65/-0)
madgraph/madweight/proc_info.py (+309/-0)
madgraph/madweight/substructure_class.py (+733/-0)
madgraph/madweight/verif_event.py (+727/-0)
madgraph/madweight/write_MadWeight.py (+1313/-0)
madgraph/various/banner.py (+8/-4)
madgraph/various/cluster.py (+6/-4)
madgraph/various/progressbar.py (+32/-2)
tests/acceptance_tests/test_cmd_madevent.py (+1/-1)
tests/acceptance_tests/test_madweight.py (+264/-0)
tests/input_files/cuts_for_MW.f (+1310/-0)
tests/input_files/mw_wa_prod.lhco (+15/-0)
tests/parallel_tests/test_madweight.py (+264/-0)
tests/time_db (+136/-145)
tests/unit_tests/interface/test_cmd.py (+0/-1)
tests/unit_tests/interface/test_edit_card.py (+355/-0)
tests/unit_tests/interface/test_madevent.py (+10/-0)
tests/unit_tests/iolibs/test_export_python.py (+1/-1)
tests/unit_tests/iolibs/test_export_v4.py (+1/-1)
tests/unit_tests/iolibs/test_group_subprocs.py (+3/-3)
tests/unit_tests/madweight/test_export_v4.py (+313/-0)
tests/unit_tests/madweight/test_permutation.py (+123/-0)
tests/unit_tests/various/test_4fermion_models.py (+1/-1)
tests/unit_tests/various/test_diagram_symmetry.py (+4/-4)
Branch information
Recent revisions
- 277. By Olivier Mattelaer
-
Allow to restrict the channel of integration used via the MadWeight_card.
This should reduce the amount of time where the hardcoding of main_code.f is required.
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)