overview methodology design architecture outline of future work ideas for discussion

24
Overview • Methodology • Design • Architecture • Outline of future work • Ideas for discussion

Upload: allen-matthews

Post on 19-Jan-2018

216 views

Category:

Documents


0 download

DESCRIPTION

Use Case driven Abstractions are modeled by entities –Identify their properties –Ask questions –Study their interplay Follows the design course by J.Deacon –Leads to an object-oriented solution –Not the only way...

TRANSCRIPT

Page 1: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Overview• Methodology• Design• Architecture• Outline of future work• Ideas for discussion

Page 2: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Methodology• How to write a program to solve

• Traditionally design a data structure– COMMON Block– something like a C struct

ChanhLN

jjij

M

ii

N

jjj

111

lnln

Page 3: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Use Case driven• Abstractions are modeled by entities

– Identify their properties – Ask questions – Study their interplay

• Follows the design course by J.Deacon– Leads to an object-oriented solution– Not the only way ...

Page 4: Overview Methodology Design Architecture Outline of future work Ideas for discussion

How to describe the problem ?

• Not so easy• Trick

– “Physicist” is UML Actor– Asks the questions to solve the use cases

• Later the Actor is replaced by...– a main algorithm object– a strategy object (see later)

Page 5: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Entities• Lifetime

– For the whole job– For one event– Temporary

• Entities – specific for problem domain– functional abstraction, not physical objects

Page 6: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Over the whole job ...Configuration

PhotonRadiator

PhotonReflector

Rich

1..*

1

1..*

radiator : RadiatorID1

1

1

PhotonDetector

1

1

1 11

1

1..*

1

11..*

radiator : RadiatorID

+radiator

+reflector

+rich+rich +rich

+detector

Page 7: Overview Methodology Design Architecture Outline of future work Ideas for discussion

How to implement a Radiator ?

PhotonRadiator

Rich1AerogelRadiator RichXGasRadiator

RichXPhotonRadiator

Page 8: Overview Methodology Design Architecture Outline of future work Ideas for discussion

For one event ...

Track

TrackSegment

1..*

rich : RichIDradiator : RadiatorID

1

Photon

0..*

1

Event

0..*

1

Pixel

0..*

1

0..*

id : PixelID1

id : PixelID1

0..*

+pixel

1

0..*+track

+segment

1

1..*

+track

1

0..*

+pixel

+photon

+photon

rich : RichIDradiator : RadiatorID

0..*

1

+segment

Page 9: Overview Methodology Design Architecture Outline of future work Ideas for discussion

… a Track Entity

Track

TrackAdapterGAUDI Track

Inside RICH Algorithm

Outside World

Page 10: Overview Methodology Design Architecture Outline of future work Ideas for discussion

TrackSegment

Track

Radiator• Has a length

• Emits photons

Page 11: Overview Methodology Design Architecture Outline of future work Ideas for discussion

What happened to the Extrapolation ?

Track

TrackExtrapolation

Rich::Track

Rich::TrackSegment

Page 12: Overview Methodology Design Architecture Outline of future work Ideas for discussion

more complicated in detail ...

PhotonRadiator(from Detector)

TrackSegmentAdapterGAUDI TrackExtrapolation

Track

Photon

TrackSegment

rich : RichIDradiator : RadiatorID

1

1..*

+track

1rich : RichIDradiator : RadiatorID

+segment1..*

+photon

+segment

1

0..*

1

0..*

Page 13: Overview Methodology Design Architecture Outline of future work Ideas for discussion

GAUDI AlgorithmsAlgorithm 1

Dat

a St

ore

Algorithm 2

Algorithm 3

Page 14: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Architecture• Group of entities form a components• An assembly of components forms the

algorithm• Components are ...

– separated by well defined interfaces– assembled at run time – development of the components is de-coupled

Page 15: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Components

RIC

H In

terf

ace

Strategy

Monitor

EventAdapter

DetectorImplementation

Algorithm

Datastore

DetectorDescription

GAUDISteering

Histogram

Services

Page 16: Overview Methodology Design Architecture Outline of future work Ideas for discussion

UML ComponentsRICHAlgorithm

Strategy

EventReader

Monitor

Strategy

Monitor

Ev entAdapterDetector Implementation

PhotonDetector

ConfigurationPhotonRadia

torTrack

PhotonReflector

TrackSegment

Page 17: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Components ...• Are GAUDI sub-algorithms

– Profits from the flexible instantiation mechanism– Can use all GAUDI services

• Have their proper interfaces– A down cast exposes the interface

• Are controlled by a main algorithm– Instantiation– Controls the interplay

Page 18: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Detector Implementation

• Initialization ….– Create instance of entities

• Evaluation– Expose their interface– Do the real work– Database update ?

• Versions– ASCII file based– Detector geometry database based

Page 19: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Event Model• EventReader

– Controlling entity

• For each event– Read data store and create structure– Delete structure and write data store

• Versions– Reconstruction MC, smeared MC, Rec Data– Simulation

Page 20: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Strategy Object• Main Algorithm object prepares context

– EventModel– Detector Structure

• Delegates control to the strategy object• Versions

– Reconstruction, Global Likelihood, Other …– Simulation

Page 21: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Monitor Objects• As strategy object

– Read only access to event model– More then one allowed

• Versions– Histogramming– Detailed Log files– Display

Page 22: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Outline of work• Consolidation of OO structure

– Interleaved with functional update

• Better use of GAUDI features– Detector database– CDF to XML converter

• Catch up with SICB– Many topics– Priorities have to be set

Page 23: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Catch up ...• Adapt likelihood for background

– Tracking inefficiencies– Charged particle interactions in detector

• Geometry update– ASCII file

• Photon detector implementation– probably still generic for some time

• Other Algorithms ...

Page 24: Overview Methodology Design Architecture Outline of future work Ideas for discussion

Discussion• Detector data • Association to MC truth• How to store final results ?• Iteration of the algorithm ???

– Temporary results could be stored

• GEANT4