Skip to content

Path-finder project to a new vectorized and optimized one-loop matrix element generator

Notifications You must be signed in to change notification settings

alphal00p/madloop7

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MadLoop7 path-finder

This repository contains a minimal and implementation of a different approach to computing one-loop matrix element that leverages spenso and symbolica.

The resulting low-level output for the computation of the numerator coefficient is well-suited for exploring vectorization options.

Installation

This implenenation requires the following dependencies: MG5aMC equipped with the madsymbolic plugin, spenso (from symbolica-community) and gammaloop.

You can install all these dependencies by running the following commands:

cd deps && ./install_dependencies.sh

Alternatively, you can specify custom path to your environment-wide installation of these dependencies in ./config.yaml.

This code has been tested with python3.12.

Usage

Run /bin/ml7.py --help for details on the options to steer MadLoop7.

Also, for benchmark purposes, and access to certain utilities like a flat phase-space generator, I exported the $ g g \rightarrow g d \bar{d} $ Python matrix element, which you can evaluate with:

cd ./madloop7/madgraph_matrix_element/gg_gddx
python3 ./check_sa.py

Example

Generate a low-level evaluator for the $ g g \rightarrow g g $ process with:

./bin/ml7.py -d generate -pn gg_gg_madgraph -lids 0 -tids 0

Process outputs can be cleaned up at any time with:

./bin/ml7.py clean -pn gg_gg_madgraph

Adding new processes

Additional processes can easily be added to ./madloop7/process_definitions.py, e.g:

HARDCODED_PROCESSES = {
    'gg_gg_madgraph': HardCodedProcess(
        name='gg_gg_madgraph',
        model="sm-no_widths",
        madgraph_generation="""
            force_loop_model
            generate g g > g g / u c s b t [virt=QCD]
        """,
        gamma_loop_generation=None,
        madsymbolic_output=[
            ("tree", "tree_amplitude_0_gg_gg_no_ucsbt.yaml"),
            ("loop", "loop_amplitude_0_gg_gg_no_ucsbt.yaml")
        ],
    ),
}

About

Path-finder project to a new vectorized and optimized one-loop matrix element generator

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages