TBCI is a C++ library which provides classes for Vectors, Matrices, etc., and defines operations on them such as additions, multiplications, etc. There are many Matrix classes providing specializations for different sparse matrices. They all feature a similar interface. TBCI comes with an extensive set of solvers for linear systems and an interface to lapack libraries. It uses the temporary base class idiom, which avoids unnecessary copying of data by having a notion of real and temporary objects which are treated differently with respect to assignment and copy c'tor.