FROG Visualization

This document will explain how to use FROG for visualisation of TOTEM geometry and events (OFFLINE and ONLINE).


  • I assume you have installed opengl (GLUT) and curl libraries

In case of any difficulties with the installation and compilation, do not hesistate to contact

Short introduction

FROG consists of two parts: The Analyzer and The Displayer.

  • The Analyzer is a part of the CMSSW, it is responsible for providing the binary files containing the information on events and geometry for The Displayer
  • The Displayer works independently of the CMSSW - it is stored together with the CMSSW in TOTEM repository in Frog_Analyzer/soft, however it can be compiled and launched on any Linux machine.

In the first place I will provide a short tutorial to The Displayer to show the capabilities of the tool. All the necessary example files are provided.

The Displayer

The Displayer is independent of the CMSSW - it means you can check it out on your private Linux machine:

svn co svn+ssh:// your_directory
cd your_directory
make clean

If you want to proceed on SLC, I do recommend to check out the newest CMSSW:

svn co svn+ssh:// CMSSW_4_2_4/src/
cd CMSSW_4_2_4/src/Visualisation/Frog_Analyzer/soft
make clean

VERY (!!!) important remark - if you have previously run commands such as:


Then the compilation may (but not necessarily) fail. To prevent it, compile The Displayer using a freshly-opened terminal tab.

You need to wait a little bit for the compilation to be over. If the compilation is not successfull (which might happen very rarely, and is always connected with the lack of some libraries on your computer), please let me know at Otherwise let's see a few examples:

STEP 2 - FROG examples

In this step I'll show you how to operate FROG by using a few examples which are have been prepared by me and which are included in the software by default.

Example 1 - T2

Let's have a look at T2:

cd soft

After the loading process you should see a T2 arm, which is by default the main view. On your left and at the bottom there are Roman Pot miniscreens, and on your right - T1 and T2 miniscreens. To see T1 with its events, simply click on any of T1 mini screens. It will appear in the 2DZ and 2DY main views.

The set of views which you are currently viewing is so called Analysis configuration. It allows users to select any subpart and subplate of any detector, enlarge it and study the events on it. There are also other types of configurations, which I will describe in detail later on.

Very important notes and shortcuts for the 3D view:

  • You can rotate the view by pressing right-mouse button and then moving the mouse,
  • Press f to maximize/minimize the main 3D view,
  • Press right / left in order to switch between events,
  • To type in the event number, press ENTER, then type in the number and again ENTER. However, have in mind that the example files contain only 4 to 5 events. You will have the opportunity to view bigger files at the end of this tutorial, when I'll describe how to use The Analyzer,
  • Press m / p to zoom in / zoom out,
  • Press [ / ] to increase/decrease transparency rate

  • Press space for enabling/disabling auto-rotation,
  • Press up / down to increase/decrease rotation,
  • Press F1 for help screen,
  • Press q to exit program,

The arrows point to the Interaction Point 5. You can turn them OFF by pressing v.

t2 2.png

t2 12.png
maximized main view

Try to find an event which contains lots of tracks, pads and strips (as it is written above, do it with the left and right arrow). Then play a little with the above shortcuts. After a while, let's have a real fun:

  • You can select (by clicking on a 3D view) any plate of any of the detectors to enlarge it and study the events on it. The selected plate has different colour than the rest. Try to do it for any of T2 arms to see the results.
  • You can TURN ON/OFF any kids of events.: F5 (RP and T2strips), F6 (T2 Pads), F7 (T1, T2, RP Tracks). F8 (T1 wires), F9 (T1 strips A), F12 (T1 strips B), F11 (T1 hits).
  • You can swap between 2DZ/2DY and 3D View by clicking on any of them. Thanks to it, you can enlarge at will any 2D part.

Let's see the results:

t2 4.png
Subpart of T2 arm selected for detailed overview. Tracks are switched OFF

t2 3.png
Subpart of T2 arm selected for detailed overview. Tracks and strips are switched OFF. You can see which detector plane has been selected - it has more intensive colours.

t2 7.png
Another interesting event. Arrows pointing to the Interaction Point 5 are visible

t2 8.png
Another interesting event. Arrows pointing to the Interaction Point 5 are NOT visible

t2 10.png
Another interesting event. All events visible

t2 11.png
It is possible to swap between 3D and 2D views to enlarge any part of 2D detector planes

Example 2 - T1

Let's have a look at T1:

cd soft

After the loading process you should see a T2 arm, which is by default the main view. To see T1 with its events, simply click on any of T1 mini screens. It will appear in the 3D, 2DZ and 2DY main views.

The set of views is still Analysis configuration. You are welcome to try out all the features for T1. Especially, selection of single CSC chambers is possible as well. Below the results are presented:

t1 1.png
T1 general overview.

t1 2.png
Selection of a single CSC Chamber. Of course it is possible to turn ON/OFF any type of T1 event.

t1 3.png
Selection of a single CSC Chamber. Another, more abundant event. Of course it is possible to turn ON/OFF any type of T1 event.

t1 4.png
Selection of a single CSC Chamber. Another chamber has been selected. Of course it is possible to turn ON/OFF any type of T1 event.

For the sake of clarity, one can still turn ON/OFF any kind of an event. The results can be seen below:

T1 all.png
All the events in one place

T1 wires.png
Wires visible

T1 tracks.png
Tracks visible

T1 hits.png
Hits visible

T1 strips A.png
Strips A visible

T1 strips B.png
Strips B visible

Example 3 - Roman Pots

The same can be done for Roman Pots:

cd soft

Again, by clicking a miniscreen with some events we will switch to Roman Pots. Besides single Pots, it is possible to view also the units. At any point, you can click and enlarge a single plane.

rp 0.png
Roman Pots. An event containing many strips. Arrows point to the IP5

rp 1.png
A view of a whole Unit. It is still possible to select a single plane and to enlarge it. The arrows have been turned OFF

rp 2.png
Roman Pots. An event with a single track.

rp 3.png
Roman Pots. An event with a single track.

Other features.

Another convenient and very useful thing is Geometry and Event tree. Press F2 to open / close it.

  • you can open/close each of the tree positions by clicking on + / - marks. Thanks to it you can see sub-elements.
  • you can disable / enable any of the elements by clicking on ON / OFF / MIX. It is extremely useful when there is a great number of strips or pads - you can disable uninteresting elements, to enhance speed and visibility,

Transparency is also an interesting feature - it helps with the overview of the events. A few examples are presented below.

T2 partial transparency. Thanks to it, one can more easily notice some negligible events

T1 partial transparency. Thanks to it, one can more easily notice some negligible events

Roman Pots partial transparency.

Roman Pots complete transparency

STEP 3 - Visualisation of your own events.

Now let's try to visualise some of your own events in FROG. I assume that you are still in Visualisation/Frog_Analyzer/soft folder. You have to edit file to put the name of your reconstructed ROOT file. When you are done:


And... enjoy watching your eventes.

STEP 4 - FROG locally, without CMSSW

Frog was constructed in such a way it can run locally on any computer, without the CMSSW framework. All you need are the input files for FROG. Below I explain how it all works.

Part 1 - FROG running locally on your computer

mkdir Frog_local
svn co svn+ssh:// Frog_local
cd Frog_local
make clean

Now FROG is running locally on your computer, with the prepared examples. But how to make FROG display Your events? Below a simple explanation and an example!

Part 2 - preparing input for FROG

FROG needs three kinds of input files, describing geometry and events. These files must be provided by Frog_Analyzer, which is a part of CMSSW and TOTEM. Thanks to it FROG is totally independent of the CMSSW, and can display events on any kind of machine.

There are three files necessary for FROG:

  • TOTEM_Geometry.geom
  • TOTEM_Events.vis
  • TOTEM_Views_Configuration.txt

How to do it all? Below a short example!

1. At first, we need to generate input files for FROG. I assume that:

  • you are in CMSSW_4_2_4/src folder,
  • you work on a remore machine (for example pctotem31), where you log in via SSH.

source /afs/
eval `scram runtime -sh`

Then we need a config file. It can be any file, whatever you like, but for this example let's take Visualisation/Frog_Analyzer/soft/ You should put in the relevant place the path to your ROOT file. Then:

cmsRun Visualisation/Frog_Analyzer/soft/

When it's done, you should see in your directory three new files: TOTEM_Geometry.geom, TOTEM_Events.vis, TOTEM_Views_Configuration.txt

Now you should copy these files to relevant places in FROG directory. For me it's like that:

scp ./Files
scp ./Files
scp ./Config

And then... enjoy watching your events!

FROG working remotely via ssh

In general, it's possible to run FROG remotely via ssh -X.

However, it makes the display MUCH slower, so I do recommend to work on FROG locally (which is very simple, and I described how to do it a few lines above).

Topic attachments
ISorted descending Attachment History Action Size Date Who Comment
PNGpng 1.png r1 manage 83.9 K 2012-05-21 - 11:29 UnknownUser  
PNGpng 2.png r1 manage 82.1 K 2012-05-21 - 11:29 UnknownUser  
PNGpng 3.png r1 manage 79.6 K 2012-05-21 - 11:29 UnknownUser  
PNGpng 4.png r1 manage 76.0 K 2012-05-21 - 11:29 UnknownUser  
PNGpng T1_all.png r1 manage 193.8 K 2012-05-21 - 11:07 UnknownUser  
PNGpng T1_hits.png r1 manage 90.6 K 2012-05-21 - 11:07 UnknownUser  
PNGpng T1_strips_A.png r1 manage 116.6 K 2012-05-21 - 11:08 UnknownUser  
PNGpng T1_strips_B.png r1 manage 131.5 K 2012-05-21 - 11:07 UnknownUser  
PNGpng T1_tracks.png r1 manage 107.6 K 2012-05-21 - 11:07 UnknownUser  
PNGpng T1_wires.png r1 manage 157.9 K 2012-05-21 - 11:07 UnknownUser  
PNGpng rp_0.png r1 manage 106.9 K 2012-05-21 - 11:29 UnknownUser  
PNGpng rp_1.png r1 manage 46.3 K 2012-05-21 - 11:29 UnknownUser  
PNGpng rp_2.png r1 manage 55.5 K 2012-05-21 - 11:29 UnknownUser  
PNGpng rp_3.png r1 manage 55.4 K 2012-05-21 - 11:29 UnknownUser  
PNGpng t1_1.png r1 manage 101.3 K 2012-05-21 - 11:07 UnknownUser  
PNGpng t1_2.png r1 manage 89.6 K 2012-05-21 - 11:07 UnknownUser  
PNGpng t1_3.png r1 manage 143.3 K 2012-05-21 - 11:07 UnknownUser  
PNGpng t1_4.png r1 manage 144.7 K 2012-05-21 - 11:07 UnknownUser  
PNGpng t2_10.png r1 manage 100.0 K 2012-05-21 - 10:35 UnknownUser  
PNGpng t2_11.png r1 manage 107.4 K 2012-05-21 - 10:35 UnknownUser  
PNGpng t2_12.png r1 manage 71.7 K 2012-05-21 - 10:35 UnknownUser  
PNGpng t2_13.png r1 manage 87.8 K 2012-05-21 - 10:35 UnknownUser  
PNGpng t2_2.png r1 manage 111.3 K 2012-05-21 - 10:35 UnknownUser  
PNGpng t2_3.png r1 manage 80.5 K 2012-05-21 - 10:35 UnknownUser  
PNGpng t2_4.png r1 manage 104.2 K 2012-05-21 - 10:35 UnknownUser  
PNGpng t2_7.png r1 manage 139.3 K 2012-05-21 - 10:35 UnknownUser  
PNGpng t2_8.png r1 manage 135.8 K 2012-05-21 - 10:35 UnknownUser  
Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r1 - 2012-05-21 - unknown
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    TOTEM All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback