Logo MTL4

Tutorial

MTL4 is becoming rather stable and changes in the interface will be extremely rare. It goes without saying that we will do our best that applications are minimally affected. In particular, the topics in the tutorial are not subject to modifications. This, of course, does not exclude backward-compatible extensions.

  1. Vector and Matrix Types
    1. Vector Types
    2. Matrix Types
    3. Type Multivector
  2. Generic Insertion
    1. Vector Insertion
    2. Matrix Insertion
  3. Assignment
    1. Vector Assignment
    2. Matrix Assignment
  4. Operators
    1. Vector Expressions
    2. Rich Vector Expressions
    3. Matrix Expressions
    4. Matrix-Vector Expressions
  5. Norms
    1. Vector Norms
    2. Matrix Norms
  6. Reductions
    1. Vector Reductions
  7. Other Functions
    1. Conjugates
    2. Transposed
    3. Hermitian
    4. Sub-matrices
    5. Permutations and Reordering
    6. Banded Matrix View, Upper and Lower Triangular Views
    7. Rank-One and Rank-Two Update
    8. Other Matrix Functions
  8. Solving Linear Systems
    1. Triangular Solvers
    2. Introduction Krylov-Subspace Methods
    3. Using Predefined Linear Solvers
  9. Traversing Matrices and Vectors
    1. Iteration
    2. Recursion
  10. Advanced Topics
    1. Why and How we use Functors
  11. Discussion
    1. Namespace qualification
    2. Copying in MTL4
    3. Why Not Using Shallow Copy in Numerical Software
    4. Addicted to peak performance
  12. Performance
    1. Performance on an AMD Opteron 2GHz
  13. Overview
  14. Frequently Asked Questions


Tutorial -- MTL 4 -- Peter Gottschling and Andrew Lumsdaine -- Gen. with rev. 7542 on 7 Apr 2011 by doxygen 1.5.9 -- © 2010 by SimuNova UG.