Let's generate some Higgs events at the 8 TeV LHC (2012 CME, Higgs discovery year) with Pythia8.

> cd pythia8235
> mkdir lhc
> cp tevatron/Makefile* lhc
> cd lhc

Modify the Makefile to include the mainLHC project:

# HEPMC2.
mainLHC mainTevatron main41...

Now open up a file mainLHC.cc with emacs and put something like the code below in there. Them most important lines are:

  pythia.readString("Beams:eCM = 8000.");
  pythia.readString("HiggsSM:all=on");

This tells Pythia we want pp collisions at 8TeV CME, and we want to turn on all physics processes which can make the Standard Model Higgs. Now compile and run:

> make mainLHC
> ./mainLHC | tee mainLHC.log

The part "| tee mainLHC.log" just tells bash to keep a record of what Pythia8 printed to the screen. What is the total cross section? Now have a look at the log file mainLHC.log and determine how the Higgs is being produced and how it decays in these ten events. Later on, try looking at some events with the Event Display!

Now add the following line just below the "HiggsSM:all=on" line:

  pythia.readString("Top:all=on");

This tells Pythia8 to turn on all processes which produce a single top or a top pair. Now compile and run again:

> make mainLHC
> ./mainLHC | tee mainLHC.log

What is the total cross section? Look at the log and determine what kind of particle is being produced in each event and how it decays. What is going on here? What happened to the Higgs?

Now add the following line just below the "HiggsSM:all=on" line:

  pythia.readString("WeakSingleBoson:all=on");

This tells Pythia8 to turn on all processes which produce a single W or a single Z. Now compile and run again:

> make mainLHC
> ./mainLHC | tee mainLHC.log

What is the total cross section? Look at the log and determine what kind of boson is being produced in each event and how it decays. What is going on? Where are the tops?

Now go back and, instead of turning all Higgs production processes on, turn on just one at a time and determine the cross section Pythia8 calculates:

Gluon Fusion: "HiggsSM:gg2H=on"
Production with Z: "HiggsSM:ffbar2HZ=on
Production with W: "HiggsSM:ffbar2HW=on
ZZ Fusion: "HiggsSM:ff2Hff(t:ZZ)=on"
WW Fusion: "HiggsSM:ff2Hff(t:WW)"
ttH: "HiggsSM:gg2Httbar"

Code in mainLHC.cc (at the start):
-----------------------------------------------------------------
#include "Pythia8/Pythia.h"
#include "Pythia8Plugins/HepMC2.h"
using namespace Pythia8;

int main() {

  HepMC::Pythia8ToHepMC ToHepMC;
  HepMC::IO_GenEvent ascii_io("higgs_lhc.hepmc", std::ios::out);

  Pythia pythia;
  pythia.readString("Next:numberShowProcess=10");
  pythia.readString("Beams:eCM = 8000.");
  pythia.readString("HiggsSM:all=on");
  pythia.init();
 
  for (int iEvent = 0; iEvent < 10; ++iEvent) {
    if (!pythia.next()) continue;
    HepMC::GenEvent* hepmcevt = new HepMC::GenEvent();
    ToHepMC.fill_next_event( pythia, hepmcevt );
    ascii_io << hepmcevt;
    delete hepmcevt;
  }
  pythia.stat();
  return 0;
}