Visualization status report
Download
Report
Transcript Visualization status report
Status of SiStrip TrackerMap
Giuseppe Zito, Antonio Pierro
Index
1. The goal
2. The existing implementation
3. The new web interface based on jquery
4. Slow control trackermap proposal
5. Power supply trackermap proposal
(presented by A. Pierro)
6. Summary
2
The goal (1) : 3 use cases
(from TDR)
Three main use cases of Trackermap are
foreseen:
1. Dashboard display – A single image for the
whole tracker updated regularly and shown on
a terminal with sufficient resolution
2. A way to store and transfer in a single file
information about the whole tracker.
3. Graphics interface to access and modify
information to control the tracker during data
taking.
3
The goal (2) : many trackermaps
The geometric trackermap has to be complemented
by other kinds of trackermaps or views.
The
fedtrackermap
or
readout
view
which
shows fed channels as single elements.
The slow control view or fectrackermap which shows
control rings
The power supply view which shows Hv and Lv
channels in two separate trackermaps.
Others …
4
The existing implementation of Web
interface(1)
Buttons to zoom trackermap
Buttons to navigate trackermap
Each trackermap in a separate tab
Panning possible also with mouse
5
The existing implementation of Web
interface(2): two levels of viewing for each
trackermap
Go to previous/next
crate
Buttons to switch from
full image to single part
Moving the mouse on
fedchannels produces
fedchannel coordinates
and content
Click on a fedchannel and get
detailed printout on right window
6
The existing implementation of Web
interface(3): showing correlations
between different trackermaps
Detached window used to show correlated part
Click on a module and the connected fedchannels are shown
highlighted
7
The existing implementation: how new
trackermaps are added(1)
An additional trackermap is created automatically if you put in the cfg file:
PSet TkmapParameters = {
untracked bool loadXxxCabling=true
}
(Xxx=Fed/Fec/Hv/Lv)
A new class is used to load information about the new trackermap
channels(TmApvPair,TmControlRing,TmHvChannel,TmLvChannel).
Each instance is linked to the object(s) representing the module(s)
connected to the channel
The new trackermap channels may be filled individually using the methods:
fillc_xxx_channel
fill_xxx_channel
The new trackermap can be printed as a single image (or saved as
xml )using method:
save_as_xxxtrackermap(,,,filename)
where filename=“anything.png/jpg/pdf/svg”
The method printall creates authomatically the web interface for the
geotrackermap and all the trackermaps requested
8
The existing implementation: how new
trackermaps are added(2):the case of
fedtrackermap
The fedtrackemap is created automatically if you put in the cfg file:
PSet TkmapParameters = {
untracked bool loadFedCabling=true
}
The class TmApvPair is used to load information about fed channels.
The fed channels may be filled individually using the methods:
fillc_fed_channel
fill_fed_channel
The fedtrackermap can be printed as a single image (or saved as
xml )using method:
save_as_fedtrackermap(,,,filename)
where filename=“anything.png/jpg/pdf/svg”
The method printall will include a new tab for the fedtrackermap.
9
The existing implementation(3):how new trackermaps
are filled and printed
Sample code to fill each cell in geotrackermap and in the fedtrackermap
with a random color is: Create a normal trackermap: no need to create a special fedtrackermap
edm::ESHandle<SiStripFedCabling> tkFed;
tkMap = new TrackerMap("title");
const vector<unsigned short> feds = tkFed->feds();
for(vector<unsigned short>::const_iterator ifed = feds.begin();ifed<feds.end();ifed++){
const std::vector<FedChannelConnection> theconn = tkFed->connections( *ifed );
int red = rand()%256;int green=rand()%256;int blue=rand()%256;
for(std::vector<FedChannelConnection>::const_iterator iconn = theconn.begin();
iconn<theconn.end();iconn++){
kMap->fillc_fed_channel(iconn->fedId(), iconn->fedCh(),red,green,blue);
tkMap->fillc(iconn->detId(),red,green,blue);
}
}
Special methods to fill fed channels cells
tkMap->save(true,0.,0.,”tmapname.png”);
tkMap->save(true,0.,0.,”tkmapname.svg”);
tkmap->save_as_fedtrackermap(true,0.,0.,”tkmapnamefed.png”);
tkmap->save_as_fedtrackermap(true,0.,0.,”tkmapnamefed.svg”);
tkMap->printall(true,0.,0.,"tmapname");
Save fedtrackermap data in xml file
Save fedtrackermap as a single png image
Create web interface for all trackermaps
10
The existing implementation(4) how the
web interface works
The method “printall” of class TrackerMap
will create around 100 files necessary to represent
the geometric trackermap and the other trackermaps :
-as a single high resolution png image
tmap.png tmapxxx.png (xxx=fed,fec,hv,lv)
-svg images for each layer /crate
tmaplayer1.xml tmapxxxcrate1.xml …
- the html files containing detailed information in text format
about modules and other trackermaps channels
tmaplayer1.html tmapxxxcrate1.html …
-the javascript interface
tmapviewer.js layer.js cratexxx.js …
-the main document that allows access to everything
tmapviewer.xhtml
11
The existing implementation(5) :Online(DQM)
implementation with method printonline
1. The file structure created by method “printall” for the
“offline” web interface, is reused almost without
modifications to create a web interface for online DQM.
2. The method “printonline” implementing this interface is
called every time there is some change in the DQM data
(every few events) . It writes the full set of files only once
at the beginning. After that, it updates only the files
interested by DQM changes.
3. It provides to the client also a slightly modified Javascript
interface that uses the AJAX client-server protocol to
refresh from time to time the images displayed by the web
interface.
4. Using this scheme we have no limit to the people that can
access the DQM data because pages are cached by the
server .
12
The new Web interface(1):why jquery?
•
It is a modern and popular Javascript library
•
It is well supported and has many plugins freely
available
•
Works gracefully with existing interface
code
•
Is browser independent (not useful in our
case because we use svg images supported
only by firefox)
13
The new Web interface(2)
optimal use of available space
Each trackermap in a different tab
Detail window can
be moved around dragging
top bar with mouse
Full trackermap image can be resized
to use all available space
14
The new Web interface(3)
the detail window
Moving the mouse on
trackermap highlights layers.
Click on layer to see its
detailed representation in
detail window
Moving the mouse on
modules in detail
window produces
module coordinates
and content
15
The new Web interface(4): how
to have further textual information for
each module/channel
Click on module to get detailed
text informations on the module
Click on ? icon to make detailed text
window visible/invisible
16
The new Web interface(5):finding
correlations between geo trackermap and
other trackermaps
Detached window used to show correlated part
Click on a module and the connected fedchannels are shown
highlighted
17
Proposal for a new trackermap: the slow
control view(1)
The tracker control system is based on CCU (Communication and Control Unit)
each one connected to many modules attached to the same bus.
CCU are organized in control rings connected to FEC(Front-End
Controllers) in the control room .
All FEC are contained in 4 crates similar to those used by FED. is based
The real thing
18
Proposal for a new trackermap:slow control
view(2)
Synoptic view :4 big boxes representing the 4 crates.
19
Proposal for a new trackermap:slow control
view (3)
21 slots
8 channels
for each slot
Crate structure (this contains FED but for FEC it is the same)
20
Proposal for a new trackermap:slow control
view(4)
Crate representation in
Fectrackermap: 21 columns
each one corresponding
to a slot.
Each cell is one of the 8
FecChannels in a slot and
represents a control ring connected
to a Fec.
The set of modules connected to a single control ring is shown
highlighted in the geotrackermap when you click on the cell.
For each crate we have 8x21=168 cells not all used. Each cell
is connected to around 25 modules.
21
Summary
1. Existing implementation contains already a
fedtrackermap(in addition to geo trackermap) and is
ready to integrate other trackermaps and to be used for
online monitoring.
2. Web interface changed to jquery (to be committed as
soon as jquery is available in CMSSW CVS repository)
3. We propose adding three other views: one for slow
control and the other two for power supply(lv and hv).
Should be integrated before next CRAFT .
22