
Walter Landry <wlandry@ucsd.edu> writes:
Have you looked at
http://www.oonumerics.org/FTensor/
It implements a fair number of different tensor types (e.g. symmetric, antisymmetic), the element type is templated, and it has natural ways of specifying contractions. It doesn't have separate covariant and contravariant tensors, but that wouldn't be that hard to implement. It would just be a fair amount of work for quesionable gain. I used it for my General Relativity code, and I never missed the distinction between covariant and contravariant indices.
I bill it as a high performance tensor library, though now I think it might actually be better to use ordinary loops instead of the compile-time loops.
Really? Please say more. I clearly remember your talk on that work; weren't you saying that ordinary loops were so hard to write correctly that they compromised the chances of success in your projects? -- Dave Abrahams Boost Consulting http://www.boost-consulting.com