diff options
author | simon | 2008-09-03 13:37:58 +0000 |
---|---|---|
committer | simon | 2008-09-03 13:37:58 +0000 |
commit | 0cc36687f566ad0470dc40c7240e41e641874243 (patch) | |
tree | 5c6ded2c828b43f74cbc62605abb5a09053aaa40 /src/signalProcessing/fft | |
parent | c1f961a03e5736c4b8a0e09afc1657312054e897 (diff) | |
download | scilab2c-0cc36687f566ad0470dc40c7240e41e641874243.tar.gz scilab2c-0cc36687f566ad0470dc40c7240e41e641874243.tar.bz2 scilab2c-0cc36687f566ad0470dc40c7240e41e641874243.zip |
they shall compile now
Diffstat (limited to 'src/signalProcessing/fft')
-rw-r--r-- | src/signalProcessing/fft/dfft2.c | 19 | ||||
-rw-r--r-- | src/signalProcessing/fft/dfftbi.c | 2 | ||||
-rw-r--r-- | src/signalProcessing/fft/dfftmx.c | 27 | ||||
-rw-r--r-- | src/signalProcessing/fft/fft842.c | 4 | ||||
-rw-r--r-- | src/signalProcessing/fft/fft_internal.h | 11 | ||||
-rw-r--r-- | src/signalProcessing/fft/r8tx.c | 1 |
6 files changed, 41 insertions, 23 deletions
diff --git a/src/signalProcessing/fft/dfft2.c b/src/signalProcessing/fft/dfft2.c index 575bfe33..20011c04 100644 --- a/src/signalProcessing/fft/dfft2.c +++ b/src/signalProcessing/fft/dfft2.c @@ -11,16 +11,31 @@ */ #include "fft_internal.h" +#include <stdlib.h> -void dfft2 ( double* a , double* b , int nseg , int n , int nspn , int isn , int ierr, int* iw , int lw ) +void dfft2 ( double* a , double* b , int nseg , int n , int nspn , int isn , int ierr, double* iw , int lw ) { + + /*created to avoid the cast problem */ + int* iIw = (int*) malloc( sizeof (int) * (unsigned int) lw ); + + +/*so these lines are duplicated */ + iIw[0] = 0 ; + iIw[1] = 10 ; + iIw[2] = 10 ; + iIw[3] = lw ; + iIw[4] = 10 ; + iw[0] = 0 ; iw[1] = 10 ; iw[2] = 10 ; iw[3] = lw ; iw[4] = 10 ; - dfftbi ( a , b , nseg , n , nspn , isn , ierr , iw[0], iw[1], iw[2], iw[3], iw[4], iw, iw); + dfftbi ( a , b , nseg , n , nspn , isn , ierr ,iIw[0], iIw[1], iIw[2], iIw[3], iIw[4], iw, iIw); + + return ; } diff --git a/src/signalProcessing/fft/dfftbi.c b/src/signalProcessing/fft/dfftbi.c index db004f8b..de672e82 100644 --- a/src/signalProcessing/fft/dfftbi.c +++ b/src/signalProcessing/fft/dfftbi.c @@ -14,7 +14,7 @@ #include "max.h" #include "fft_internal.h" -void dfftbi ( double* a , double* b , int nseg , int n , int nspn , int isn , int ierr, int lout , int lnow , int lused , int lmax , int lbook , int* rstak , int* istak ) +void dfftbi ( double* a , double* b , int nseg , int n , int nspn , int isn , int ierr, int lout , int lnow , int lused , int lmax , int lbook , double* rstak , int* istak ) { int nfac[15] ; diff --git a/src/signalProcessing/fft/dfftmx.c b/src/signalProcessing/fft/dfftmx.c index dcffeb55..d642dc74 100644 --- a/src/signalProcessing/fft/dfftmx.c +++ b/src/signalProcessing/fft/dfftmx.c @@ -10,8 +10,10 @@ * */ +#include <stdlib.h> #include <math.h> #include "max.h" +#include "min.h" #include "fft_internal.h" @@ -25,10 +27,10 @@ static int nspan ; static int isn ; static int m ; static int kt ; -static int* wt ; -static int* ck ; -static int* bt ; -static int* sk ; +static double* wt ; +static double* ck ; +static double* bt ; +static double* sk ; static int* np ; static int* nfac ; static int inc ; @@ -89,9 +91,9 @@ static int jj; -int dfftmx ( double* _pdblA , double* _pdblB , int _iNtot, int _iN, int _iNspan, - int _iIsn, int _iM, int _iKt, int* _piWt, int* _piCk, - int* _piBt, int* _piSk , int* _piNp, int* _piNfac) +int dfftmx ( double* _pdblA , double* _pdblB , int _iNtot, int _iN, int _iNspan, + int _iIsn, int _iM, int _iKt, double* _pdblWt, double* _pdblCk, + double* _pdblBt, double* _pdblSk, int* _piNp, int* _piNfac) { int retVal = 0 ; @@ -105,10 +107,10 @@ int dfftmx ( double* _pdblA , double* _pdblB , int _iNtot, int _iN, int _iNs isn = _iIsn; m = _iM ; kt = _iKt ; - wt = _piWt ; - ck = _piCk; - bt = _piBt; - sk = _piSk; + wt = _pdblWt ; + ck = _pdblCk; + bt = _pdblBt; + sk = _pdblSk; np = _piNp; nfac = _piNfac; @@ -152,9 +154,8 @@ Sous-Fonctions void preliminaryWork (void) { - int j = 1 ; int lim ; - int i = 1 ; + if ( isn <= 0 ) { diff --git a/src/signalProcessing/fft/fft842.c b/src/signalProcessing/fft/fft842.c index cac8a977..ba287a54 100644 --- a/src/signalProcessing/fft/fft842.c +++ b/src/signalProcessing/fft/fft842.c @@ -12,7 +12,7 @@ #include "fft_internal.h" -void fft842 ( int _iDirect , int _iDimen , int* _pdblReal , int* _pdblImag , int _err ) +void fft842 ( int _iDirect , int _iDimen , double* _pdblReal , double* _pdblImag , int _err ) { int i = 0 ; int ipass = 1 ; @@ -74,7 +74,7 @@ void fft842 ( int _iDirect , int _iDimen , int* _pdblReal , int* _pdblImag , int { if ( CRES == 0 ) { - r2tx ( _iDimen , _pdblReal[0] , _pdblReal[1] ,_pdblImag[0] , _pdblImag[1] ) ; + r2tx ( _iDimen , _pdblReal , _pdblImag) ; } else diff --git a/src/signalProcessing/fft/fft_internal.h b/src/signalProcessing/fft/fft_internal.h index 7ba732d9..1b374872 100644 --- a/src/signalProcessing/fft/fft_internal.h +++ b/src/signalProcessing/fft/fft_internal.h @@ -14,15 +14,15 @@ #define __FFT_INTERNAL_H__ void dfft2 ( double* a , double* b , int nseg , int n , int nspn , - int isn , int ierr, int* iw , int lw ); + int isn , int ierr, double* iw , int lw ); void dfftbi ( double* a , double* b , int nseg , int n , int nspn , int isn , int ierr, int lout , int lnow , - int lused ,int lmax , int lbook , int* rstak , int* istakk ); + int lused ,int lmax , int lbook , double* rstak , int* istakk ); -void fft842 ( int _iDirect , int _iDimen , int* _pdblReal , int* _pdblImag , int _err ); +void fft842 ( int _iDirect , int _iDimen , double* _pdblReal , double* _pdblImag , int _err ); void r2tx ( int _iDimen , double* _pdblReal, double* _pdblImag ); void r4tx ( int _iDimen , double* _pdblReal, double* _pdblImag) ; @@ -30,8 +30,9 @@ void r8tx ( int _iTempDimen , int _iDimen , int _iLengt , double* _pdblReal, do int dfftmx ( double* _pdblA , double* _pdblB , int _iNtot, int _iN, int _iNspan, - int _iIsn, int _iM, int _iKt, int* _piWt, int* _piCk, - int* _piBt, int* _piSk ,int* _piNp, int* _piNfac); + int _iIsn, int _iM, int _iKt, double* _pdblWt, double* _pdblCk, + double* _pdblBt, double* _pdblSk, int* _piNp, int* _piNfac); + /* under functions used by dfftmx */ void preliminaryWork (void); void preliminaryWork (void); diff --git a/src/signalProcessing/fft/r8tx.c b/src/signalProcessing/fft/r8tx.c index 00b790f8..1d109de3 100644 --- a/src/signalProcessing/fft/r8tx.c +++ b/src/signalProcessing/fft/r8tx.c @@ -11,6 +11,7 @@ */ #include "fft_internal.h" +#include <math.h> void r8tx ( int _iTempDimen , int _iDimen , int _iLengt , double* _pdblReal, double* _pdblImag ) |