1 %module
"Math::GSL::Errno"
3 #include
"gsl/gsl_errno.h"
4 #include
"gsl/gsl_types.h"
6 %include
"gsl/gsl_errno.h"
7 %include
"gsl/gsl_types.h"
11 gsl_error gsl_stream_printf gsl_strerror gsl_set_error_handler
12 gsl_set_error_handler_off gsl_set_stream_handler gsl_set_stream
13 $GSL_SUCCESS $GSL_FAILURE $GSL_CONTINUE $GSL_EDOM
14 $GSL_ERANGE $GSL_EFAULT $GSL_EINVAL $GSL_EFAILED
15 $GSL_EFACTOR $GSL_ESANITY $GSL_ENOMEM $GSL_EBADFUNC
16 $GSL_ERUNAWAY $GSL_EMAXITER $GSL_EZERODIV $GSL_EBADTOL
17 $GSL_ETOL $GSL_EUNDRFLW $GSL_EOVRFLW $GSL_ELOSS
18 $GSL_EROUND $GSL_EBADLEN $GSL_ENOTSQR $GSL_ESING
19 $GSL_EDIVERGE $GSL_EUNSUP $GSL_EUNIMPL $GSL_ECACHE
20 $GSL_ETABLE $GSL_ENOPROG $GSL_ENOPROGJ $GSL_ETOLF
21 $GSL_ETOLX $GSL_ETOLG $GSL_EOF
23 %EXPORT_TAGS
= ( all
=> [ @EXPORT_OK
] );
27 Math
::GSL
::Errno
- Error Handling
33 use Math
::GSL
::Errno qw
/:all
/;
34 gsl_set_error_handler_off
();
36 print gsl_strerror
($GSL_EDOM
) .
"\n";
52 Iteration has not converged
56 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
)
60 Range error
; used by mathematical functions when the result value is not representable because of overflow or underflow
(like ERANGE in the C library
)
68 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
).
84 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.
88 Problem with user-supplied function
92 Iterative process is our of control
96 Exceeded max number of iterations
104 Invalid user-specified tolerance
108 Failed to reach the specified tolerance
110 =item
* $GSL_EUNDRFLW
124 Failed due to roundoff error
128 Matrix
/vector lengths not compatible
138 =item
* $GSL_EDIVERGE
140 Integral
/Series is divergent
144 Not supported by hardware
160 Iteration not converging
162 =item
* $GSL_ENOPROGJ
164 Jacobian not improving solution
168 Cannot reach tolerance in F
172 Cannot reach tolerance in
X
176 Cannot reach tolerance in Gradient
190 =item
* gsl_stream_printf
192 =item
* 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.
194 =item
* gsl_set_error_handler
196 =item
* 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
).
198 =item
* gsl_set_stream_handler
200 =item
* gsl_set_stream