'return a dictionary with the termination status.
With ``check==False``, the termination conditions are not checked and
the status might not reflect the current situation.'

def stop(self, check=True):

    if (check and (self.countiter > 0) and self.opts['termination_callback'] and (self.opts['termination_callback'] != str(self.opts['termination_callback']))):
        self.callbackstop = self.opts['termination_callback'](self)
    return self.stopdict((self if check else None))
