Exceptions

Exceptions are located in the file likelihood/errors.h.

class Root : public std::exception

All explicit HJCFIT exception derive from this, for easy catching,.

Subclassed by HJCFIT::errors::Index, HJCFIT::errors::Math, HJCFIT::errors::NotImplemented, HJCFIT::errors::Python, HJCFIT::errors::Runtime

General

class Index : public HJCFIT::errors::Root, public virtual std::out_of_range

Index error.

class Runtime : public HJCFIT::errors::Root

Runtime error which carries a message.

class NotImplemented : public HJCFIT::errors::Root

NotImplemented error which carries a message.

Math

class Math : public HJCFIT::errors::Root

Math (convergence, domain, etc) error.

Subclassed by HJCFIT::errors::Domain, HJCFIT::errors::Mass

class Mass : public HJCFIT::errors::Math

Math error which carries a message.

Subclassed by HJCFIT::errors::ComplexEigenvalues, HJCFIT::errors::MaxIterations, HJCFIT::errors::NaN

class ComplexEigenvalues : public HJCFIT::errors::Mass

Found unexpected complex eigenvalues.

class NaN : public HJCFIT::errors::Mass

Found a Not a Number.

class Domain : public HJCFIT::errors::Math, public virtual std::domain_error

Input error to a math problem.

Subclassed by HJCFIT::errors::NotInvertible

class MaxIterations : public HJCFIT::errors::Mass

Thrown when the maximum number of iterations is reached.

class NotInvertible : public HJCFIT::errors::Domain

Matrix is not invertible.

Python

class Python : public HJCFIT::errors::Root

Exception thrown in python modules.

Subclassed by HJCFIT::errors::PythonErrorAlreadyThrown, HJCFIT::errors::PythonTypeError, HJCFIT::errors::PythonValueError

class PythonErrorAlreadyThrown : public HJCFIT::errors::Python

Exception was thrown by python API.

This is a convenience exception that can be thrown when a python api has set an error. It allows us to easily escape from the current scope, while keeping the python exception as it is.

class PythonTypeError : public HJCFIT::errors::Python

Exception thrown in python module when converting to C types.

class PythonValueError : public HJCFIT::errors::Python

Exception thrown in python module when converting to C types.