'Return a view: ary, where ary.size <= self.size.
Allows easy sharing of temporary memory
This is mostly provided for compatibility, -- dtype is ignored'

def share(self, shape, dtype=None, name=None):

    size = np.prod(shape)
    if (size > self.size):
        raise ValueError('total    size    of    new    array    must    <=    size    of    parent')
    ary = self._tensor.ravel()[:size].reshape(shape)
    return self.__class__(backend=self.backend, ary=ary, dtype=self._tensor.dtype, base=self)
