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