def __init__(self, step_rms=None, step_max=None, grad_rms=None, grad_max=None, rel_grad_rms=None, rel_grad_max=None):
if (step_rms is None and step_max is None and<EOL>grad_rms is None and grad_max is None and<EOL>rel_grad_rms is None and rel_grad_max is None):<EOL><INDENT>raise ValueError("<STR_LIT>")<EOL><DEDENT>self.step_rms = step_rms<EOL>self.step_max = step_max<EOL>self.grad_rms = grad_rms<EOL>self.grad_max = grad_max<EOL>self.rel_grad_rms = rel_grad_rms<EOL>self.rel_grad_max = rel_grad_max<EOL>
Optional arguments:
 | ``step_rms``  --  threshold for the RMS value of the step vector
                     in the iterative minimizer
 | ``step_max``  --  threshold for the maximum component of the step
                     vector in the iterative minimizer
 | ``grad_rms``  --  threshold for the RMS value of the gradient
                     components of the function to be minimized
 | ``grad_max``  --  threshold for the maximum value of the gradient
                     components of the function to be minimized
 | ``rel_grad_rms``  --  threshold for the RMS value of the gradient
                         components of the function to be minimized,
                         divided by the function value
 | ``rel_grad_max``  --  threshold for the maximum value of the gradient
                         components of the function to be minimized,
                         divided by the function value

Only the present arguments define when the minimization has
converged. All actual values must go below the given thresholds.