All standard algebaric operators are implemented for fundamental numeric types.
Note that sometimes you may encounter type conversion problems,
(document PETEcast)
Most operations should also work with vector-valued coefficients (using class vec::vector).
They are defined in
coefficients/vector_algebra.hpp
, in namespace "vec".
A few specific operators are also available:
vec::inner_product(a,b) | elementwise inner product of a and b |
vec::concatenate(a,b) | the result contains vectors of length a.size() + b.size(), build with the elements of a followed by those of b. Also works with scalar arguments. |
vec::subscript(a,i) | returns a scalar built from the i-th component of a |
vec::ortho(a) | when a={{x,y}} is a 2d vector, returns the vector rotated by +pi/2 : {{-y,x}} |