Weights

Care has been taken to ensure that all events generated by VINCIA by default have weights which are positive and equal to unity. Indeed, this property is central both to the shower and to the matching scheme. Ordinary runs should therefore produce a simple set of unweighted events, equivalent to normal PYTHIA 8 output.

However, Vincia does allow for weighted events to be generated, in some circumstances. The simplest case is when it is used to shower a set of externally generated weighted events, in which case VINCIA normally just passes the weights through, without modification. However, in a few cases VINCIA may actively modify the input event weight, as, e.g., in the automatic evaluation of uncertainty bands. If changes to the event weight are made, these are properly bookkept and the final weight is accessible after the event has been fully generated through the weight() method in the Vincia plugin. For instance, if the VinciaPlugin object is called vincia the generated event weight can be accessed by

vincia.weight();

Convenient yes/no shorthands for checking whether any negative weights w < 0 and/or any non-unity weights have been generated at all (during the current run) are provided by the methods

bool vincia.negativeWeightOccurred();
bool vincia.nonunityWeightOccurred();

Again, note that VINCIA's weights fully include any non-unity input weights associated with the event from PYTHIA (normally, PYTHIA's weights are unity, but, as mentioned, when using external events, e.g., from LHEF files, these can in principle come with non-unity weights). The weight VINCIA started from is not modified and remains accessible through PYTHIA's own info.weight() method.

Last modified: