Development of graphics objects for CMS RPC chambers Visualization

G. Zito

The CMS RPC(Resistive Plate Chambers) is a special purpose detector providing fast information for the level-1 trigger. Its geometry follows the muon detector geometry. This consists in four stations interleaved with the iron return plates. These stations form four concentric cylinders around the beam line in the barrel region, and four disks perpendicular to the beam line in the endcaps. In the barrel we have a further subdivision in five wheels.Each wheel has 12 wedges.

Graphical objects can be used to represent RPC information like:

These objects can be used in this early phase of CMS to:

What we have now
CMS has chosen to build a toolkit of visualization objects called Iguana, instead of a stand-alone monolithic program. This toolkit is already used to allow visualization in Orca and Oscar.In Orca RPC chambers are described as a OpenInventor scene with a graph of around 2000 boxes each one corresponding approximately to a single chamber.
In Oscar, Iguana is used to visualize the description of the detector in terms of Geant 4 volumes and materials.
The simulated signal in the detector is represented by a single set of points in space.
Simulated and reconstructed tracks are also represented in space(Fig).
Track segments in the muon stations are represented as arrows in space.
In Iguana there are also the usual objects used for statistical analysis (histograms,scatter plots,...)

Our goal
All this works inside Orca but has some problems,the principal one being that Orca requires a lot of computer resources, making its use for visualization difficult. So our main goal is to make these graphics objects work also outside ORCA in a stand-alone program and in a web interface. This stand-alone program will be built using Iguana,instead for the Web interface we will use other tools. They should improve the existing visualization performance by:

Objects to be developed

Why a stand alone program
We suggest in some cases the use of a stand-alone program because using ORCA has the following problems:

The solution is to make a stand-alone program which reads events created by ORCA and ready to be visualized . This program reads the detector description in XML using DDD.
To share events between CMS programs an XML format should be setup (like what we have already for the detector). In this way, you don't need to use COBRA, Objectivity and similar stuff(expensive in terms of computer resources) when you want only to do some simple visualization.(*)
The program used to create the RPC map is a first approximation of this stand-alone program. It has the geometry data directly in the code: I am planning to start using it to test an XML description of the detector using the DDD toolkit.

Why a Web interface
Instead a web interface can be very useful when there is little interactivity, for example to display information in the rpc construction data base: prototype. In general we should develop always a Web interface for these tasks , unless its implementation produces something which is too limited to be useful.

(*) I know that from a object oriented point of view we should look at the task of visualization as adding "representation objects" that make the objects already defined visible.
The problem with this approach is that the event has become in the CMS software a tangle of hundreds of different objects. Providing a general purpose visualization toolkit to view each of these "event objects" makes no sense for the normal end user of visualization tools:this is not interested in knowing the complexity of the "event" implementation and the pleasures of objects navigation. He/she is only interested in visualizing the simple event that he has in mind with ,at most, ten different objects (tracks,hits,vertices,detector,...). We should describe,in my opinion, in XML this "simple event" and not the original tangle of objects. This simple event shouldn't require COBRA or other complex API or framework : is just a Ascii file with some simple self describing tags <EVENT> <TRACK> etc. Its processing should be done with standard XML processing softare that would extract the data and make them available for display.
Giuseppe Zito
Last modified: