1 / 19

Recon tests, Sci Fi status and Sci Fi design iteration

Recon tests, Sci Fi status and Sci Fi design iteration. Malcolm Ellis MICE Software Phone Meeting Wednesday 28 th April 2004. Reconstruction Tests. Still not had time to implement anything yet (sorry!) Plan one test per component of the Sci-Fi reconstruction

lyndon
Télécharger la présentation

Recon tests, Sci Fi status and Sci Fi design iteration

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Recon tests, Sci Fi status and Sci Fi design iteration Malcolm Ellis MICE Software Phone Meeting Wednesday 28th April 2004

  2. Reconstruction Tests • Still not had time to implement anything yet (sorry!) • Plan one test per component of the Sci-Fi reconstruction • Tests will create instances of each object in pre-determined circumstances and check that all methods produce expected output.

  3. Classes to be tested • SciFiDigits • SciFiDoubletCluster • SciFiSpacePoint • SciFiKalTrack (SciFiTrack is being phased out) • Timescale – depends on other priorities, hopefully by mid-June (I’m unavailable for any MICE work for all of May…)

  4. Sci Fi Reconstruction Status • Light yield and fibre pitch updated for last collaboration meeting (not commited yet) • Currently making SciFiKalTrack independent of SciFiTrack (so we can remove dependence on ROOT) • In addition, new version of Kalman (commited to CVS) gives better dE/dx correction – currently preparing dE/dx model for this to be used in Sci Fi track fit. • Aim to have this working and commited before I go offline on Friday…

  5. SciFi Design Iteration • So far, have looked at the reconstructed classes as well as the modelling. • ArgoUML does not allow me to add qualifiers such as const, nor to explicitly specifiy pointers, references or STL collections, so I will present a bare diagram on the next page, followed by the signatures written out in plain text for each class on subsequent pages. • Where a class is derived from another class, I will not repeat the method description in the derived class. • I have not explicitly listed copy constructors, etc – they will of course be added!

  6. Reconstruction DetModel DetRep?

  7. SciFiHit • SciFiHit( const SciFiChannel&, int adc, int tdc ) • const SciFiChannel& channel() const • int adc() const • int tdc() const • double light() const // in PE • double time() const // in nanoseconds • double timeError() const // in nanoseconds • const SciFiMcHit* truthHit() const (So far the design has not included the MC truth side, so this is yet to be finalised!)

  8. SciFiCluster • SciFiCluster( const SciFiHit& ) • SciFiCluster( const SciFiHit&, const SciFiHit& ) • bool addHit( const SciFiHit& ) • const SciFiHit& seedHit() const • const SciFiHit* seedHit() const • const SciFiHit* neighbourHit() const • const SciFiFibre& fibre() const • double light() const • double time() const

  9. SciFiTriplet : public SciFiMeasurement • SciFiTriplet( const SciFiCluster&, const SciFiCluster&, const SciFiCluster& ) • double tripletResidual() const • double timeResidual() const

  10. SciFiDuplet : public SciFiMeasurement • SciFiDuplet( const SciFiCluster&, const SciFiCluster& ) • double timeResidual() const

  11. SciFiSinglet : public SciFiMeasurement • SciFiSinglet( const SciFiCluster& )

  12. SciFiMeasurement : public MeasurementB • virtual SciFiMeasurement() = 0 • const SciFiCluster* vHit() const = 0 • const SciFiCluster* xHit() const = 0 • const SciFiCluster* wHit() const = 0 • const SciFiCluster* hit( int ) const = 0 • HyperVector position() const = 0 • double time() const = 0 • double timeError() const = 0 • const SciFiStation& station() const = 0 • int numClusters() const = 0

  13. SciFiKalTrack : public MouseBaseTrack • SciFiKalTrack( const SciFiMeasurement&, const SciFiMeasurement&, const SciFiMeasurement& ) • SciFiKalTrack( const std::vector<const SciFiMeasurement&>& ) • bool addMeasurement( const SciFiMeasurement& ) • int numMeasurements() const • double reFit() • const SciFiMeasurement* measurement( int ) const • const SciFiTracker& tracker() const

  14. SciFiChannel • SciFiChannel( const std::vector<const SciFiFibre*>, int mcm, int chan, double ped, double gain ) • const std::vector<const SciFiFibre*>& fibres() const • int numFibres() const • const SciFiFibre* fibre( int ) const • int mcm() const • int channel() const • double pedestal() const • double gain() const

  15. SciFiFibre • SciFiFibre( const SciFiPlane&, int ) • bool addChannel( const SciFiChannel& ) • const SciFiChannel* channel() const • const SciFiPlane& plane() const • int number() const • Hep3Vector position() const

  16. SciFiPlane • SciFiPlane( const SciFiStation&, int ) • const SciFiStation& station() const • int addFibre( const SciFiFibre& ) • int numFibres() const • const std::vector<const SciFiFibre&>& fibres() const • const SciFiFibre* fibre( int ) const • int number() const • Hep3Vector orientation() const • Hep3Vector position() const

  17. SciFiStation • SciFiStation( const SciFiTracker&, int ) • const SciFiTracker& tracker() const • int addPlane( const SciFiPlane& ) • int numPlanes() const • const std::vector<const SciFiPlane&>& planes() const • const SciFiPlane* plane( int ) const • int number() const • Hep3Vector position() const

  18. SciFiTracker : public Detector • SciFiTracker( int ) • int addStation( const SciFiStation& ) • int numStations() const • const std::vector<const SciFiStation&>& stations() const • const SciFiStation* station( int ) const • int number() const • Hep3Vector position() const

  19. Further detailed design • Once I get back in June, we should discuss a number of things: • Progress in other areas of responsibility • Check detailed design of the tracking/particle ID work done at CERN • Discuss persistency options, make a decision and start work on it (I can make a presentation on the “iDST” option in June) • Also in June, I’ll start to enter these prototypes as C++ code into the new CVS area.

More Related