SherpaShower

Clone on GitLab

Authors: MLhad team; Ilten, Philip philten@cern.ch; Szewc, Manuel szewcml@ucmail.uc.edu


Documentation

Description

Everything included within the text bracketed by the tags and will be interpreted as the description of the package. This should provide a brief summary of the package and its use. More details can be given elsewhere in the README.md. The following provides an example.

This is the example description for the template building tool for PYTHIA-CONTRIB. The tool can be used to build template packages that can be used as part of the Pythia plugin system.

Authors

The authors for the package should be enclosed within the and tags. General markdown may be used in this description, for example to specify email addresses, etc. The author list is not required to follow a specific format, but it is suggested to use the format last name, first name <email address>; .... An example is given below.

MLhad team; Ilten, Philip philten@cern.ch; Szewc, Manuel szewcml@ucmail.uc.edu

Dependencies

This package is compatible with 8.317 and newer of Pythia8 and 3.0.0 and newer of Sherpa.

Configure and Build

This plugin must be configured with both Pythia8 and Sherpa.

./configure --with-pythia8=PYTHIA8_PATH --with-sherpa=SHERPA_PATH

Because the Sherpa configuration is non-standard it may be necessary to set individual paths by hand:

 --with-sherpa-include=SHERPA_BASE/<build-dir>/include/SHERPA-MC/
 --with-sherpa-lib=SHERPA_BASE/<build-dir>/lib/SHERPA-MC/

Package Documentation

Any relevant documentation should be provided in README.md within the tags and. By default, a Doxygen page will be generated for every package in PYTHIA-CONTRIB, as well as the HTML pages, if XML pages have been provided. This can, for example, include papers or websites. An example is given below.

The MLhad project is documented via a number of websites, codebases, and papers, listed below. * MLhad website: provides a comprehensive description of the MLhad project. * Towards a data-driven model of hadronization using normalizing flows: paper describing a normalizing flow hadronization model, and methods to train this model with data.

Optional Configuration

When using the provided build system, the following (only visible in the source of README.md, not in the rendered markdown) can be used to configure external packages. Note, this configuration must be present in README.md, but can be hidden with comment tags (as is done here), or included in the main text of the README.md. It is possible to define multiple external packages in README.md. Whenever the next PKG= line is encountered, a new external package is defined. If options for a package are missing, then they are taken as the default value. Note, each configuration key must begin the line and follow the syntax KEY=VALUE. The following keys are allowed. * PKG: name of the external package to configure (case does not matter). The configuration script will then use this name for configuring the package. For example, SherpaShower=LHAPDF6 will then include the options --with-lhapdf6. * CFG: optional configure script for the package, for example fastjet-config. * BIN_PATH: given the root package directory, relative path to the binary directory, or absolute path. By default, this is the relative path bin. Alternatively, this can be an argument given to the configure script specified by CFG. For example, this could be set to --bindir if the configure script accepts this as a valid argument. If the configure script is not available, or if this argument is invalid, the default value of bin will be used. * INC_PATH: same as for BIN_PATH, but for the header directory; by default, this is include. * LIB_PATH: same as above but for the library directory; by default, this is lib. * BIN_DEPS: requred executables along BIN_PATH, given as a semi-colon separated list. For example, rootcint;root-config requires the executables rootcint and root-config exist in BIN_PATH. * INC_DEPS: same as above for BIN_DEPS, except now required headers along INC_PATH. * LIB_DEPS: same as above for BIN_DEPS, except now required libraries along LIB_PATH. * PKG_DEPS: it is possible to require additional external packages as dependencies for this external package. This is typically needed when there is no config script for the external package. The list should be provided as a semi-colon separated list, for example LHAPDF6;FASTJET. These packages then should also be defined in this configuration. * FLAGS: optionally specify any additional compiler flags that should be used when this package is enabled. For example preprocessor directives can be passed with the option -D<argument>. * REQUIRE: if set to true, e.g. REQUIRE=true, this dependency is required, and the configuration will fail unless the package is configured; by default this is false.