[5107] | 1 | MODULE lmdz_fft_wrapper |
---|
[5120] | 2 | IMPLICIT NONE; PRIVATE |
---|
| 3 | PUBLIC vsize, inc, init_fft, fft_forward, fft_backward |
---|
[986] | 4 | |
---|
| 5 | INTEGER,SAVE :: vsize |
---|
| 6 | INTEGER,PARAMETER :: inc=1 |
---|
| 7 | |
---|
| 8 | CONTAINS |
---|
| 9 | |
---|
[5120] | 10 | SUBROUTINE init_fft(iim,nb) |
---|
[986] | 11 | IMPLICIT NONE |
---|
| 12 | INTEGER :: iim |
---|
| 13 | INTEGER :: nb |
---|
| 14 | |
---|
[5160] | 15 | PRINT *, "wrapper fft : une FFT doit etre specifiee a l'aide d'une clee CPP, sinon utiliser le filtre classique" |
---|
[4456] | 16 | stop 1 |
---|
[5120] | 17 | END SUBROUTINE init_fft |
---|
[986] | 18 | |
---|
| 19 | |
---|
| 20 | SUBROUTINE fft_forward(vect,TF_vect,nb_vect) |
---|
| 21 | IMPLICIT NONE |
---|
| 22 | INTEGER,INTENT(IN) :: nb_vect |
---|
| 23 | REAL,INTENT(IN) :: vect(vsize+inc,nb_vect) |
---|
[1403] | 24 | COMPLEX,INTENT(INOUT) :: TF_vect(vsize/2+1,nb_vect) |
---|
[986] | 25 | |
---|
[5160] | 26 | PRINT *, "wrapper fft : une FFT doit etre specifiee a l'aide d'une clee CPP, sinon utiliser le filtre classique" |
---|
[4456] | 27 | stop 1 |
---|
[986] | 28 | |
---|
| 29 | END SUBROUTINE fft_forward |
---|
| 30 | |
---|
| 31 | SUBROUTINE fft_backward(TF_vect,vect,nb_vect) |
---|
| 32 | IMPLICIT NONE |
---|
| 33 | INTEGER,INTENT(IN) :: nb_vect |
---|
| 34 | REAL,INTENT(INOUT) :: vect(vsize+inc,nb_vect) |
---|
[1403] | 35 | COMPLEX,INTENT(IN ) :: TF_vect(vsize/2+1,nb_vect) |
---|
[986] | 36 | |
---|
[5160] | 37 | PRINT *, "wrapper fft : une FFT doit etre specifiee a l'aide d'une clee CPP, sinon utiliser le filtre classique" |
---|
[4456] | 38 | stop 1 |
---|
[986] | 39 | |
---|
| 40 | END SUBROUTINE fft_backward |
---|
| 41 | |
---|
[5107] | 42 | END MODULE lmdz_fft_wrapper |
---|