vsint
vsint - compute the discrete Fourier sine transform of an odd sequence.
The VSINT transforms are unnormalized inverses of themselves, so a call
of VSINT followed by another call of VSINT will multiply the input sequence
by 2 * (N+1). The VSINT transforms are normalized, so a
call of VSINT followed by a call of VSINT will return the original sequence.
SUBROUTINE VSINT( M, N, X, XT, MDIMX, WSAVE)
INTEGER M, N, MDIMX
REAL X(MDIMX,*), XT(MDIMX,*), WSAVE(*)
SUBROUTINE VSINT_64( M, N, X, XT, MDIMX, WSAVE)
INTEGER*8 M, N, MDIMX
REAL X(MDIMX,*), XT(MDIMX,*), WSAVE(*)
SUBROUTINE SINT( [M], [N], X, XT, [MDIMX], WSAVE)
INTEGER :: M, N, MDIMX
REAL, DIMENSION(:) :: WSAVE
REAL, DIMENSION(:,:) :: X, XT
SUBROUTINE SINT_64( [M], [N], X, XT, [MDIMX], WSAVE)
INTEGER(8) :: M, N, MDIMX
REAL, DIMENSION(:) :: WSAVE
REAL, DIMENSION(:,:) :: X, XT
#include <sunperf.h>
void vsint(int m, int n, float *x, float *xt, int mdimx, float *wsave);
void vsint_64(long m, long n, float *x, float *xt, long mdimx, float *wsave);
-
* M (input)
-
The number of sequences to be transformed. M >= 0.
-
* N (input)
-
Length of the sequence to be transformed. These subroutines
are most efficient when N+1 is a product of small primes. N >= 0.
-
* X (input/output)
-
On entry, a real two-dimensional array with dimensions
of (MDIMX x (N+1)) whose rows contain the sequences to be
transformed. On exit, the sine transform of the input.
-
* XT (input/output)
-
A real two-dimensional work array with dimensions of (MDIMX x (N+1)).
-
* MDIMX (input)
-
Leading dimension of the arrays X and XT as specified in a dimension
or type statement. MDIMX >= M.
-
* WSAVE (input)
-
On entry, an array with dimension of at least int(2.5 * N + 15)
initialized by VSINTI.