Math::GSL::Errno(3) Error Handling

SYNOPSIS


use Math::GSL::Errno qw/:all/;
gsl_set_error_handler_off();
print gsl_strerror($GSL_EDOM) . "\n";

STATUS CODES

  • $GSL_SUCCESS

    Success

  • $GSL_FAILURE

    General Failure

  • $GSL_CONTINUE

    Iteration has not converged

  • $GSL_EDOM

    Domain error; used by mathematical functions when an argument value does not fall into the domain over which the function is defined (like EDOM in the C library)

  • $GSL_ERANGE

    Range error; used by mathematical functions when the result value is not representable because of overflow or underflow (like ERANGE in the C library)

  • $GSL_EFAULT

    Invalid Pointer

  • $GSL_EINVAL

    Invalid argument. This is used to indicate various kinds of problems with passing the wrong argument to a library function (like EINVAL in the C library).Invalid argument. This is used to indicate various kinds of problems with passing the wrong argument to a library function (like EINVAL in the C library).

  • $GSL_EFAILED

    Generic Failure

  • $GSL_EFACTOR

    Factorization Failed

  • $GSL_ESANITY

    Sanity Check Failed

  • $GSL_ENOMEM

    No memory available. The system cannot allocate more virtual memory because its capacity is full (like ENOMEM in the C library). This error is reported when a GSL routine encounters problems when trying to allocate memory with malloc.

  • $GSL_EBADFUNC

    Problem with user-supplied function

  • $GSL_ERUNAWAY

    Iterative process is our of control

  • $GSL_EMAXITER

    Exceeded max number of iterations

  • $GSL_EZERODIV

    Division by zero

  • $GSL_EBADTOL

    Invalid user-specified tolerance

  • $GSL_ETOL

    Failed to reach the specified tolerance

  • $GSL_EUNDRFLW

    Underflow

  • $GSL_EOVRFLW

    Overflow

  • $GSL_ELOSS

    Loss of accuracy

  • $GSL_EROUND

    Failed due to roundoff error

  • $GSL_EBADLEN

    Matrix/vector lengths not compatible

  • $GSL_ENOTSQR

    Not a square matrix

  • $GSL_ESING

    Singularity Detected

  • $GSL_EDIVERGE

    Integral/Series is divergent

  • $GSL_EUNSUP

    Not supported by hardware

  • $GSL_EUNIMPL

    Not implemented

  • $GSL_ECACHE

    Cache limit exceeded

  • $GSL_ETABLE

    Table limit exceeded

  • $GSL_ENOPROG

    Iteration not converging

  • $GSL_ENOPROGJ

    Jacobian not improving solution

  • $GSL_ETOLF

    Cannot reach tolerance in F

  • $GSL_ETOLX

    Cannot reach tolerance in X

  • $GSL_ETOLG

    Cannot reach tolerance in Gradient

  • $GSL_EOF

    End of file

FUNCTIONS

  • gsl_error
  • gsl_stream_printf
  • gsl_strerror($gsl_errno) - This function returns a pointer to a string describing the error code gsl_errno. For example, print (``error: gsl_strerror ($status)\n''); would print an error message like error: output range error for a status value of GSL_ERANGE.
  • gsl_set_error_handler
  • gsl_set_error_handler_off() - This function turns off the error handler by defining an error handler which does nothing. This will cause the program to continue after any error, so the return values from any library routines must be checked. This is the recommended behavior for production programs. The previous handler is returned (so that you can restore it later).
  • gsl_set_stream_handler
  • gsl_set_stream