code: def imag(self, newimag):
          
          if self.space.is_real:
              raise ValueError('cannot set imaginary part in real spaces')
          self.imag.data[:] = newimag
docs: Setter for the imaginary part.
  
          This method is invoked by ``x.imag = other``.
  
          Parameters
          ----------
          newimag : array-like or scalar
              Values to be assigned to the imaginary part of this element.
  
          Raises
          ------
          ValueError
              If the space is real, i.e., no imagninary part can be set.