cms tutorial, september 2004 september, 2004 ianna osborne, northeastern university iguanacms...

90
CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University http://iguana.cern.ch IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar, Giulio Eulisse, Lassi Tuura Northeastern University

Upload: harold-barber

Post on 18-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

CMS Tutorial, September 2004

September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

IGUANACMS Tutorial

Ianna Osborne,Shahzad Muzaffar,Giulio Eulisse,Lassi TuuraNortheastern University

Page 2: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

2IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Introduction

Page 3: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

3IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

IGUANA and IGUANACMS

v IGUANA and IGUANACMS are two different SCRAM-based projects.

v IGUANA defines a generic object model and a framework*) for interactive 2D and 3D visualisation. It provides a number of services/tools to generate and manipulate those objects and to manage user interactions.r iguana command, iguana studio

v IGUANACMS is a composite**) framework linking IGUANA and other frameworks such as COBRA and Geant4. It provides modules and services that shape the abstract object model of IGUANA into a concrete CMS-specific application.r iguana studio session setup

*) framework - [n] a set of classes that embodies an abstract design for solutions to a number of related problems.

*) framework - [n] a set of classes that embodies an abstract design for solutions to a number of related problems.

**) composite - [adj] consisting of separate interconnected parts.

**) composite - [adj] consisting of separate interconnected parts.

Page 4: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

4IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

IGUANACMS Today

v Visualisation applications for ORCA, OSCAR, test-beams (DAQ application);

v Visualisation of reconstructed and simulated objects: tracks, hits, digis, vertices, etc.;

v Full DDD detector

visualisation;

v Magnetic field

visualisation;

v Interactive

modification of

configurables at

run-time;

v Custom tracker

selection;

v Event browser;

Page 5: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

5IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Software Requirements

v This tutorial is based on IGUANACMS 1.10.0

v Operating system:r Linux RedHat (CERN distribution);

r X-windows server with GLX module enabled;

r Native OpenGL (optional).

v Follow the instructions given:

Commands given in this font can and should be executed by a user.

Commands given in this font can and should be executed by a user.

Page 6: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

6IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

What is Installed

v To check which versions of IGUANACMS are available at your site:

> scram list IGUANACMS

Listing installed projects....

--------------------------------------------------------------------------------| Project Name | Project Version | Project Location |--------------------------------------------------------------------------------

IGUANACMS IGUANACMS_1_3_1 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_3_1 IGUANACMS IGUANACMS_1_9_0 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_9_0 IGUANACMS IGUANACMS_1_8_0 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_8_0 IGUANACMS IGUANACMS_1_9_1 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_9_1 IGUANACMS IGUANACMS_1_10_0 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_10_0

Projects available for platform >> Linux__2.4 <<

> scram list IGUANACMS

Listing installed projects....

--------------------------------------------------------------------------------| Project Name | Project Version | Project Location |--------------------------------------------------------------------------------

IGUANACMS IGUANACMS_1_3_1 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_3_1 IGUANACMS IGUANACMS_1_9_0 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_9_0 IGUANACMS IGUANACMS_1_8_0 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_8_0 IGUANACMS IGUANACMS_1_9_1 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_9_1 IGUANACMS IGUANACMS_1_10_0 --> /afs/cern.ch/cms/Releases/IGUANACMS/IGUANACMS_1_10_0

Projects available for platform >> Linux__2.4 <<

Page 7: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

7IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Part 2: Getting Started

Page 8: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

8IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Getting Started

v Prepare your developers area:

v Set up run-time environment:

v A user knows the data she/he wants to visualize;

v Hint for a lazy user: data cards from the release area;

v Test samples from ORCA web page:r http://cmsdoc.cern.ch/orca/testdata.html

> ssh -X lxplus> cd $LOCALSCRATCH> scram project IGUANACMS IGUANACMS_1_10_0> cd IGUANACMS_1_10_0/src> project IGUANACMS> cvs co -r IGUANACMS_1_10_0 VisDocumentation/VisTutorial> cd VisDocumentation/VisTutorial

> ssh -X lxplus> cd $LOCALSCRATCH> scram project IGUANACMS IGUANACMS_1_10_0> cd IGUANACMS_1_10_0/src> project IGUANACMS> cvs co -r IGUANACMS_1_10_0 VisDocumentation/VisTutorial> cd VisDocumentation/VisTutorial

> eval `scram ru -csh`> eval `scram ru -csh`

Page 9: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

9IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

iguana Command Options

v iguana --list gives the full list of plugins available at runtime;r Note for advanced user: you must run this command after

modifying visualisation plugins.

v iguana --help

v iguana -c <file_name> passes the configuration file to COBRA.

> iguana --helpUsage: iguana --help or: iguana --version or: iguana --list or: iguana [--verbose] [--preload LIBRARY]... [--profile] [--memstats] [--driver|-D DRIVER] [DRIVER-OPTIONS...]

The $SEAL_PLUGINS environment variable should be set to point tothe module registration directories, with directories separated':' as with normal paths.

