Demo showing H -> ZZ -> 4 mu generated by Pythia.
Requires libPythia6.
#ifndef __RUN_PYTHIA_DISPLAY__
{
gROOT->LoadMacro(dir +
"MultiView.C+");
#ifndef R__WIN32
Error(
"pythia_display()",
"Could not load 'libPythia6', make sure it is available!");
return;
}
#endif
gROOT->ProcessLine(
"#define __RUN_PYTHIA_DISPLAY__ 1");
gROOT->ProcessLine(
"#include \"pythia_display.C\"");
gROOT->ProcessLine(
"run_pythia_display()");
gROOT->ProcessLine(
"#undef __RUN_PYTHIA_DISPLAY__");
}
#else
#include "TPythia6.h"
#include "TMCParticle.h"
{
Warning(
"pythia_display()",
"Already initialized.");
return;
}
P.SetMSEL(0);
P.SetMSUB(102, 1);
P.SetPMAS(6, 1, 175);
P.SetPMAS(25, 1, 180);
P.SetCKIN(1, 170.0);
P.SetCKIN(2, 190.0);
P.SetMSTP(61, 0);
P.SetMSTP(71, 0);
P.SetMSTP(81, 0);
P.SetMSTP(111, 0);
for (
Int_t i = 210; i <= 288; ++i)
P.SetMDME(i, 1, 0);
P.SetMDME(225, 1, 1);
for (
Int_t i = 174; i <= 189; ++i)
P.SetMDME(i, 1, 0);
P.SetMDME(184, 1, 1);
P.Initialize("cms", "p", "p", 14000);
b->SetMainTransparency(80);
b->SetMainTransparency(80);
}
{
P.GenerateEvent();
for (
Int_t i = 0; i < 7; ++i) {
TParticle pb(
p.GetKF(),
p.GetKS(), 0, 0,
p.GetFirstChild() -
nh - 1,
p.GetLastChild() -
nh - 1,
p.GetPx(),
p.GetPy(),
p.GetPz(),
p.GetEnergy(),
p.GetVx(),
p.GetVy(),
p.GetVz(),
p.GetTime());
if (i == 0)
track->SetLineColor(kColors[0]);
else if (i <= 2)
track->SetLineColor(kColors[1]);
}
}
public:
};
{
{
b->SetToolTipText(
"Go to previous event - not supported.");
b->Connect(
"Clicked()",
"EvNavHandler", fh,
"Bck()");
b->SetToolTipText(
"Generate new event.");
b->Connect(
"Clicked()",
"EvNavHandler", fh,
"Fwd()");
}
browser->SetTabTitle(
"Event Control", 0);
}
#endif
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
void Error(const char *location, const char *msgfmt,...)
Use this function in case an error occurred.
void Warning(const char *location, const char *msgfmt,...)
Use this function in warning situations.
R__EXTERN TEveManager * gEve
winID h TVirtualViewer3D TVirtualGLPainter p
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
R__EXTERN TSystem * gSystem
An array of clone (identical) objects.
Specialization of TRootBrowser for Eve.
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
Wrapper for TGeoShape with absolute positioning and color attributes allowing display of extracted TG...
void AddElement(TEveElement *element, TEveElement *parent=nullptr)
Add an element.
void AddGlobalElement(TEveElement *element, TEveElement *parent=nullptr)
Add a global element, i.e.
TEveBrowser * GetBrowser() const
static TEveManager * Create(Bool_t map_window=kTRUE, Option_t *opt="FIV")
If global TEveManager* gEve is not set initialize it.
void Redraw3D(Bool_t resetCameras=kFALSE, Bool_t dropLogicals=kFALSE)
TEveEventManager * GetCurrentEvent() const
A list of tracks supporting change of common attributes and selection based on track parameters.
Holding structure for a number of track rendering parameters.
Visual representation of a track.
A composite frame that layout their children in horizontal way.
Defines top level windows that interact with the system Window Manager.
virtual Bool_t SetTab(Int_t tabIndex, Bool_t emit=kTRUE)
Brings the composite frame with the index tabIndex to the front and generate the following event if t...
Description of the dynamic properties of a particle.
TGTab * GetTabRight() const
TString & ReplaceAll(const TString &s1, const TString &s2)
virtual const char * Getenv(const char *env)
Get environment variable.
virtual int Load(const char *module, const char *entry="", Bool_t system=kFALSE)
Load a shared library.
virtual const char * UnixPathName(const char *unixpathname)
Convert from a local pathname to a Unix pathname.