
will you as a user concern about how tricky an implementation is? or will you rather care about how convinient and clear public interface is? The latter - naturally! If you can make it extensible so that the back end could (for example) be thread, CUDA, and MPI aware so much the better. ;-) well at this moment i can not imagine such a mechanism to transform
on 11.08.2009 at 18:16 Edward Grace wrote : particular (no matter how complex, e.g. (a + b*c - d*e*f...)) code to lib calls i will think about a possibility of such
i hope to make an implementation 'as good as' but which will exploit all of c++ advantages I look forward to it! Competing with top-end platform tuned FORTRAN90 compilers is not a challenge for the feint hearted! i'l do my best! but i will need someone help to express some equations in fortran to compare the performance
Well. You're a braver man than I! Building a templated linear algebra library is a lot of work! indeed! (but it is very interesting too) and once it is built won't i just throw it away?
How so? I don't use Blitz++ as it appears to have stagnated - very unfortunate. The concept seems quite attractive however. For example Blitz++ style expressiveness need not constrain you to scalars (tensors of order zero), vectors (tensors of order one) or matricies (tensors of order 2) and can allow far more flexibility than simple matrix calculus. For example, viewing _1 as placeholders in the a similar manner to boost::bind, being able to write things (I'm ignoring contra- vs. co- variance) like: [here goes code] so that the Einstein summation convention was observed (summation over repeated indices), would be superdoubleplusgood. you made my mind boil! i don't use such notation so i did not even think to implement such a feature but if you claim this feature is essential... well it must be implemented indeed and don't like that... placeholders
Incidentally you may be interested in the Tensor Contraction Engine, http://www.csc.lsu.edu/~gb/TCE/ or the tensor template library http://ttl.yanenko.com/ i ran through that TCE is targeted to chemists and fortran programmers so it's not rather interesting and the latter supplies only static sized tensors (if i understood right) which is not flexible in general
-- Pavel