Olga Barannikova STAR Dubna Meeting 20031 STAR Software Basics Compiling using 'cons' STAR_LEVELS, starver and changing environment Coding Standards for.

Slides:



Advertisements
Similar presentations
Object Oriented Programming Elhanan Borenstein Lecture #12 copyrights © Elhanan Borenstein.
Advertisements

1 Lab Session-1 CSIT221 Fall 2002 b Refresher slides b Practice Problem b Lab Exercise (Demo Required)
Classes Separating interface from implementation
Liang, Introduction to Programming with C++, Second Edition, (c) 2010 Pearson Education, Inc. All rights reserved Chapter 9 Objects and Classes.
CSE 250: Data Structures Week 3 January 28 – February 1, 2008.
C++ Functions. 2 Agenda What is a function? What is a function? Types of C++ functions: Types of C++ functions: Standard functions Standard functions.
Functions in C. Function Terminology Identifier scope Function declaration, definition, and use Parameters and arguments Parameter order, number, and.
STAR Software Basics Introduction to the working environment Lee Barnby - Kent State University.
Photon reconstruction and calorimeter software Mikhail Prokudin.
Lesson 7-Creating and Changing Directories. Overview Using directories to create order. Managing files in directories. Using pathnames to manage files.
1 Shower maximum detector (SMD) is a wire proportional counter – strip readout detector using gas amplification. SMD is used to provide a spatial resolution.
Recap, Test 1 prep, Composition and Inheritance. Dates Test 1 – 12 th of March Assignment 1 – 20 th of March.
Chapter 9 Defining New Types. Objectives Explore the use of member functions when creating a struct. Introduce some of the concepts behind object-oriented.
Current Status of Hadron Analysis Introduction Hadron PID by PHENIX-TOF  Current status of charged hadron PID  CGL and track projection point on TOF.
9/26/11HFT soft meeting, BNL1 Chain analysis fz file MuDst.root minimc.root geant.root event.root McEvent.root StMiniMcMaker StAssociationMaker : STAR.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 122 – Data Structures Classes: A Deeper Look Part.
Simulation tools for Upgrades NLO pQCD (W. Vogelsang) CTEQ6M5, DSS FF 200 GeV |  |
As of 28 Juni 2005Getting Starged with GEM - Shuei Yamada 1 Getting Started with GEM Shuei YAMADA ICEPP, University of Tokyo What is GEM? Before you start.
Update on the new reconstruction software F. Noferini E. Fermi center INFN CNAF EEE Analysis Meeting - 14/09/20151.
Learning to Use Root for STAR Gene Van Buren (UCLA) for the STAR Collaboration Accessing STAR Data Programming for STAR (Makers) Star => Computing => Tutorials.
Time of Flight Analysis Progress on TOF Software Frank Geurts for the TOF group.
Copyright © 2012 Pearson Education, Inc. Chapter 13: Introduction to Classes.
July 2011CMSC 341 CVS/Ant 1 CMSC 341 Java Packages Ant CVS Project Submission.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 13: Introduction to Classes.
Copyright © Curt Hill Generic Classes Template Classes or Container Classes.
ADTs and C++ Classes Classes and Members Constructors The header file and the implementation file Classes and Parameters Operator Overloading.
Distributed Backup And Disaster Recovery for AFS A work in progress Steve Simmons Dan Hyde University.
Update on the new reconstruction software F. Noferini E. Fermi center INFN CNAF EEE Analysis Meeting - 15/06/20151.
STAR Software Walk-Through. Doing analysis in a large collaboration: Overview The experiment: – Collider runs for many weeks every year. – A lot of data.
Y.Fisyak, BNL - STAR Upgrade workshop, 12/2/ Integrated Tracker – STAR tracking framework of the future update on  status and  perspective IT(TF)
Lecture 3 Classes, Structs, Enums Passing by reference and value Arrays.
Object-Based Programming Mostly Review. Objects Review what is object? class? member variables? member functions? public members? private members? friend.
February 28, 2003Eric Hjort PDSF Status and Overview Eric Hjort, LBNL STAR Collaboration Meeting February 28, 2003.
LM Feb SSD status and Plans for Year 5 Lilian Martin - SUBATECH STAR Collaboration Meeting BNL - February 2005.
FTPC status and results Summary of last data taken AuAu and dAu calibration : Data Quality Physic results with AuAu data –Spectra –Flow Physic results.
Structures Revisited what is an aggregate construct? What aggregate constructs have we studied? what is a structure? what is the keyword to define a structure?
Programming Fundamentals. Topics to be covered Today Recursion Inline Functions Scope and Storage Class A simple class Constructor Destructor.
STAR J/  Trigger in dA Manuel Calderon for the Heavy-Flavor Group Trigger Workshop at BNL October 21, 2002.
February 28, 2005 Introduction to Classes. Object Oriented Programming An object is a software bundle of related variables and methods. Software objects.
STAR Collaboration Meeting, BNL – march 2003 Alexandre A. P. Suaide Wayne State University Slide 1 EMC Update Update on EMC –Hardware installed and current.
STAR Analysis Meeting, BNL – oct 2002 Alexandre A. P. Suaide Wayne State University Slide 1 EMC update Status of EMC analysis –Calibration –Transverse.
STAR Collaboration meeting, Nantes Alexandre A. P. Suaide Wayne State University Slide 1 EMC analysis update Just to remember … What we have done.
1 Offline Week, October 28 th 2009 PWG3-Muon: Analysis Status From ESD to AOD:  inclusion of MC branch in the AOD  standard AOD creation for PDC09 files.
Copyright © 2015, 2012, 2009 Pearson Education, Inc., Publishing as Addison-Wesley All rights reserved. Chapter 13: Introduction to Classes.
Advanced BioPSE NCRR Programming Conventions and Standards J. Davison de St. Germain Chief Software Engineer SCI Institute December 2003 J.
StEvent I/O Model And Writing a Maker Or How to Add a New Detector Akio Ogawa BNL 2003 Nov Dubna.
STAR Collaboration Meeting, July 16, 2002 Manuel Calderón de la Barca Sánchez StMiniMcEvent.
ITTF “Re-View” Session, August 11, 2003 Manuel Calderón de la Barca Sánchez ITTF Evaluation for Spectra.
Mr H Kandjimi 2016/01/03Mr Kandjimi1 Week 3 –Modularity in C++
Defining Data Types in C++ Part 2: classes. Quick review of OOP Object: combination of: –data structures (describe object attributes) –functions (describe.
Analysis Tools interface - configuration Wouter Verkerke Wouter Verkerke, NIKHEF 1.
ANALYSIS TRAIN ON THE GRID Mihaela Gheata. AOD production train ◦ AOD production will be organized in a ‘train’ of tasks ◦ To maximize efficiency of full.
HYDRA Framework. Setup of software environment Setup of software environment Using the documentation Using the documentation How to compile a program.
Update on the new reconstruction software F. Noferini E. Fermi center INFN CNAF EEE Analysis Meeting - 28/09/20151.
Pointer to an Object Can define a pointer to an object:
What Is? function predefined, programmer-defined
Structures Revisited what is an aggregate construct? What aggregate constructs have we studied? what is a structure? what is the keyword to define a structure?
Friend Class Friend Class A friend class can access private and protected members of other class in which it is declared as friend. It is sometimes useful.
Developments of the PWG3 muon analysis code
Andy Wang Object Oriented Programming in C++ COP 3330
ITS “parallel” tracking
Introduction to Classes
Structures Revisited what is an aggregate construct? What aggregate constructs have we studied? what is a structure? what is the keyword to define a structure?
Introduction to Classes
Packages and Interfaces
Chapter 9 Objects and Classes
Namespaces How Shall I Name Thee?.
Presentation transcript:

Olga Barannikova STAR Dubna Meeting STAR Software Basics Compiling using 'cons' STAR_LEVELS, starver and changing environment Coding Standards for C++ File types in use

Olga Barannikova STAR Dubna Meeting STAR Software Library ls $STAR BIN OBJ StRoot asps include lib obj LIB StDb StarDb bin kumacs mgr pams Makers –Compiled code to put in a “chain”, 2 main chains are bfc.C and doEvents.C bfc.C is the chain for running reconstruction. Works on raw data. doEvents.C is for analyzing the reconstructed dsts Macros –Interpreted code - many examples $STAR/StRoot

Olga Barannikova STAR Dubna Meeting CVS - Concurrent Versions System Used to record the history of your source files. CVS is essential for a project is being worked on by multiple people. Quick Reference cvs co name = check out a copy of ‘name' into your working directory cvs update = update all the files in the current directory cvs -n update = tells what it would update, but the -n means it doesn't do it

Olga Barannikova STAR Dubna Meeting Cons Replacement for “Make” Cons is a system for constructing software Cons ensures that complex software is easily and accurately reproducible To get help: cons -x Full build: In top level directory type cons Partial build: cons +name Remove products: cons -r +name

Olga Barannikova STAR Dubna Meeting Cons – example: Obtain token klog (then type afs password at prompt) In a fresh directory “check out” cvs co StRoot/StFtpcTrackMaker Compile and build using “cons” cons +StFtpcTrackMaker

Olga Barannikova STAR Dubna Meeting STAR_LEVEL The present release assignment: SL00m (SL00m) ROOT_LEVEL SL01i (SL01i) ROOT_LEVEL AuAu 130GeV production SL01j (SL01j) ROOT_LEVEL updated SL01i with SIMU tag SL02c (SL02c) ROOT_LEVEL AuAu200 GeV production SL02d (SL02d) ROOT_LEVEL AuAu200 GeV production SL02e (SL02e) ROOT_LEVEL AuAu and pp 200GeV production SL02g (SL02g) ROOT_LEVEL FTPC side AuAu200 production SL02h (SL02h) ROOT_LEVEL only tag exists SL02i (SL02i) ROOT_LEVEL daq100 test,dAu200 MC SL03a (SL03a) ROOT_LEVEL real dAu 200GeV production SL03b (SL03b) ROOT_LEVEL dau200 MC hijing old-> SL03d (SL03d) ROOT_LEVEL pro-> SL03e (SL03e) ROOT_LEVEL ppMinBias, ppTrans-1,ppLong-1 new-> SL03f (SL03f) ROOT_LEVEL ppMinBias 2001/2002 SVT rerun dev-> DEV ROOT_LEVEL dev->.DEV ROOT_LEVEL

Olga Barannikova STAR Dubna Meeting Changing STAR_LEVEL 3 main library versions: –dev (updated daily) for development –new (~few weeks) relatively stable, perform studies here –pro (when necessary) for official production switch levels by typing e.g. ‘ starnew ’ –can check current level with ‘STAR_LEVELS’ switch levels by ‘ starver tag ’ e.g. starver 02d - to work in SL02gd Important: If the software you’re using was written in a more recent library version than the one you’re in – switch immediately – it’s a miracle your code worked at all!

Olga Barannikova STAR Dubna Meeting Coding standards File Extensions ROOT related code.h.cxx Plain C++ header files.hh.cc C++ coding style guidelines The public, protected and private keywords must be used explicitly Self-explanatory English names –theTotalEnergy, setEnergyTable(), getTrackPosition() Member functions should start with a small letter –StTrack::whatever() Begin each class data member with a lowercase m. – StDouble mDipAngle;

Olga Barannikova STAR Dubna Meeting Coding standards Each header file should contain only one class declarations Each class implementation code should go into a single source file Each header file must be protected from multiple inclusions #ifndef NAME_HH #define NAME_HH... #endif Every class should have at least one constructor and a destructor Use of private/protected, inline functions Avoid global variables or functions No hard-coded numbers. Use of constants (const) Use StType types

Olga Barannikova STAR Dubna Meeting Data Organization Model 1. DAQ (Data Acquisition) file created during event-taking 2. DAQ file gets through BFC (Big Full Chain)  3.  Event.root files created: no hits, instead: tracks fit using different methods and stored using StEvent model. 4.  StMuDST: a Root Tree with selected information; tracks are organized and sorted (StMuDST’s are smaller than the event.root files)

Olga Barannikova STAR Dubna Meeting A Class for StMcEvent-StEvent Object Association Used on MC or Embedded data Studies of –Energy loss –Acceptance –Efficiency –Hadronic interaction effects –Momentum resolution –Background contribution –…… StAssociationMaker

Olga Barannikova STAR Dubna Meeting Multimap Usage Methods: Find, Count, Equal_range

Olga Barannikova STAR Dubna Meeting Maps TPC Hits SVT Hits FTPC Hits Tracks (using all the previous hit multimaps) Kink Vertices V0 Vertices Xi Vertices The defaults are: TPC Cuts X Cut : 5 mm Y Cut : 5 mm Z Cut : 2 mm Required TPC Hits for Associating Tracks : 3 SVT Cuts X Cut : 1 mm Y Cut : 1 mm Z Cut : 1 mm Required SVT Hits for Associating Tracks : 1 FTPC Cuts R Cut : 3 mm Phi Cut : 5 degrees Required FTPC Hits for Associating Tracks : 3

Olga Barannikova STAR Dubna Meeting How to make a use of it: $STAR/StRoot/macros/examples/StAssociator.C 1.Run a chain –StEventMaker –StMcEventMaker –StAssociationMaker –StMcAnalysisMaker 2. Use standard McDst –MiniMcDst (*.minimc.root) Spectra PWG –strangeMuDst (*.MuDst.root) Strangeness PWG