uBLAS

uBLAS is a C++ template class library that provides BLAS level 1, 2, 3 functionality for dense, packed and sparse matrices. The design and implementation unify mathematical notation via operator overloading and efficient code generation via expression templates. uBLAS provides templated C++ classes for dense, unit and sparse vectors, dense, identity, triangular, banded, symmetric, hermitian and sparse matrices. Views into vectors and matrices can be constructed via ranges, slices, adaptor classes and indirect arrays. The library covers the usual basic linear algebra operations on vectors and matrices: reductions like different norms, addition and subtraction of vectors and matrices and multiplication with a scalar, inner and outer products of vectors, matrix vector and matrix matrix products and triangular solver. The glue between containers, views and expression templated operations is a mostly STL conforming iterator interface.


References in zbMATH (referenced in 4 articles )

Showing results 1 to 4 of 4.
Sorted by year (citations)

  1. Bohn, Adam; Faenza, Yuri; Fiorini, Samuel; Fisikopoulos, Vissarion; Macchia, Marco; Pashkovich, Kanstantsin: Enumeration of 2-level polytopes (2019)
  2. Nelson, Blake; Kirby, Robert M.; Parker, Steven: Algorithm 940: Optimal accumulator-based expression evaluation through the use of expression templates (2014) ioport
  3. Härdtlein, J.; Pflaum, C.; Linke, A.; Wolters, C. H.: Advanced expression templates programming (2010) ioport
  4. Logg, Anders; Wells, Garth N.: DOLFIN: automated finite element computing (2010)