added expression template for matrices