| """ | |
| Module to define exceptions to be used in sympy.polys.matrices modules and | |
| classes. | |
| Ideally all exceptions raised in these modules would be defined and documented | |
| here and not e.g. imported from matrices. Also ideally generic exceptions like | |
| ValueError/TypeError would not be raised anywhere. | |
| """ | |
| class DMError(Exception): | |
| """Base class for errors raised by DomainMatrix""" | |
| pass | |
| class DMBadInputError(DMError): | |
| """list of lists is inconsistent with shape""" | |
| pass | |
| class DMDomainError(DMError): | |
| """domains do not match""" | |
| pass | |
| class DMNotAField(DMDomainError): | |
| """domain is not a field""" | |
| pass | |
| class DMFormatError(DMError): | |
| """mixed dense/sparse not supported""" | |
| pass | |
| class DMNonInvertibleMatrixError(DMError): | |
| """The matrix in not invertible""" | |
| pass | |
| class DMRankError(DMError): | |
| """matrix does not have expected rank""" | |
| pass | |
| class DMShapeError(DMError): | |
| """shapes are inconsistent""" | |
| pass | |
| class DMNonSquareMatrixError(DMShapeError): | |
| """The matrix is not square""" | |
| pass | |
| class DMValueError(DMError): | |
| """The value passed is invalid""" | |
| pass | |
| __all__ = [ | |
| 'DMError', 'DMBadInputError', 'DMDomainError', 'DMFormatError', | |
| 'DMRankError', 'DMShapeError', 'DMNotAField', | |
| 'DMNonInvertibleMatrixError', 'DMNonSquareMatrixError', 'DMValueError' | |
| ] | |