If no DRIVER is given, I will attempt to load `IGUANA'.

> iguana --helpUsage: iguana --help or: iguana --version or: iguana --list or: iguana [--verbose] [--preload LIBRARY]... [--profile] [--memstats] [--driver|-D DRIVER] [DRIVER-OPTIONS...]

The $SEAL_PLUGINS environment variable should be set to point tothe module registration directories, with directories separated':' as with normal paths.

If no DRIVER is given, I will attempt to load `IGUANA'.

Page 10: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

10

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

What is in orcarc

v InputFileCatalogURL defines the location of the data you want to work with - POOL catalog;

v InputCollections defines a collection within the POOL catalog;

v GeaneUsed if set true initializes the geane tables needed for muon reconstruction;

v Optionally TraceOnThrow will produce a stack trace printout on each throw (for debugging purposes).

InputFileCatalogURL = @{xmlcatalog_http://cmsdoc.cern.ch/orca/catalog/PoolFileCatalog_8_3_0.xml}@InputCollections=/System/StW830DST/h300eemm/h300eemm# Visualisation:DataProxies=COBRA/Core:ORCA/Event:ORCA/G3Detector# TraceOnThrow=trueMonRecAlisaBuilder=falseGeaneUsed = trueVisualisation:Application=Applications/ORCA/Rec Application

InputFileCatalogURL = @{xmlcatalog_http://cmsdoc.cern.ch/orca/catalog/PoolFileCatalog_8_3_0.xml}@InputCollections=/System/StW830DST/h300eemm/h300eemm# Visualisation:DataProxies=COBRA/Core:ORCA/Event:ORCA/G3Detector# TraceOnThrow=trueMonRecAlisaBuilder=falseGeaneUsed = trueVisualisation:Application=Applications/ORCA/Rec Application

Page 11: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

11

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

iguana Studio Session

v When iguana starts it presents the list of available session types to the user. Select one of them to load a predefined configuration that will allow you to work with one of the applications: ORCA, OSCAR or iguana examples.

> project IGUANACMS> scram project IGUANACMS IGUANACMS_1_10_0> cd IGUANACMS_1_10_0/src> cvs co -r IGUANACMS_1_10_0 VisDocumentation/VisTutorial> cd VisDocumentation/VisTutorial> iguana -c orcarc

Select ORCA.

> project IGUANACMS> scram project IGUANACMS IGUANACMS_1_10_0> cd IGUANACMS_1_10_0/src> cvs co -r IGUANACMS_1_10_0 VisDocumentation/VisTutorial> cd VisDocumentation/VisTutorial> iguana -c orcarc

Select ORCA.

Page 12: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

12

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Part 3: Graphical User Interface

Page 13: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

13

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Typical Visualisation Application

MDI WorkspaceMDI Workspace

3D Browser3D Browser

Text InfoText Info

Twig Browse

r

Twig Browse

r

Menu BarMenu BarTool BarTool Bar

Status BarStatus Bar

Text info window will show reach text output for selected object.

Text info window will show reach text output for selected object.

The workspace hosts browsers: 3D, 2D, Lego.

The workspace hosts browsers: 3D, 2D, Lego.

3D representation of visible objects are shown in 3D window.

3D representation of visible objects are shown in 3D window.

Twig window shows the list of loaded Twigs. They can be selected and made visible.

Twig window shows the list of loaded Twigs. They can be selected and made visible.

Menu bar hosts loaded services.

Menu bar hosts loaded services.

Tool bar provides short-cuts to most common actions.

Tool bar provides short-cuts to most common actions.

Page 14: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

14

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Menu Bar

v Menu bar contains a number of pull-down menus. Menus are the services. r Default iguana studio services which are loaded for any application: File, View, Window, Debug, and Help.

v The keyboard shortcuts to activate a menu from the menu bar:

r File <Alt+F>

r View <Alt+V>

r Window <Alt+W>

r Event <Alt+E>

r Config <Alt+C>

r Debug <Alt+D>

r Help <Alt+H>

Page 15: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

15

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Tool Bar

v Some more often used actions from the menu bar are exposed on the tool bar: Save As..., Print As..., Control Center;

v Other buttons correspond to the actions which can be performed on a selected window;

v If an action cannot be performed on the selected window, the button is disabled (grayed out);

v If a mode is selected, button is pressed. User can tear it offUser can tear it off

Page 16: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

16

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Save As...

v 3D scene graph from selected window can be saved as an ASCII or binary iv file;

v Save As... pops-up a dialog:r type in a file name;

r click save.

An iv file can be read by

a lightweight iguana application -

Vis Example--Open Inventor File Reader

An iv file can be read by

a lightweight iguana application -

Vis Example--Open Inventor File Reader

Page 17: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

17

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Print As...

v A scene from selected window can be printed as vector postscript (recommended), 300 dpi tiff, rgb, jpeg.

v Print As... pops up a dialog:r type in a

file name;

r click save.

Printing of raster formats depends on GL hardware and drivers, and may not work correctly for remote

rendering. Check that your GL drivers are up-to-

date.

Printing of raster formats depends on GL hardware and drivers, and may not work correctly for remote

rendering. Check that your GL drivers are up-to-

date.

Page 18: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 18

Control Centre

v Presents the available control categories for the selected view (2D, 3D, lego);

v Clicking “File -> Control centre” menu item will pop-up the control centre dialog box;

v Double clicking a category icon will show the details of that category.

Go back one level

Go back one level

Close the control centre

Close the control centre

Revert changesRevert changes

Apply changes made via the GUI

Apply changes made via the GUI

Different control

categories

Different control

categories

Page 19: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

19

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

New...v 2D Window: opens a 2D view where every object has

been sliced by a plane: XY, ZX, or ZY;

v 3D Window: opens the usual 3D view;

v Lego Window: opens a window that displays the lego plots associated to some of the twigs;

v Open Inventor View: allows to open an .iv file as a separate twig tree;

v Python shell: opens an interactive python shell.

The number of newly opened windows is

limited by the resources of your

computer.

The number of newly opened windows is

limited by the resources of your

computer.

Page 20: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

20

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Quit

v When an application quits, the request is send to all threads (up to four) and other frameworks (COBRA, Mantis, Geant4, etc.) to finish their jobs;

v It can happen that something went wrong at this stage. To check if there are processes left:

> ps PID TTY TIME CMD16876 pts/6 00:00:00 tcsh16949 pts/6 00:00:24 iguana16950 pts/6 00:00:00 iguana16951 pts/6 00:00:24 iguana16952 pts/6 00:00:00 iguana16955 pts/6 00:00:00 perl <defunct>16967 pts/6 00:00:55 iguana16968 pts/6 00:00:00 perl <defunct>16982 pts/6 00:00:00 ps

> ps PID TTY TIME CMD16876 pts/6 00:00:00 tcsh16949 pts/6 00:00:24 iguana16950 pts/6 00:00:00 iguana16951 pts/6 00:00:24 iguana16952 pts/6 00:00:00 iguana16955 pts/6 00:00:00 perl <defunct>16967 pts/6 00:00:55 iguana16968 pts/6 00:00:00 perl <defunct>16982 pts/6 00:00:00 ps

Page 21: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

21

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Configuration Data Cards

Page 22: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

22

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Configuration Editor

v Menu Config -> Edit... : an interactive editor for simple configurables;

v A user can change and create data cards.

Changing some of the configurables may have no

effect: the code that defines or uses the

configurable must also observe changes to it.

Changing some of the configurables may have no

effect: the code that defines or uses the

configurable must also observe changes to it.Validity range

is not checkedValidity range is not checked

Page 23: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

23

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Visualisation ConfigurablesName

Default Value

Type Description

Visualisation:PtMin 1.0 float Visualisation cut on PtMin

Visualisation:EtaMax 2.4 float Visualisation cut on EtaMax

Visualisation:G4TrajStep 1 float Show every n-th step

Visualisation:MinEnergyEcalHit

0.1 float Visualisation cut

VisEcalBHitsTwig:offset 0.23 float Offset 3D rep

VisEcalBHitsTwig:energyScale 0.1 float Scale 3D rep

VisEcalEHitsTwig:offset 0.35 float Offset 3D rep

VisEcalEHitsTwig:energyScale 0.1 float Scale 3D rep

VisEcalEHitsTwig:minEnergy 0.001 float Visualisation cut

VisHcalBHitsTwig:offset 0.0 float Offset 3D rep

VisHcalBHitsTwig:energyScale 100.0 float Scale 3D rep

VisHcalBHitsTwig:minEnergy 0.001 float Visualisation cut

VisHcalFHitsTwig:offset 0.0 float Offset 3D rep

VisHcalFHitsTwig:energyScale 0.1 float Scale 3D rep

VisHcalFHitsTwig:minEnergy 0.1 float Visualisation cut

Visualisation:EventStatusBar true bool Show event status bar

Visualisation:DataProxies none string List of visualisation plugins to load

Page 24: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

24

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Visualisation Configurables (small print)

v Some configurables simplify specific visualisation applications. For example, if you want to use only geant3 detector visualisation, you can prevent the loading of other plug-ins.r Attention: Do not use if unsure of the consequences!

r Visualisation:Application = Applications/ORCA/Rec Application

Automatically selects type of ORCA visualisation application, bypassing configuration dialog at start-up;

r Visualisation:DataProxies = Cobra/Core:ORCA/Event:ORCA/G3Detector

Load only the three named plug-ins and nothing else.

Page 25: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

25

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

3D Browser

Page 26: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

26

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

3D Browser Actionsv Zoom In/Out Zoom in to or out of the scene graph.

v Select/Pick Button Selects object manipulation or pick mode (and deselects camera or viewer mode). The cursor shape will change to an arrow. In this mode, the user is manipulating objects

in the scene graph. Seek button will be disable in this mode.

v View Button Selects camera or viewer mode (and deselects object manipulation or pick mode). The cursor shape will change to two half circle arrows. In this mode, the user is moving the

camera in 3D space.

v Home Button Returns the camera to its home position (initial position if not reset).

v Set Home Button Resets the home position to the current camera position.

v View All Button Brings the entire scene graph into view.

v Seek Button Allows the user to select a new center of rotation for the camera. When clicked on (and in viewer mode) the cursor changes to a cross-hair. The next left mouse buttonpress causes

whatever is underneath the cursor to be selected as the new center of rotation. Once the button is released, the camera either jumps or animates to its new position depending on the current

setting of the seek time in the preferences dialog box.

v Camera Alignment Buttons Select the axis of alignment (Z, Y, or X) of the camera. Only displayed for Plane Viewers.

v Grid Button shows/hides a 1 m by 1 m grid.

v Show/Hide Feedback axis Show/Hide feed back axis on the scene graph.

v Projection Button Selects the type of camera used by the viewer. It toggles between the two available camera types --perspective and orthographic. Only displayed for Examiner and Plane

viewers.

v Invert Camera Invert the camera through origin i.e rotate the camera 180 degree anti-clockwise.

Page 27: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

27

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

2D Browser

Page 28: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 28

2D view

v Open the “File/New...” menu

v Select “2D Window”

Page 29: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 29

Page 30: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 30

Page 31: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 31

Use the toolbar buttons to select the

wanted view

Use the toolbar buttons to select the

wanted view

Page 32: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 32

Layers Configuration File

v It is possible to specify a configuration file (layers.dat) with the ordering of the layers and whether or not some volumes should be cut:

# /Objects/Event/* twigs in front of# /Objects/Detector/* ones.# Do not cut /Objects/Events/*

/Objects/Event=nocut/Objects/Detector

Page 33: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

33

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Twig Browser

Page 34: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

34

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Twig Browser

v Twig browser can be used for correlated selection, visibility control and requesting text info output;

r Selecting the “Object” text field:

– updates the text info window;

– highlights corresponding 3D, 2D, and Lego representations if those are visible;

r Ticking on/off the visibility box shows/hides the 3D/2D representation;

r If a twig is disabled (the name is grayed out), it should be enabled first, then it can be visualized. Parent Twigs (mother volumes) do

not control visibility of their childrenParent Twigs (mother volumes) do

not control visibility of their children

Page 35: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

35

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Twig Options Menu

v Right button mouse click on the twig will pop

up an options menu for this twig;

v The options menu can be different for every

twig. You will only be able to use available

options;

v Enable/Disable Children: since the full Geant4

tree can be heavy to deal with, this allows you

to quickly choose parts you want to work with;

v Physical/Logical Children: twig tree shows

physical or logical Geant4 volumes;

v Show/Hide By Level: to view enabled twigs by

the level. Also automatically enables subtree;

v Show This: make visible and enable all parents.

Think before you ask what to

visualize: it can be costly

Think before you ask what to

visualize: it can be costly

Page 36: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

36

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Twig Options Menu (2)

v Show/Hide By Category: ask to visualize (in)-sensitive detectors as defined in OSCAR;

v Show By Material...:the materials defined in DDD.

User defined filter has to be implemented by a

user.

User defined filter has to be implemented by a

user.

Page 37: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

37

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Twig Options Menu (3)

v Appearance...: an interactive material editor for volumes made of Geant4 materials;

v Slice: defines a slice planes for this object and its subtree (see Control Center on how to manipulate the slices);

v Clip: defines a clipplane for this object.

See Control Center on how to manipulate the slices and clip planes.

See Control Center on how to manipulate the slices and clip planes.

Page 38: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

38

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Other Services

Page 39: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

39

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Debug Service

The list of available plugins with attached marked.

Information about loaded shared libraries

Information about resource consumption by the program

Page 40: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

40

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Help Service

v Help service is available from the menu bar:

Page 41: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

41

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Part 4: ORCA Visualisation

Page 42: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

42

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

ORCA VisualisationMultiple 2D, 3D. Lego windows

Interactive configurationeditor

Python shelland scripts

Multiple twigbrowsers

Text informationfor selected objects

Tracks

Jets

Vertices

Reconstruction Geometry

Page 43: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

43

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

ORCA Visualisation

v When a user chooses ORCA session type from the session setup dialog, the ORCA session queries plugin database on registered ORCA applications and presents a list of them to the user to select from;

Your choice of the application type depends on the input data you set

in the configuration

Your choice of the application type depends on the input data you set

in the configuration

Page 44: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

44

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Tracker SimHits

v To visualize tracker Sim Hits tick the visibility box on in the Twig browser.

v Tracker Sim Hits position shown as a point in 3D space.const CmsTracker::DetContainer& dets = FullTracker::instance ()->dets ();

CmsTracker::DetIterator iDet;

SoVertexProperty *verticies = new SoVertexProperty;for (iDet = dets.begin (); iDet != dets.end (); iDet++){ SimDet *simDet = iDet->simDet (); if (simDet && !simDet->simHits ().empty ()) { const SimDet::SimHitContainer& sits = simDet->simHits (); for (SimDet::SimhitIterator is = sits.begin (); is != sits.end (); is++) { float x = (*is).globalPosition ().x () / 100.0; float y = (*is).globalPosition ().y () / 100.0; float z = (*is).globalPosition ().z () / 100.0; verticies->vertex.set1Value (nVrx, SbVec3f (x, y, z)); nVrx++; } nSimHits += sits.size (); }}

Page 45: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

45

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Filtered Tracker SimHits

v Show only the SimHits from a signal event:MultipleFilter<TkSimTrack> simFilter;SimTrackFromTriggerFilter sfFromTrigger;SimTrackEfficiencyFilter sfEffic;simFilter.add (&sfFromTrigger);simFilter.add (&sfEffic);

typedef TkSimEvent::TrackContainer SimTrackContainer;typedef TkSimTrack::SimHitContainer SimHitContainer;

TkSimEventFromCarf simEvent (observed ());SimTrackContainer simTracks = simEvent.tracks (simFilter);

SimHitContainer goodHits;for (SimTrackContainer::iterator isim = simTracks.begin (); isim != simTracks.end (); isim++) { SimHitContainer tmp = (**isim).hits (); goodHits.insert (goodHits.end (), tmp.begin (), tmp.end ());}

Page 46: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

46

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

DetUnits with Filtered SimHits

v Show DetUnits with SimHits:// Get Tracker eventTkSimEventFromCarf simev (observed ());

MultipleFilter<TkSimTrack> simFilter;SimTrackFromTriggerFilter sfFromTrigger;SimTrackEfficiencyFilter sfEffic;simFilter.add (&sfFromTrigger);simFilter.add (&sfEffic);

vector< const TkSimTrack* > simTracks = simev.tracks (simFilter); for (vector< const TkSimTrack* >::iterator isim = simTracks.begin ();isim != simTracks.end (); isim++){ // Loop on SimHits of the TkSimTrack TkSimTrack::SimHitContainer simHits = (*isim)->hits (); // Check that the track contains more then one simhit // otherwise we are not interested in drawing it. if (simHits.size () > 1) { for (TkSimTrack::SimHitContainer::const_iterator iSimHit = simHits.begin(); iSimHit != simHits.end(); iSimHit++) { const DetUnit& detector = (*iSimHit)->det(); SoSeparator *separator = new SoSeparator; addWafer (separator, &detector); detUSep->addChild (separator); } }}

Page 47: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

47

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

RecHits

v RecHits are shown as points in 3D space. They show a position of the signal for stereo detectors and a middle of a strip for the rest:const CmsTracker::DetContainer& dets = FullTracker::instance ()->dets ();

CmsTracker::DetIterator iDet;

SoVertexProperty *verticies = new SoVertexProperty;

for (iDet = dets.begin (); iDet != dets.end (); iDet++){ if (!(*iDet).recHits ().empty ()) { DetUnit::RecHitContainer rits = (*iDet).recHits (); for (DetUnit::RecHitIterator ir = rits.begin (); ir != rits.end (); ir++) { float x = (*ir).globalPosition ().x () / 100.0; // cm -> m float y = (*ir).globalPosition ().y () / 100.0; // cm -> m float z = (*ir).globalPosition ().z () / 100.0; // cm -> m verticies->vertex.set1Value (nVrx, SbVec3f (x, y, z)); nVrx++; } nRecHits += rits.size (); }}

Page 48: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

48

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Tracker SimTracks

v Tracker SimTracks are shown as points in 3D space indicating a position of a SimHit connected with straight line;

v The SimHits are ordered in time and the first SimHit carries information about particle ID;r Muons are shown red;

r Electrons are shown green;

r Pions are shown blue;

r The rest of the tracks are shown cyan.

Page 49: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

49

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Filtered SimTracks// Get Tracker eventTkSimEventFromCarf simev (observed ());

MultipleFilter<TkSimTrack> simFilter;SimTrackFromTriggerFilter sfFromTrigger;SimTrackEfficiencyFilter sfEffic;simFilter.add (&sfFromTrigger);simFilter.add (&sfEffic); vector< const TkSimTrack* > simTracks = simev.tracks (simFilter); for (vector< const TkSimTrack* >::iterator isim = simTracks.begin (); isim != simTracks.end (); isim++){ // Loop on SimHits of the TkSimTrack TkSimTrack::SimHitContainer simHits = (*isim)->hits (); TkSimTrack::SimHitContainer::const_iterator iSimHit;

int nGpart = 0;

if (simHits.size () > 0 ) { iSimHit = simHits.begin (); nGpart = (*iSimHit)->particleType (); // GEANT particle code // Obtain ID from first hit }

Page 50: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

50

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Gammas

v The straight line showing gammas connects two points, it starts at vertex and ends when they convert;

Page 51: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

51

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

SimTracks Decay Tree

v The SimTracks decay tree doesn’t show the location of the tracks;

Page 52: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

52

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

SimTracks: Full Table

v The text info window can be undocked. Select the handle and drug it out:

Page 53: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

53

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

DST Visualisation

List of containers in the event: updated for each event. Name and version for RecCollection.

RecMuon

TTrack

Formatted text informationfor selected RecCollection

iCobra event browser: graphical structure of event

Page 54: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

54

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

ORCA Visualisation

v InputCollection: bt03_ttH115_6j1lr ttH event with mH = 115 GeV at low luminosity (2*10^33 cm-2s-

1)

Page 55: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

55

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Part 5: OSCAR Visualisation

Page 56: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

56

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Geant4 Trajectories

Page 57: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

57

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Lego

Page 58: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

58

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Part 6: DAQ Visualisation

Page 59: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

59

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

DDD Visualisation

v To create your own detector description see the Detector Description Language XML Tutorial (by Michael E. Case):r http://cmsdoc.cern.ch/cms/software/ddd/www/xmltutorial/

index.html> iguana -c myGeometry

Select OSCAR.

> iguana -c myGeometry

Select OSCAR.

Page 60: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

60

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Part 7: Control Centre

Page 61: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 61

Control Centre

v Selecting different views (3D, 2D, Lego etc.) will automatically update the control centre for its available categories

Categories registered for

2D View

Categories registered for

2D View

Categories registered for

Lego view

Categories registered for

Lego view

Categories registered for 3D ViewCategories registered for 3D View

Page 62: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 62

Animators Category

v A category to manage 3D animators.List of available

animators

List of available animators

Add/remove animatorsAdd/remove animators

Automatically apply the changes made

via GUI

Automatically apply the changes made

via GUI

Start/Stop animation

Start/Stop animation

Axis of animationAxis of animation

Align to x, y or z axis

Align to x, y or z axis

Opens the Animators

category in the control centre

Opens the Animators

category in the control centre

Page 63: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 63

Clip Plane Category

v A category to manage clip planes.List of available clip

planes

List of available clip planes

Add/remove clip planesAdd/remove clip planes

Automatically apply the changes made

via GUI

Automatically apply the changes made

via GUI

Turn On/Off the 3D plane

manipulator

Turn On/Off the 3D plane

manipulator

Align to x, y or z axis

Align to x, y or z axis

Opens the clip planes category

in the control centre

Opens the clip planes category

in the control centre

Activate/de-activate clip plane

Activate/de-activate clip plane

Page 64: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 64

Slicers Category

v A category to manage the slicers.

List of available slicersList of available slicersAdd/remove slicers

Automatically apply the changes made

via GUI

Automatically apply the changes made

via GUI

Turn On/Off the 3D slicer

manipulator

Turn On/Off the 3D slicer

manipulator

Align to x, y or z axis

Align to x, y or z axis

Opens the slicers category in the control centre

Opens the slicers category in the control centre

Activate/de-activate slicer

Activate/de-activate slicer

Thickness of the slicer

Thickness of the slicer

Page 65: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 65

Lights Category

v A category to manage 3D lights.List of available lightsList of available lights Add/remove lights

(Head light can not be removed)

Add/remove lights (Head light can not be

removed)

Automatically apply the changes made

via GUI

Automatically apply the changes made

via GUI

Turn On/Off the 3D light

manipulator

Turn On/Off the 3D light

manipulator

Align to x, y or z axis

Align to x, y or z axis

Opens the lights category in the control centre

Opens the lights category in the control centre

Turn On/Off lightTurn On/Off light Color of the light

Color of the light

Type of the lightType of the light

Light intensityLight intensity

Page 66: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 66

View points Categoryv A category to manage 3D view

points.List of available view points

List of available view points

Add/remove view points (Current

viewpoint can not be removed)

Add/remove view points (Current

viewpoint can not be removed)

Automatically apply the

changes made via GUI

Automatically apply the

changes made via GUI

Turn On/Off auto clipping (automatic adjustment of the

near/far clip planes)

Turn On/Off auto clipping (automatic adjustment of the

near/far clip planes) Align camera to x, y or z

axis

Align camera to x, y or z

axis

Opens the view points category in the control centre

Opens the view points category in the control centre

Zoom In/outZoom In/out

Near/Far clip plane distance

Near/Far clip plane distance

Rotate viewRotate view

Page 67: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 67

Field Planes Categoryv A category to manage 3D field

planes.

Opens the field planes category

in the control centre

Opens the field planes category

in the control centre

Automatically apply the

changes made via GUI

Automatically apply the

changes made via GUI

Turn On/Off the 3D manipulatorTurn On/Off the 3D manipulator

List of available field planesList of available field planes

X, Z density and segment ratio

X, Z density and segment ratio

Coloring schemeColoring scheme

Show/hide field, field color map or

field segments

Show/hide field, field color map or

field segments

Page 68: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 68

Print/View Properties Category…(Examiner Viewer)

v This section of the category allows you to control different properties of the examiner viewer

Opens the print/view property

category in the control centre

Opens the print/view property

category in the control centre

Turn On/Off the 3D animation and

detail seek

Turn On/Off the 3D animation and

detail seek

Make mouse cursor visible/invisible

Make mouse cursor visible/invisible

Drawing style when camera is standing

still

Drawing style when camera is standing

still

Drawing style when the end user is interacting with the scene camera,

causing continuos animation redraws

Drawing style when the end user is interacting with the scene camera,

causing continuos animation redraws

Seek time for seek modeSeek time for seek mode

Turning On/Off the auto clipping of

near/far clip planes

Turning On/Off the auto clipping of

near/far clip planes

Enable/Disable Stereo viewing

Enable/Disable Stereo viewing

Other properties. Click on these to get the details

Other properties. Click on these to get the details

Page 69: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 69

Print/View Properties Category…(Scene Manager)

v This section of the category allows you to control different properties of the 3D scene manager

Opens the print/view property

category in the control centre

Opens the print/view property

category in the control centre

Select the back ground color of the scene

Select the back ground color of the scene

Enable/Disable RGB mode and

real time updates

Enable/Disable RGB mode and

real time updates

Page 70: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 70

Print/View Properties Category…(GL Render)v This section of the category

allows you to control different properties for the GL RenderOpens the

print/view property category in the control centre

Opens the print/view property

category in the control centre

Enable/Disable antialiasing passes,

auto redraw and updates on render

pass

Enable/Disable antialiasing passes,

auto redraw and updates on render

pass

Transparency types and

redraw priorty

Transparency types and

redraw priorty

Page 71: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 71

Print/View Properties Category…(QT Properties)

v This section of the category allows you to control different properties of the QT propertiesOpens the

print/view property category in the control centre

Opens the print/view property

category in the control centre

Window style of the iguana application

Window style of the iguana application

Page 72: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 72

Print/View Properties Category…(Print Properties)

v This section of the category allows you to control different properties of the PrintingOpens the

print/view property category in the control centre

Opens the print/view property

category in the control centre

Enable/disable the best root finding

algorithm

Enable/disable the best root finding

algorithm

Enable/Disable the printing of the

scene back ground

Enable/Disable the printing of the

scene back ground Enable/disable

simple line offset

Enable/disable simple line offset

Enable/disable occlusion culling

Enable/disable occlusion culling

Enable/disable landscape printing

Enable/disable landscape printing

Page 73: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 73

3D Node Manipulator Category…v A category to manipulate the fields of any 3D

node.

v Select a node, from twig tree or 3D Browser (in pick/select mode), and open 3D node manipulator category to manipulate that node

Opens the 3D node manipulator

category in the control centre

Opens the 3D node manipulator

category in the control centre

Node and its children list

Node and its children list

Different controllable

fields of selected node

Different controllable

fields of selected node

Selected nodeSelected node

Automatically apply the

changes made via GUI

Automatically apply the

changes made via GUI

Page 74: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 74

3D Node Manipulator Category…

v If there are no controllable fields then the 3D node manipulator category will be empty

Page 75: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Shahzad Muzaffar, Northeastern Universityhttp://iguana.cern.ch 75

Range Controller

v Right clicking mouse on any range controller will pop-up the menu from where one can select “Edit” to set the step size, range, precision (float values only) and value of that field.

Range ControllersRange Controllers

Min/Max RangeMin/Max Range

Small/Long Step sizeSmall/Long Step size

PrecisionPrecision

Page 76: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

76

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Part 8: IGUANACMS and Python

Page 77: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 77

Python

v Object-oriented programming language introduced in the beginning of the 90s;

v Easy to learn but powerful;

v It is currently the selected scripting language of choice for COBRA & IGUANA.

Page 78: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 78

IGUANA & Python

v IGUANA provides support for python scripting in two different ways:

• Through the interactive shell

• Through the embedded interpreter service.

Page 79: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 79

Interactive Python Shell

v Go to the “File/New...” menu

v Select “Python shell”

Page 80: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 80

Interactive Python Shellv A new

embedded window should popup;

v A Scripts service is added to the menu bar.

You can either type the

commands in the python shell or

load and execute earlier prepared python script.

You can either type the

commands in the python shell or

load and execute earlier prepared python script.

Page 81: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 81

Using Python for Selecting Twigs

v There are two ways of doing this:

• Easy way;

• Hard (but powerful) way.

Page 82: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 82

Easy Way

from PyIgTwigNavigation import *

enableTwig ("/Objects/Detector/OCMS")enableTwig ("/Objects/Detector/OCMS/CMSE")

from PyIgTwigNavigation import *

enableTwig ("/Objects/Detector/OCMS")enableTwig ("/Objects/Detector/OCMS/CMSE")

and then re-disable the twigs with:

disableTwig ("/Objects/Detector/OCMS/CMSE")disableTwig ("/Objects/Detector/OCMS")

disableTwig ("/Objects/Detector/OCMS/CMSE")disableTwig ("/Objects/Detector/OCMS")

This is done using the PyIgTwigNavigation module:

Page 83: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 83

Page 84: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 84

Page 85: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 85

Hard (but powerful) WayThis is done using the IGUANA framework:

from PyIgObjectBrowser import *from PyIgCommonData import *from PyIgQtPython import *from PyIgStudio import *

def setTwigVisibility (twigName, visibility): state = IgPythonState.get () rootTwig = twigName.split ("/")[1] assert (rootTwig != None) dd = IgDocumentData.get (state) twig = dd.root (rootTwig, False) assert (twig != None) modifiedTwig = twig.lookup (twigName) modifiedTwig.selfVisible (visibility) IgRepSet.update (modifiedTwig, -1)

from PyIgObjectBrowser import *from PyIgCommonData import *from PyIgQtPython import *from PyIgStudio import *

def setTwigVisibility (twigName, visibility): state = IgPythonState.get () rootTwig = twigName.split ("/")[1] assert (rootTwig != None) dd = IgDocumentData.get (state) twig = dd.root (rootTwig, False) assert (twig != None) modifiedTwig = twig.lookup (twigName) modifiedTwig.selfVisible (visibility) IgRepSet.update (modifiedTwig, -1)

Page 86: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 86

Hard (but powerful) Way

from PyIgObjectBrowser import *from PyIgCommonData import *from PyIgQtPython import *from PyIgStudio import *

def setTwigVisibility (twigName, visibility): state = IgPythonState.get () rootTwig = twigName.split ("/")[1] assert (rootTwig != None) dd = IgDocumentData.get (state) twig = dd.root (rootTwig, False) assert (twig != None) modifiedTwig = twig.lookup (twigName) modifiedTwig.selfVisible (visibility) IgRepSet.update (modifiedTwig, -1)

from PyIgObjectBrowser import *from PyIgCommonData import *from PyIgQtPython import *from PyIgStudio import *

def setTwigVisibility (twigName, visibility): state = IgPythonState.get () rootTwig = twigName.split ("/")[1] assert (rootTwig != None) dd = IgDocumentData.get (state) twig = dd.root (rootTwig, False) assert (twig != None) modifiedTwig = twig.lookup (twigName) modifiedTwig.selfVisible (visibility) IgRepSet.update (modifiedTwig, -1)

This is done using the IGUANA framework:

Page 87: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

IGUANACMS Tutorial, September, 2004 Giulio Eulisse, Northeastern Universityhttp://iguana.cern.ch 87

Hard (but powerful) Way

from PyIgObjectBrowser import *from PyIgCommonData import *from PyIgQtPython import *from PyIgStudio import *

def setTwigVisibility (twigName, visibility): state = IgPythonState.get () rootTwig = twigName.split ("/")[1] assert (rootTwig != None) dd = IgDocumentData.get (state) twig = dd.root (rootTwig, False) assert (twig != None) modifiedTwig = twig.lookup (twigName) modifiedTwig.selfVisible (visibility) IgRepSet.update (modifiedTwig, -1)

from PyIgObjectBrowser import *from PyIgCommonData import *from PyIgQtPython import *from PyIgStudio import *

def setTwigVisibility (twigName, visibility): state = IgPythonState.get () rootTwig = twigName.split ("/")[1] assert (rootTwig != None) dd = IgDocumentData.get (state) twig = dd.root (rootTwig, False) assert (twig != None) modifiedTwig = twig.lookup (twigName) modifiedTwig.selfVisible (visibility) IgRepSet.update (modifiedTwig, -1)

This is done using the IGUANA framework:

Page 88: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

88

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Conclusion

Page 89: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

89

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

Troubleshooting

v Run toolchecker.pl to check the correctness of your configuration;

v If you working with data stored remotely: check that the data you want to visualize are accessible (rfdir, rfcp, etc.);

v If you run visualisation on a remote node: check network traffic and afs performance;

v Use TraceOnThrow to see what was the problem of the crash;

v Ask iguana to give detailed output:r env LOG=stderr iguana -c orcarc

Check Savannah bug reporting system and submit a report:http://savannah.cern.ch/bugs/?group=iguana

Page 90: CMS Tutorial, September 2004 September, 2004 Ianna Osborne, Northeastern University  IGUANACMS Tutorial Ianna Osborne, Shahzad Muzaffar,

90

IGUANACMS Tutorial, September, 2004 Ianna Osborne, Northeastern Universityhttp://iguana.cern.ch

v There are known problems:r We are investigating why 2D and Lego representations do not

properly work in multi-threaded ORCA visualisaton applications which have asynchronous updates of the representations;

r Some mirrored volumes have troubles;r We are aware of performance issues with

handling very large number of volumes and memory leaks.

Known Problems

Savannah bug reporting system:http://savannah.cern.ch/bugs/?group=iguana