Errors

This is an overview about the exceptions that could arise in this library. They are available in matrix.errors:

The following exception is the base exception from which all other exceptions in this package are derived:

BaseError

exception matrix.errors.BaseError(message)[source]

Bases: Exception

This is the base exception for all exceptions in this package.

If a matrix has an invalid properties, the following exceptions can occur:

MatrixError

exception matrix.errors.MatrixError(matrix, message=None)[source]

Bases: matrix.errors.BaseError

An exception related to a matrix.

MatrixNotSquareError

exception matrix.errors.MatrixNotSquareError(matrix)[source]

Bases: matrix.errors.MatrixError

A matrix is not a square matrix although a square matrix is required.

MatrixNotFiniteError

exception matrix.errors.MatrixNotFiniteError(matrix)[source]

Bases: matrix.errors.MatrixError

A matrix has non-finite entries although a finite matrix is required.

MatrixSingularError

exception matrix.errors.MatrixSingularError(matrix)[source]

Bases: matrix.errors.MatrixError

A matrix is singular although an invertible matrix is required.

MatrixNotHermitianError

exception matrix.errors.MatrixNotHermitianError(matrix, i=None, j=None)[source]

Bases: matrix.errors.MatrixError

A matrix is not Hermitian although a Hermitian matrix is required.

MatrixComplexDiagonalValueError

exception matrix.errors.MatrixComplexDiagonalValueError(matrix, i=None)[source]

Bases: matrix.errors.MatrixNotHermitianError

A matrix has complex diagonal values although real diagonal values are required.

If a desired decomposition is not computable, the following exceptions can be raised:

NoDecompositionPossibleError

exception matrix.errors.NoDecompositionPossibleError(base, desired_type)[source]

Bases: matrix.errors.BaseError

It is not possible to calculate a desired matrix decomposition.

NoDecompositionPossibleWithProblematicSubdecompositionError

exception matrix.errors.NoDecompositionPossibleWithProblematicSubdecompositionError(base, desired_type, problematic_leading_principal_submatrix_index, subdecomposition=None)[source]

Bases: matrix.errors.NoDecompositionPossibleError

It is not possible to calculate a desired matrix decomposition. Only a subdecompostion could be calculated

NoDecompositionPossibleTooManyEntriesError

exception matrix.errors.NoDecompositionPossibleTooManyEntriesError(matrix, desired_type)[source]

Bases: matrix.errors.NoDecompositionPossibleError

The decomposition is not possible for this matrix because it would have too many entries.

NoDecompositionConversionImplementedError

exception matrix.errors.NoDecompositionConversionImplementedError(decomposition, desired_type)[source]

Bases: matrix.errors.NoDecompositionPossibleError

A decomposition conversion is not implemented for this type.

If the matrix, represented by a decomposition, has an invalid characteristic, the following exceptions can occur:

DecompositionError

exception matrix.errors.DecompositionError(decomposition, message=None)[source]

Bases: matrix.errors.BaseError

An exception related to a decomposition.

DecompositionNotFiniteError

exception matrix.errors.DecompositionNotFiniteError(decomposition)[source]

Bases: matrix.errors.DecompositionError

A decomposition of a matrix has non-finite entries although a finite matrix is required.

DecompositionSingularError

exception matrix.errors.DecompositionSingularError(decomposition)[source]

Bases: matrix.errors.DecompositionError

A decomposition represents a singular matrix although a non-singular matrix is required.

If a decomposition could not be loaded from a file, the following exceptions can be raised:

DecompositionInvalidFile

exception matrix.errors.DecompositionInvalidFile(filename)[source]

Bases: matrix.errors.DecompositionError, OSError

An attempt was made to load a decomposition from an invalid file.

DecompositionInvalidDecompositionTypeFile

exception matrix.errors.DecompositionInvalidDecompositionTypeFile(filename, type_file, type_needed)[source]

Bases: matrix.errors.DecompositionInvalidFile

An attempt was made to load a decomposition from an file in which another decomposition type is stored.

If the computation needs more iterations than the maximal number of iterations, the following exception occurs:

TooManyIterationsError

exception matrix.errors.TooManyIterationsError(message=None, iteration=None, result=None)[source]

Bases: matrix.errors.BaseError

Too many iterations are needed for the calculation.