def lstsq(a, b, rcond=-1): if rcond != -1: raise Exception('non-default rcond not yet implemented') x = Ch(lambda a, b : pinv(a).dot(b)) x.a = a x.b = b residuals = ch.sum( (x.a.dot(x) - x.b) **2 , axis=0) rank = NotImplementedError s = NotImplementedError return x, residuals, rank, s