![]() |
Blitz Devel : |
From: Juan José Gómez Cadenas (gomez_at_[hidden])
Date: 2002-12-02 04:30:48
Dear Todd,
My name is Juan José Gómez Cadenas. I am a high energy physicist working
currently at CERN, the large High Energy Physics Lab in Geneve.
We have recently written a package for track fitting in the presence of
non-linear effects such as multiple scattering and energy loss. We implement
the time-honoured Kalman Filter in a C++ library.
The Kalman Filter uses heavily matrix manipulation. For our prototyping we
used CLHEP, which has, however, mediocre performance and a poor interface.
Thus we started to write our own Matrix and Vector package. Fortunately, I
decided to look around just in case (HEP people are notorious for ignoring
every body else work) and found your very, very, VERY impressive library.
I believe that Blitz would be the best choice for our Kalman Package and
probably a nice replacement for all the vector and matrix classes in CLHEP.
In fact, it turns out that I am in the position of suggesting such
possibilities to the comunity, since I have been recently appointed referee
of the CERN-LHCC Grid Project, where, among other tasks, we will examine the
software packages available for scienticic calculations and its applications
to HEP.
Which brings me to a number of questions, if you could kindly bear with me for
a few minuts.
1) What is the status of Blitz? Is there a team currently active? Do you have
development plans in the near future?
2) What is your opinion of Bob Tinsdale proposal for a standard vector and
Matrix class? I tried to contact him, but there is a problem with his mail
box. Is that proposal going anywhere? If so, ¿is there any plans to implement
Blitz "behind" the proposed interface?
3) I see in your code that you have implemented Vector and Matrix classes but
do not discuss them in the documentation, where you prefer to refer to
general arrays. ¿Any particular reason?
4) In particular, SLMVT has a few nice functions for linear algebra
manipulations (such as LU decomposition, etc.) which are extremely useful for
us. One could think on extending Blitz Matrix classes to provide that
functionality (it should be rather straight forward).
Incidentally, I downloaded Blitz to my laptop, and compile it with gcc 3.1
without a wisper. There will be some resistance to used Blitz given that
MSVC, as I understand, does not manage to compile it, but we have a large
LINUX community, using gcc. However, I wonder if you will ever try to compile
with Microsoft Stuff (not that I am a big fun, mind you).
Thanks in advance. With my best regards,
Juan José Gómez Cadenas