Internally EvtGen and Herwig use very similar algorithms to include spin corrections in particle decays. Therefore in order to get the most from both packages it is essential to communicate spin information between the two programs. The internal interface handles the conversion of spin information, in particular spinors where different conventions are used, between the two programs and ensures that the full correlations are generated.
If the location of the EvtGen package, and the Pythia8 event generator which is used by EvtGen to simulate partonic
decays of B-hadrons, is specified when Herwig7 is configured.
Two objects are created, one of the
EvtGenInterface class with an object
/Herwig/Decays/EvtGen which is used to handle the conversion of data between the two programs and one of the class
EvtGenDecayer with an object named
/Herwig/Decays/EvtGenDecayer which can be used to perform decays in Herwig7. By default EvtGen decays both the particle, and any daughter particles which are unstable, are decayed. The
EvtGenDecayer class can support both this approach, with the switch
set /Decays/EvtGenDecayer:Option All
or only decay the parent and leave the decays of any unstable daughters to Herwig7 using
set /Decays/EvtGenDecayer:Option Parent
The decay can be set in the usually way for a specific decay mode
set /Herwig/Particles/rho+/rho+->pi+,pi0;:Decayer /Herwig/Decays/EvtGenDecayer
or when the
DecayMode is created
decaymode tau+->pi+,pi0,nu_taubar; 0.255054 1 /Herwig/Decays/EvtGenDecayer
In this case Herwig7 selects the relevant decay mode and EvtGen is used to perform the decays.
We also provide the option of using wild cards to allow EvtGen to select the decay mode of the particle, e.g.:
decaymode B0->*MatchAny; 1. 1 /Herwig/Decays/EvtGenDecayer
will use EvtGen to select the decay modes of the \(B^0\) meson.