FLENS
FLENS copied to clipboard
Cross product and triple scalar product for all vectors (dense, tiny, engine)
First step : modification of type result for vector closure
Before that, the result type was enforced to be DenseVector< Array<T> >. So, neither TinyVector nor different Engine could have been handled.
The current modification aims at making the result type consistent with the input vector types of the closure.
Second step : extension of blas level1 for tiny vectors
This extension is made for:
- asum
- dot
- iamax
- nrm2
- raxpy
- rot
- rotm
Of course, in order to ensure good performance, it may be also necessary to add implementations for these functions into tinylevel1.
Last step : Add cross product and triple scalar product.
It consists in adding:
- OpCross struct
- copy and axpy closures to eval y=x1%x2 and y+=x1%x2 (temporary done by default)