S3L_deconv_setup sets up the initial conditions required for computing the deconvolution of A with B. It returns an integer setup value that can be used by subsequent calls to S3L_deconv or S3L_deconv_free_setup.
The C and Fortran syntax for S3L_deconv_setup are shown below.
#include <s3l/s3l-c.h> #include <s3l/s3l_errno-c.h> int S3L_deconv_setup(A, B, C, setup_id) S3L_array_t A S3L_array_t B S3L_array_t C int *setup_id |
include `s3l/s3l-f.h' include `s3l/s3l_errno-f.h' subroutine S3L_deconv_setup(A, B, C, setup_id, ier) integer*8 A integer*8 B integer*8 C integer*4 setup_id integer*4 ier |
where <type> is real*4 or real*8 for both C/C++ and F77/F90.
A - S3L internal array handle for the parallel array that contains the input signal to be deconvolved.
B - S3L internal array handle for the parallel array that contains the vector.
C - S3L internal array handle for the parallel array that will store the deconvolved signal.
This function uses the following arguments for output:
setup_id - Integer value retuned by this function. Use this value for the setup_id argument in subsequent calls to S3_deconv and S3L_deconv_free_setup.
ier (Fortran only) - When called from a Fortran program, this function returns error status in ier.
On success, S3L_deconv_setup returns S3L_SUCCESS.
S3L_deconv_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_RANK - The rank of one of the array arguments is not 1 or 2.
S3L_ERR_MATCH_RANK - The array arguments are not all of the same rank.
S3L_ERR_MATCH_DTYPE - The array arguments are not all of the same type.
S3L_ERR_ARG_EXTENTS - The extents of C are less than the corresponding extents ext(A) - ext(B) + 1, or the extents of A are less than the corresponding extents of B.
../examples/s3l/deconv/ex_deconv.c ../examples/s3l/deconv-f/ex_deconv.f
S3L_deconv(3) S3L_deconv_free_setup(3)