On success, S3L_acorr_setup returns S3L_SUCCESS.
S3L_acorr_setup performs generic checking of the arrays it accepts as arguments. If an array argument contains an invalid or corrupted value, the function terminates and an error code indicating which value of the array handle was invalid is returned. See Appendix A of this manual for a detailed list of these error codes.
In addition, the following conditions cause the function to terminate and return one of the following codes:
S3L_ERR_ARG_DTYPE - The data type of one of the array arguments is invalid. It must be one of:
S3L_float
S3L_double
S3L_complex
S3L_double_complex
S3L_ERR_MATCH_DTYPE - The array arguments are not of the same data type.
S3L_ERR_MATCH_RANK - The array arguments are not of the same rank.
S3L_ERR_ARG_RANK - The rank of one of the array arguments is not 1 or 2 as required.
S3L_ERR_ARG_EXTENTS - The extents of c are smaller than 2*ma-1 (1D case) or 2*ma-1 x 2*na-1 (2D case).
In addition, since S3L_fft or S3L_rc_fft is used internally to compute the autocorrelation, if the dimensions of c are not suitable for S3L_fft or S3L_rc_fft, an error code indicating this unsuitability is returned. For more details, refer to the man pages for S3L_fft and S3L_rc_fft.