def dot(self, x, y): """ returns x^T * y """ assert isinstance(x, self.dndarray) assert isinstance(y, self.dndarray) return np.vdot( x._arr, y._arr ).real