Open
Milestone
Requirements Analysis / Code Redesign
The final goal is to move to Design by Contract paradigm.
For TPC detector this would be:
- libtpc should be library of interfaces and base invariant classes (API for tpc, located in /detectors/tpc/)
- libtpc then loads libraries with specific implementations, for example libtpcClusterHitFinder located in /detectors/tpc/clusterHitFinder
- the constraints on the implementations are the tests (which in fact are requirements written in computer language) implemented in Acceptance TDD.
This is modern approach to long term stability & continuous improvement in software engineering.
Perfectly suits for our scientific project.
!!!This is currently of highest priority!!!
- So far all tasks below are marked with this milestone.
- Separate into smaller milestones, estimate priority, size, scope.
- Then assign each task to its corresponding (newly created) milestone and close this one.
LOADER
- settings
- geometry
UPPER ABSTRACTION LAYER FOR SIMULATION
UPPER ABSTRACTION LAYER FOR RECONSTRUCTION
- reconstruction of simulated events
- reconstruction of real events
GEOMETRY
- Base class having invariants such as number of rows, sectors etc
- inherited classes describing multiple geometries, such as aligned
UNIFICATION OF BASIC OBJECTS CLASSES
- clusters
- hits
- digis
FAIRTASK INTERFACES
- TpcClusterHitFinder
Unstarted Issues (open and unassigned)
2
Ongoing Issues (open and assigned)
3
Completed Issues (closed)
13
- TpcClusterFinderFast: write method to get TClonesArray of clusters, adapt to interface's Init & Exec methods
- Architecture: create global directory for multi-detector tasks
- Investigate: link between MpdTpcHit & MpdTpc2dCluster
- Update BaseTpcSectorGeo - sector & pad numeration
- MpdTpcDigit inheriting from BaseTpcDigit
- Design and implement class invariants/interfaces for base types in ClusterHitFinder algorithm
- All files must use new geometry class hierarchy - move MpdTpcSectorGeo class to legacy
- MpdTpcDedxTask added to list of tasks in one of MpdTpcKalmanFilter's constructors
- Part of code in MpdTpcKalmanFilter::Exec method should be in MpdTpcKalmanFilter::Init
- Tpc - TimeBin.h & TpcContFact.h & cxx to go into legacy (not used)
- TPC Geometry Classes - unified design
- MpdKalmanFilter implemented as FairTask but used as a library
- MpdVertexZFinder implemented as FairTask but used as a library in KF
Loading
Loading
Loading