There is a mistake above. The exponential should be a matrix exponential:
i.e. tt.slinalg.expm(self.M*self.ls)
tt.slinalg.expm(self.M*self.ls)