# Class NoninvertibleMatrixException

Object
Throwable
Exception
TransformException
NoninvertibleTransformException
NoninvertibleMatrixException

All Implemented Interfaces:
  `Serializable`

public class NoninvertibleMatrixException extends NoninvertibleTransformException
Thrown when a matrix cannot be inverted. This may be because the matrix is singular, or because the matrix is not square.

## Design note

This exception extends `NoninvertibleTransformException` because in the context of Apache SIS, matrix inversions occur mostly during the construction of a coordinate operation between a pair of CRS.

Since:
  0.4
See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `NoninvertibleMatrixException()`
  Constructs a new exception with no message.
  `NoninvertibleMatrixException(String message)`
  Constructs a new exception with the specified detail message.
  `NoninvertibleMatrixException(String message, Throwable cause)`
  Constructs a new exception with the specified detail message and cause.

- ## Method Summary

  ### Methods inherited from class TransformException

  `getLastCompletedTransform, setLastCompletedTransform`

  ### Methods inherited from class Throwable

  `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### NoninvertibleMatrixException

    public NoninvertibleMatrixException()
    Constructs a new exception with no message.

  - ### NoninvertibleMatrixException

    public NoninvertibleMatrixException(String message)
    Constructs a new exception with the specified detail message.
    Parameters:
      `message` - the detail message, or `null` if none.

  - ### NoninvertibleMatrixException

    public NoninvertibleMatrixException(String message, Throwable cause)
    Constructs a new exception with the specified detail message and cause.
    Parameters:
      `message` - the detail message, or `null` if none.
      `cause` - the cause, or `null` if none.