1 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
5 C Authors: Paul N. Swarztrauber and Richard A. Valent
9 CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
11 SUBROUTINE XERFFT
( SRNAME
, INFO
)
13 C .. Scalar Arguments ..
22 C XERFFT is an error handler for library FFTPACK version 5.0 routines.
23 C It is called by an FFTPACK 5.0 routine if an input parameter has an
24 C invalid value. A message is printed and execution stops.
26 C Installers may consider modifying the STOP statement in order to
27 C call system-specific exception-handling facilities.
32 C SRNAME (input) CHARACTER*6
33 C The name of the routine which called XERFFT.
35 C INFO (input) INTEGER
36 C When a single invalid parameter in the parameter list of
37 C the calling routine has been detected, INFO is the position
38 C of that parameter. In the case when an illegal combination
39 C of LOT, JUMP, N, and INC has been detected, the calling
40 C subprogram calls XERFFT with INFO = -1.
42 C =====================================================================
44 C .. Executable Statements ..
47 WRITE( *, '(A,A,A,I3,A)') ' ** On entry to ', SRNAME
,
48 1 ' parameter number ', INFO
, ' had an illegal value'
49 ELSEIF
(INFO
.EQ
. -1) THEN
50 WRITE( *, '(A,A,A,A)') ' ** On entry to ', SRNAME
,
51 1 ' parameters LOT, JUMP, N and INC are inconsistent'
52 ELSEIF
(INFO
.EQ
. -2) THEN
53 WRITE( *, '(A,A,A,A)') ' ** On entry to ', SRNAME
,
54 1 ' parameter L is greater than LDIM'
55 ELSEIF
(INFO
.EQ
. -3) THEN
56 WRITE( *, '(A,A,A,A)') ' ** On entry to ', SRNAME
,
57 1 ' parameter M is greater than MDIM'
58 ELSEIF
(INFO
.EQ
. -5) THEN
59 WRITE( *, '(A,A,A,A)') ' ** Within ', SRNAME
,
60 1 ' input error returned by lower level routine'
61 ELSEIF
(INFO
.EQ
. -6) THEN
62 WRITE( *, '(A,A,A,A)') ' ** On entry to ', SRNAME
,
63 1 ' parameter LDIM is less than 2*(L/2+1)'