Anomalous Z’ model¶
The model of hep-ph/0501154 contains a \(Z'\) boson with couplings to the Standard Model fermions and an anomalous coupling to the photon and Z. It therefore provides a model with a minimal additional particles, the \(Z'\), and vertices, the coupling of the \(Z'\) to the Standard Model fermions and the anomalous \(Z'\) -Z-photon vertex, from the Standard Model and is therefore a good example of implementing a new model in Herwig++. As this is an advanced example of writing your own code to work with Herwig++ and therefore it assumes you are familiar with creating your own classes, creating the initialization and termination routines, parameters and switches using the emacs macros supplied with ThePEG.
To implement this model requires a number of features. A full implementation can be found in the contrib/RadiativeZPrime
directory in the Herwig++ release. Here’s a brief description of the steps involved
An implementation of the coupling of the \(Z'\) to the Standard Model fermions which can be implemented in a class inheriting from
Helicity::FFVVertex
. This is relatively simple and can be based on theStandardModelFFZVertex
class of Herwig++ which implements the same interaction for the Z boson. This is implemented in theFFZPrimeVertex
class in the example implementation.An implementation of the coupling of the \(Z'\) to the Z and photon. This is more complicated as the interaction occurs via a Lorentz structure which is not implemented in the code, i.e. \(e_{mnab}e^m_{\gamma}e^n_{Z'}e^a_{Z}p^b_{\gamma},\) where \(e_{mnab}\) is the totally antisymmetric tensor, \(e_{X}\) is the polarization vector of X and \(p_{X}\) is the momentum of X. This requires
- a base class inheriting from
Helicity::AbstractVVVVertex
which implements the calculation of the matrix element or off-shell wavefunctions for the Lorentz structure. In practice in this case only theevaluate
member for the matrix element is needed, although the others have to be supplied as they purely virtual in the base class. This is implemented in theAnomalousVVVVertex
class in the example implementation. - an inheriting class which implements the interaction for this model by implementing the
setCoupling
member, in the example implementation this is theGammaZPrimeZVertex
class.
- a base class inheriting from
A model class which inherits from the Herwig++
StandardModel
class and implements the calculation of the new couplings in the model, in this case of the Z’ to the Standard Model fermions and Z-photon, and the storage of the new vertices. In the example implementation this is theRadiativeZPrimeModel
class.In order to use the new model a
RadiativeZPrimeModel
object must be created and used to replace the defaultModel
object used by Herwig++ which is of course an instances of the Herwig++StandardModel
class. This requires:- the new particles, in this case the Z’ are created;
- an instance of the new model class, in this case
RadiativeZPrimeModel
is created; - the running electromagnetic and strong couplings, running mass and CKM objects are assigned to the new model;
- the new vertices are created and these, together with the Standard Model vertices assigned to the new model;
- the model model objects is assigned to the
StandardModelParameters
interface of theEventGenerator
to replace theStandardModel
object.
This is done in the
RadiativeZPrime.model
file in the example implementation.
The model is now ready to be used with Herwig++. It can be used with the standard internal Herwig++ machinary to generate hard processes and decays. In this case a number of other options are available in the implementation.
- The
MEqq2ZPrime2ff
class implements the matrix element for \(q\bar{q} \to f\bar{f}\) including the Standard Model contributions, based heavily on theMEqq2gZ2ff
matrix element in Herwig++. - The
MEqq2ZPrime2ZGamma
class implements the matrix element for \(q \bar{q} \to Z' \to Z \gamma\). - The
MEqq2ZPrime2ZGamma2ffGamma
class implements \(q \bar{q} \to Z' \to Z gamma\) including the decay of the Z boson as a \(2\to3\) process to provide an example of doing this.
The LHC-RadiativeZPrime.in
file includes examples of using both the default mechanism for new physics processes and thewse additional matrix elements. The SimpleZPrimeAnalysis
class provides some simple analysis of the events. The results results] for the \(2\to3\) matrix element (black), dedicated