Source code for cyipopt.exceptions

# -*- coding: utf-8 -*-
"""
cyipopt: Python wrapper for the Ipopt optimization package, written in Cython.

Copyright (C) 2012-2015 Amit Aides
Copyright (C) 2015-2017 Matthias Kümmerer
Copyright (C) 2017-2024 cyipopt developers

License: EPL 2.0
"""

[docs] class CyIpoptEvaluationError(ArithmeticError): """An exception that should be raised in evaluation callbacks to signal to CyIpopt that a numerical error occured during function evaluation. Whereas most exceptions that occur in callbacks are re-raised, exceptions of this type are ignored other than to communicate to Ipopt that an error occurred. Ipopt handles evaluation errors differently depending on where they are raised (which evaluation callback returns ``false`` to Ipopt). When evaluation errors are raised in the following callbacks, Ipopt attempts to recover by cutting the step size. This is usually the desired behavior when an undefined value is encountered. - ``objective`` - ``constraints`` When raised in the following callbacks, Ipopt fails with an "Invalid number" return status. - ``gradient`` - ``jacobian`` - ``hessian`` Raising an evaluation error in the following callbacks results is not supported. - ``jacobianstructure`` - ``hessianstructure`` - ``intermediate`` """ pass