IOP2019 Case Study of different algorithms for various Matrix operations, and their C++ implementation as a template library