Download presentation
Presentation is loading. Please wait.
Published byJosephine Lamb Modified over 9 years ago
1
NA61 collaboration meeting, Zagreb, October 2011 1 Shine Offline Framework: Status and Plans The Shine Offline Group
2
NA61 collaboration meeting, Zagreb, October 2011 2 Shine: Organization Framework: event (object persistence), detector & mag. field classes, central configuration, coordinate systems, data-source managers Event I/O: raw event (BOS), DS, SHOE (import/export) Modules: reading/writing, calibration, reconstruction, simulation NA49: clients, interfaces eventBrowser Validation: framework, core, event structures, modules Utilities: misc. helpers, STL (containers), Math, Geometry Documentation: SHOE, I/O, modules, reconstruction, physics, tracking Build system: CMakeModules, CMakeLists
3
NA61 collaboration meeting, Zagreb, October 2011 3 Overview Run Control Central Config Manager Registry NA61: TPC TOF Trigger PSD NA61: TPC TOF Trigger PSD Mag. Field
4
NA61 collaboration meeting, Zagreb, October 2011 4 Framework Event structures: SHOE Detector description strict separation of framework classes and (physics) code one class per header file non-deletable: processing only adds things, Has/Make/Get interfaces prevent accidental processing of a copy: private ctor/dtor data-source Managers: config defined queues of Managers; easy source replacement, wrappers for MySQL, SQLite, Xerces central configuration: Detector, Managers, Modules Registry of Random number streams, seeding conf
5
NA61 collaboration meeting, Zagreb, October 2011 5 Framework: Data Managers SQLiteMySQL Xerces TPC VTPC MTPC GTPC TOF BPD Trigger PSD Magnetic field Drift velocity etc. and now also TGeo
6
NA61 collaboration meeting, Zagreb, October 2011 6 Framework: Configuration XML run-time XML Schema validation: XSD automatic conversion of physical quantities into internal units 137.23 14.3 default configuration check-summed, modifications reported in run logs full configuration saved with data
7
NA61 collaboration meeting, Zagreb, October 2011 7 Event I/O Currently supports: raw BOS reading DS reading SHOE read/write (ROOT persistent Event) (pending) reading of event generators UniGen, HepMC,...
8
NA61 collaboration meeting, Zagreb, October 2011 8 SHOE output files (ROOT) are Event objects (no persistent/transient separation) mega/mini/micro SHOE switching-off increasing level of Event details (branches) GUI event/detector browser, run configuration inspector, simple selection tools
9
NA61 collaboration meeting, Zagreb, October 2011 9 SHOE
10
NA61 collaboration meeting, Zagreb, October 2011 10 Modules By detector: BPD, Trigger, TPCs, TOF, PSD etc. calibration, reconstruction, simulation (Geant4) readers/writers: native event/detector (SHOE) modules replaceable implementing several alternative or competing approaches is easy (if needed) Modules communicate (only) through the Event structure
11
NA61 collaboration meeting, Zagreb, October 2011 11 Modules: Run Control rudimentary control-language implemented in XML EventFileReaderSG EventCheckerSG BPDCalibratorSG BPDEventSelectorSG TPCCalibratorSG TOFCalibratorSG TPCClusterFinderFG TPCTrackFinderWG TOFTimeFinderDG TPCTrackPlotterSG ShineFileExporterSG intermediate Event states can be streamed at any time by inserting Writers
12
NA61 collaboration meeting, Zagreb, October 2011 12 Modules: Interface class ModuleName : public fwk::VModule { public: fwk::VModule::EResultFlag Init(); fwk::VModule::EResultFlag Process(evt::Event& event, const utl::AttributeMap& attr); fwk::VModule::EResultFlag Finish(); REGISTER_MODULE(”ModuleName”, ModuleName, ”$Id$”); };
13
NA61 collaboration meeting, Zagreb, October 2011 13 NA49 Clients as Modules EventFileReaderSG ClientInitializerSG MiniModuleSG VdriftCorrModuleSG Dipt256NewModuleSG EdistoModuleSG VtNcalcModuleSG EdistoModuleSG VtNcalcModuleSG EdistoModuleSG ResCorrModuleSG MtracModuleSG MpatModuleSG NA49ToShineConverterSG ShineFileExporterSG current module sequence with wrapped clients DSPACK assimilated into a shared library (DSHACK), runs in local mode (still needs shm)
14
NA61 collaboration meeting, Zagreb, October 2011 14 Client-Module Configuration -vt1_chris [DOCUMENTATION_PATH]/SampleNonEventData/RES_CORR_ZG/vt1.corr -vt2_chris [DOCUMENTATION_PATH]/SampleNonEventData/RES_CORR_ZG/vt2.corr -mtl_chris [DOCUMENTATION_PATH]/SampleNonEventData/RES_CORR_ZG/mtl.corr -mtr_chris [DOCUMENTATION_PATH]/SampleNonEventData/RES_CORR_ZG/mtr.corr -p [DOCUMENTATION_PATH]/SampleNonEventData/RES_CORR_ZG/vdrift_2007.txt example: XML configuration of RES_CORR_ZG client, run as Shine module
15
NA61 collaboration meeting, Zagreb, October 2011 15 Utilities XML Reader (Xerces library wrapper) SI units, internal units definition Mathematics, Statistics & Physics functions Traces, trace algorithms Linear Algebra, Geometry ODE Runge-Kutta Integrator, Mag. Field Tracker MD5 for configuration checksums custom exceptions logging, generic file I/O special template library specialized event & detector containers, shadow pointer, Meyers singleton, counted objects, safe bool cast etc.
16
NA61 collaboration meeting, Zagreb, October 2011 16 Build System CMake seems to be preferred by large projects, multiplatform Shape for external dependencies and production releases small dependency resolution engine; python for installation follow instructions in twiki pages buildbots automated compile, test, validation after each commit several linux flavors, email blame notifications
17
NA61 collaboration meeting, Zagreb, October 2011 17 Validation Unit testing: CppUnit I/O validation (test ROOT schema evolution) detect changes in reconstructed quantities on example datasets
18
NA61 collaboration meeting, Zagreb, October 2011 18 Status of Client Porting Roland & Oskar are mostly done with the technicalities of client porting and inclusion in Shine. more in Roland’s and Oskar’s talk To do: fix all bugs related to the operational difference: clients were single processes before, initialization/run/exit once per event (nobody cared about memory management); now initialization is done only once at Shine start, call client main() for each event in the chain (most clients written in a really unprofessional way -> a lot of bug fixes, will have to be ported back to old source) output verification (done for some) for some can be done only on statistical level, numerical differences (e.g patrec) mostly due to the pgf/gfortran differences in executable code event comparison
19
NA61 collaboration meeting, Zagreb, October 2011 19 Status of Client Porting miniportedmodule vdrift_corrportedmodule diptportedmodule edistoportedmodule vt_ncalcportedmodule res_corrportedmodule mtracportedmodule mpatportedmodule patrecportedmodule tpc_errorportedmodule r3dportedmodule tpc_flight_timeportedmodule vtxportedmodule ppointsportedmodule gtpc_trackportedmodule reformportedmodule ftof, tofl, tofrportedmodule dedxna61portedmodule v0findportedmodule v0fitportedmodule
20
NA61 collaboration meeting, Zagreb, October 2011 20 News Migration of NDST Online Monitor to Shine first native module (TriggerSimulatorSG ) MC event fully implemented in SHOE with RecEvent SimEvent cross linking buildbot integration (mostly done) first tags and a release several physics analysis done with SHOE
21
NA61 collaboration meeting, Zagreb, October 2011 21 First Physics Analyses with SHOE T61 – Tomek’s analysis SHOE – Martin’s analysis same event selection pC @ 31GeV 2007 (07H)h - analysis
22
NA61 collaboration meeting, Zagreb, October 2011 22 First Physics Analyses with SHOE 12 events out of ~200,000 already done: MC corrections; next: acceptance, feed down
23
NA61 collaboration meeting, Zagreb, October 2011 23 First Physics Analyses with SHOE And much more: Krypton calibration (Adam) S4 trigger bias studies with TriggerSimulatorSG (Michael H) T2 trigger probabilities with BOSToShine (Michael H) charged hadron analysis with SHOE (Martin) V0 analysis with SHOE (Michael U)
24
NA61 collaboration meeting, Zagreb, October 2011 24 First Physics Analyses with SHOE And much more... short lived resonances (Tanja) PSD (Oleg) (Maja, Anar,... ?)
25
NA61 collaboration meeting, Zagreb, October 2011 25 Development in Progress Shoe event: still thinking about alternative to ShoeLaces (current track/vertex linking implemented with indices) warning: SHOE still under development current production with beta release backward compatibility not guaranteed (yet) might affect files and user code!
26
NA61 collaboration meeting, Zagreb, October 2011 26 Monte Carlo Status see Marek’s talk
27
NA61 collaboration meeting, Zagreb, October 2011 27 Suggestions for Help detector description (especially “new” detectors) access to databases (currently DSPACK soon SQLite or ROOT) reconstruction modules for new detectors: PSD, LMPD these Modules can run after the client-wrappers or, since they will not be ready soon, even in the DSToSHOE-phase: EventFileReaderSG (read and convert standard reconstruction output) -> PSDReconstructorSG -> LMPDReconstructorSG -> ShineFileExporterSG SHOE validation everybody who runs old analysis on T61 or DSPACK: please re-write your progs for SHOE and check if physics results are the same utilities from old framework need to run natively: PadTrans: (x,y,z) given (pad,time) and vice versa potential point client: ideal for first module KalmanTracker? simulation modules advances with VMC, simHits are ready, need e.g. native MTSIM
28
NA61 collaboration meeting, Zagreb, October 2011 28 End
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.