ConicBundle

Internally most numerical routines build on a few BLASlike routines for efficiency reasons. On the first reading we recommend to skip this part entirely and to use only the operations given in
The purpose of the BLASlike routines is to further reduce the typical C++ problem of superfluous copying of elements due to temporary variables in places where high effeciency is in demand. The recommended procedure is to first develop the code with overloaded operators. Once the code works perfectly, split the statements into calls to these BLASlike routines for efficiency.
Most of the BLASlike routines are of level1type but follow a slightly different naming scheme more aligned to the syntax of C++. Some typical names are
The only level2type routine in heavy use is
The genmult() routine exists for almost any sensible combination of matrix classes, sensible meaning, e.g., that the product of a symmetric matrix with a square matrix is a square matrix that is typically not symmetric. So in most combinations C will need to be the most general type of class, a Matrix.