Re: Physics vectors ( was Re: vector classes predefined?)

From: Fons Rademakers (Fons.Rademakers@cern.ch)
Date: Thu Jul 23 1998 - 13:21:23 MEST


Hi Rooters,

   I agree with Pasha's observations about CLHEP. Although Stefan Kluth's
ROOT port of CLHEP is important for everybody wanting to use code based on
"legacy" -:) CLHEP classes (G4), I think that not to slow down our work we
(i.e. ROOT community) need to have full control over a set of well integrated
physics vectors (3 vectors, Lorenz, etc). Recently we've been offered by
Chris Jillings (chris@owl.phy.queensu.ca) a ROOTified 3-Vector class.
The class seems to be quite complete and Chris is now finishing the full
integration in ROOT and he expects to have things ready in a week or two.

However, maybe Chris could already discuss some features of his class on 
roottalk so people can comment on them.

Cheers, Fons. 



Pasha Murat wrote:
> 
> 
>         Hi Rooters,
> 
> I guess this could be an intresting issue for public discussion:
> 
> Yves Schutz writes:
>  >
>  > Does a class "Lorentz vector" also exist ?
>  >
> 
> To the moment ROOT doesn't include classes for physics-oriented
> (2D-, 3D- and Lorentz) vectors. I'd consider it as an important piece
> which is still missing. One could think about several possibilities of
> how to fill this "hole":
> 
> - recently Stefan Kluth reported on his success in generating rootcint
>   dictionaries for CLHEP classes. (Great job, Stefan!)
>   In principle, one could take CLHEP classes as a starting point. The major
>   problem with CLHEP as I see it is that currently it doesn't seem to be
>   supported.
>   Moreover, physics vectors seem to be the least developed part of CLHEP, the
>   classes are missing quite a few very useful methods and it is not clear
>   what to do if we need these methods to be added:
>   - to ask somebody (whom?) to add missing methods (like pseudorapidity of
>     a 3-vector or delta(phi) between 2 2(3)-vectors) to CLHEP?
>   - to branch ROOT flavor of CLHEP ?
>   And definitely one'd like physics vectors to "know" about ROOT's TMatrix
>   class, whereas CLHEP vectors do not deal with ROOT TMatrices. So it seems
>   that even if we start from CLHEP, ROOT "flavor" of CLHEP will immediately
>   evolve into an independent package and it is necessary to understand all the
>   consequences of this step.
> 
> - an alternative approach could be to start from another, different from CLHEP,
>   physics vectors package (preferably - non-templated) and iterate
>   on it to make it useful for everybody. This seems to be a relatively modest
>   job - for example, I'm using a simple package of myself which is pretty much
>   complete with the exception of several methods like Lorentz rotations / boosts
>   which is trivial to add. I implemented it for the only reason that CLHEP
>   classes didn't have methods I needed ...
>   I'd also expect that many other people have similar packages - it is much
>   more easy to implement them than to wait for somebody to do it...
> 
> Anyway, as we already have a community of people actively using ROOT, I believe
> that
> 
> a) it is clear that we need physics vectors classes to be added to ROOT and
> b) that it makes a lot of sense to discuss what exactly we want from these
>    classes before going into implementation - here we facing a situation where
>    it is more difficult to decide on what is the right thing to do than to
>    implement it.
>                                 Any opinions? - Pasha

-- 
Org:    CERN, European Laboratory for Particle Physics.
Mail:   1211 Geneve 23, Switzerland          Phone: +41 22 7679248
E-Mail: Fons.Rademakers@cern.ch              Fax:   +41 22 7677910



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:34:35 MET