# Presentation: 125897

## GANGA TUTORIAL

- K. Harrison and C.L.Tan
- BNL, 27th August  2003

- - Scope of tutorial
-  Introduction to Ganga
-  Software installation and environment setup
-  Ganga startup
- – Running simple jobs through Ganga GUI
-  Using Ganga to run ATLAS software in batch jobs:
-   full simulation, Athena reconstruction
- - Ganga customisations for working with Atlfast

## Scope of tutorial

-  Main aims are:
-    1) Provide introduction to Ganga: concepts and key features
-    2) Show how to use Ganga to run ATLAS software in batch
-        jobs
-  Current version of Ganga is not the finished product, but
-    hope to show that it is already at the point where it starts
-    to be useful
-  Apologise in advance for rough edges and features in need
-    of improvement
- - Welcome user feedback

## Ganga basics

-  Ganga is an acronym for Gaudi/Athena and Grid Alliance
-  Short-term aims:
-     Deal with configuring and running Athena-based applications
-     Deal with submitting and monitoring jobs on
-      distributed (Grid) and local batch system
- - Longer-term aim:
-     Develop Athena services for use in Grid environment
-       (enable querying of replica catalogues, enable publication
-       of information for Grid monitoring, etc)
-  Today’s tutorial will not deal with Grid-related topics

## Project information

-  Ganga is being developed as an ATLAS/LHCb common project,
-    with support in UK from GridPP
- - Current main contributors are:
-     Developers: K.Harrison, W.Lavrijsen, A.Soroko, C.L.Tan
-     Technical direction: P.Mato, C.E.Tull
-     GridPP coordination: N.Brook, R.W.L.Jones
-  Ganga-related information regularly updated on web site:
-    _[http://](http://ganga.web.cern.ch/ganga)__[ganga](http://ganga.web.cern.ch/ganga)__[.web.](http://ganga.web.cern.ch/ganga)__[cern](http://ganga.web.cern.ch/ganga)__[.](http://ganga.web.cern.ch/ganga)__[ch](http://ganga.web.cern.ch/ganga)__[/](http://ganga.web.cern.ch/ganga)__[ganga](http://ganga.web.cern.ch/ganga)_

## Design

- User has access to functionality of GANGA components both through GUI, and through CLI, layered one over the other above a software bus
- Components used by GANGA can be divided into three categories:
- Ganga components of general applicability (to right in diagram)
- Ganga components providing specialized functionality (to left in diagram)
- External components (at bottom in diagram)

## Software installation

- To be able to run Ganga, it is necessary to have the following:
-    Python 2.2.1 or later (_[http://www.python.org](http://www.python.org/)_)
-    wxPython 2.3.3.1 (http://www.wxpython.org)
-  Latest version of Ganga can be obtained from Gaudi repository:
-    cvs –d pserver:cerncvs@lhcbcvs.cern.ch:/local/gaudicvs login
-    [password: CERNuser]
-    cvs –d pserver:cerncvs@lhcbcvs.cern.ch:/local/gaudicvs co Ganga
-  Software is pre-installed at BNL
-  source /afs/usatlas.bnl.gov/Grid/ganga/BNL_tutorial/setup.(c)sh
-    from login script (.tcshrc or similar)

## Ganga in text mode

-  After sourcing setup script, Ganga can be started in text
-    mode using:
-  ganga –t
-  Ganga classes can then be accessed directly, but this is
-   painful, see example:
-    ~/BNL_tutorial/Ganga_hostname.py
- - Higher-level command-line interface is being developed

## Ganga GUI

-  After sourcing setup script, Ganga GUI is launched using:
-  ganga &
-  GUI features:
-    Main panel (multi-purpose)
-    Job tree
-    Embedded python interpreter
-    Toolbar
-    Drop-down menus
-  In hands-on session, explore possibilities for job creation,
-   job monitoring, output examination, job copying

## Ganga GUI

- Embedded Python interpreter

- Jobs tree

- Job parameters

## Simulation: specifics

- _Executable:_
- ~/BNL_tutorial/simul/simul.standard.v6.BNL
- _Output Files:_
- 1) test.zebra
- 2) test.his
- _Parameters:_
- 1) ~/BNL_tutorial/simul/demo.root
- 2) test.zebra
- 3) test.his

## Reconstruction: specifics

- _Executable:_
- ~/BNL_tutorial/recon/recon.gen.v7.wrap
- _Input Files:_
- 1) ~/BNL_tutorial/recon/recon.gen.v7.ganga
- 2) ~/BNL_tutorial/recon/trigger.job
- _Output Files:_
- 1) ntuple.hbook
- 2) histo.hbook
- _Parameters:_
- 1) ~/BNL_tutorial/recon/demo.zebra
- 2) ntuple.hbook
- 3) trigger.job
- 4) 10

## Atlfast job-options editor

- Integral part of Ganga, but will function as standalone tool
-    Command-line program with a GUI wrapper
-  GUI-assisted customisation of job-options files prevents
-    certain errors (mis-spelt options/values, incorrect syntax)
-  User can define/manipulate sequences and lists
-  Editor is option-type aware
-     Drop-down menus for discrete choices
-     Arbitrary value entry for simple options
-     Value append for list-type options
-  Favourite settings can be saved to file for subsequent reloading
-  User-guide available:
-    _[http://](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[ganga](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[.web.](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[cern](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[.](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[ch](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[/](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[ganga](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[/user/JOE/JOE-](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[UserGuide](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)__[.html](http://ganga.web.cern.ch/ganga/user/JOE/JOE-UserGuide.html)_

## Sequence editor

## Options editor

## Preview of job-options file