![]() |
Blitz Support : |
From: Navneet Dalal (navneet.dalal_at_[hidden])
Date: 2003-09-11 11:40:52
Hi all,
I just checkout blitz and execute "make check-testsuite". gcc gives error
in vecexpr.h file. I failed to understand why it fails. May be someone can
look at it. I am using gcc3.2.2 on linux.
Another few things: I have used blitz in past for few tasks. And it lacks
some very basic things: related to TinyMatrix and TinyVector.
Since, I am unsure about my coding skills so if someone can look at my
changes/suggestions and decide if they has any repercussions and if not,
commit them to CVS.
1. TinyMatrix doesnot have TinyMatrix(T_numtype) constructor. May be we can
add this code
template<class T_expr>
inline TinyMatrix(_bz_tinyMatExpr<T_expr> expr)
{
_bz_meta_matAssign<N_rows, N_columns, 0>::f(*this, expr,
_bz_update<T_numtype, _bz_typename T_expr::T_numtype>());
}
This code will allow to construct TinyMatrices from T_numtype and
expressions.
2. Also, it lacks the binary operators on T_numtype
for e.g. operator -, +, *, / for T_numtype and expressions. I donot know
how to add functions accepting expressions.
3. In TinyVector class (tinyvec.h and tinyvec.cc), all constructors take
T_numtype argument, a slightly better way may be to pass const T_numtype&:
for e.g. inline TinyVector(const T_numtype& initValue); compare to
inline TinyVector(T_numtype initValue);
The same holds for all variants of TinyVector(T_numtype ... constructors.
4. in file array_impl.h, isInRange should be changed to
template<class T>
_bz_bool isInRange(const TinyVector<T,N_rank>& index) const
// Was : _bz_bool isInRange(const T_index& index) const
This will allow to check range for TinyVector values of types double.
T_index is typedef to TinyVector<int, rank>.
thanks in advance
navneet