source: LMDZ4/branches/LMDZ4_AR5/libf/filtrez/mod_fft_wrapper.F90

Last change on this file was 1601, checked in by Ehouarn Millour, 13 years ago

Updates and upgrades of filter:

  • add minor corrections (r1591 of trunk) in filtreg_mod.F90: some arrays were oversized and the computation of the indexes from which the filter is applied could go wrong in extreme cases.
  • adapt filtreg_p.F (r1597 of trunk) so that BLAS routine DGEMM is only used if 'BLAS' preprocessing flag is set.
  • update FFT filter routines to match current 'trunk' versions (mostly cosmetic changes, exept for the implementation of use of FFTW in mod_fft_fftw.F90).
  • update "arch-PW6_VARGAS.fcm" to enable use of FFTW

NB: implemented FFTs assume working precision to be double precision ; trying to use them when working precision is single precision will clearly end in tragedy.
EM

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.1 KB
Line 
1MODULE mod_fft_wrapper
2
3  INTEGER,SAVE             :: vsize
4  INTEGER,PARAMETER        :: inc=1
5
6CONTAINS
7 
8  SUBROUTINE Init_fft(iim,nb)
9  IMPLICIT NONE
10    INTEGER :: iim
11    INTEGER :: nb
12   
13    STOP "wrapper fft : une FFT doit etre specifiee a l'aide d'une clee CPP, sinon utiliser le filtre classique"
14  END SUBROUTINE Init_fft
15 
16 
17  SUBROUTINE fft_forward(vect,TF_vect,nb_vect)
18    IMPLICIT NONE
19    INTEGER,INTENT(IN)  :: nb_vect
20    REAL,INTENT(IN)     :: vect(vsize+inc,nb_vect)
21    COMPLEX,INTENT(INOUT) :: TF_vect(vsize/2+1,nb_vect)
22   
23    STOP "wrapper fft : une FFT doit etre specifiee a l'aide d'une clee CPP, sinon utiliser le filtre classique"
24   
25  END SUBROUTINE fft_forward
26 
27  SUBROUTINE fft_backward(TF_vect,vect,nb_vect)
28    IMPLICIT NONE
29    INTEGER,INTENT(IN)  :: nb_vect
30    REAL,INTENT(INOUT)    :: vect(vsize+inc,nb_vect)
31    COMPLEX,INTENT(IN ) :: TF_vect(vsize/2+1,nb_vect)
32 
33    STOP "wrapper fft : une FFT doit etre specifiee a l'aide d'une clee CPP, sinon utiliser le filtre classique"
34   
35  END SUBROUTINE fft_backward
36 
37END MODULE mod_fft_wrapper
Note: See TracBrowser for help on using the repository browser.