'Construct and return a deep copy of the Tensor passed.
Arguments:
a (Tensor): the object to copy
Returns:
Tensor: new array object with the same values as tsr.
Raises:
NotImplementedError: Can\'t be instantiated directly.'

def copy(self, a):

    raise NotImplementedError()
