From 4d2814c645ea7d90dbfc3e741c2bc7d16683e77d Mon Sep 17 00:00:00 2001
From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr>
Date: Mon, 22 May 2023 10:39:24 +0200
Subject: [PATCH] Philippe 22/05/2023: FFT: remove unnecessary dummy arguments
 for RPASSM and QPASSM

---
 src/MNH/fft.f90 | 62 +++++++++++++++++++------------------------------
 1 file changed, 24 insertions(+), 38 deletions(-)

diff --git a/src/MNH/fft.f90 b/src/MNH/fft.f90
index 63bc7eed2..298211f32 100644
--- a/src/MNH/fft.f90
+++ b/src/MNH/fft.f90
@@ -203,17 +203,11 @@ SUBROUTINE FFT991( PA, PWORK, PTRIGS, PFAX, KJUMP, KN, KLOT, KSIGN )
         IFAC=PFAX(IK+1)
         IERR=-1
         IF ( IGO == 1 ) THEN
-          CALL RPASSM(PA(IA:),PA(IA+ILA:),PWORK(1:),PWORK(IFAC*ILA+1:), &
-              PTRIGS(:),                                             &
-              KJUMP,INX,INVEX,KN,IFAC,ILA,IERR,                         &
-              SIZE(PA(IA:)),SIZE(PA(IA+ILA:)),SIZE(PWORK(1:)),         &
-              SIZE(PWORK(IFAC*ILA+1:)),SIZE(PTRIGS(:)))
+          CALL RPASSM( PA(IA:), PA(IA+ILA:), PWORK(:), PWORK(IFAC*ILA+1:), PTRIGS(:), &
+                       KJUMP, INX, INVEX, KN, IFAC, ILA, IERR )
         ELSE
-          CALL RPASSM(PWORK(1:),PWORK(ILA+1:),PA(IA:),PA(IA+IFAC*ILA:), &
-             PTRIGS(:),                                              &
-             INX,KJUMP,INVEX,KN,IFAC,ILA,IERR,                          &
-             SIZE(PWORK(1:)),SIZE(PWORK(ILA+1:)),SIZE(PA(IA:)),        &
-             SIZE(PA(IA+IFAC*ILA:)),SIZE(PTRIGS(:)))
+          CALL RPASSM( PWORK(:), PWORK(ILA+1:), PA(IA:), PA(IA+IFAC*ILA:), PTRIGS(:), &
+                       INX, KJUMP, INVEX, KN, IFAC, ILA, IERR )
         END IF
         IF (IERR.NE.0) GO TO 500
         ILA=IFAC*ILA
@@ -262,17 +256,11 @@ SUBROUTINE FFT991( PA, PWORK, PTRIGS, PFAX, KJUMP, KN, KLOT, KSIGN )
         ILA=ILA/IFAC
         IERR=-1
         IF ( IGO == 1 ) THEN
-          CALL QPASSM(PA(IA:),PA(IA+IFAC*ILA:),PWORK(1:),PWORK(ILA+1:), &
-              PTRIGS(:),                                             &
-              KJUMP,INX,INVEX,KN,IFAC,ILA,IERR,                         &
-              SIZE(PA(IA:)),SIZE(PA(IA+IFAC*ILA:)),SIZE(PWORK(1:)),    &
-              SIZE(PWORK(ILA+1:)),SIZE(PTRIGS(:)))
+          CALL QPASSM( PA(IA:), PA(IA+IFAC*ILA:), PWORK(:), PWORK(ILA+1:), PTRIGS(:), &
+                       KJUMP, INX, INVEX, KN, IFAC, ILA, IERR )
         ELSE
-          CALL QPASSM(PWORK(1:),PWORK(IFAC*ILA+1:),PA(IA:),PA(IA+ILA:), &
-              PTRIGS(:),                                             &
-              INX,KJUMP,INVEX,KN,IFAC,ILA,IERR,                         &
-              SIZE(PWORK(1:)),SIZE(PWORK(IFAC*ILA+1:)),SIZE(PA(IA:)),  &
-              SIZE(PA(IA+ILA:)),SIZE(PTRIGS(:)))
+          CALL QPASSM( PWORK(:), PWORK(IFAC*ILA+1:), PA(IA:), PA(IA+ILA:), PTRIGS(:), &
+                       INX, KJUMP, INVEX, KN, IFAC, ILA, IERR )
         END IF
         IF (IERR.NE.0) GO TO 500
         IGO=-IGO
@@ -344,18 +332,17 @@ END SUBROUTINE FFT991
 
 
 
-SUBROUTINE RPASSM(PA,PB,PC,PD,PTRIGS,KINC3,KINC4,KLOT,KN,KFAC,KLA,KERR,KSZ1,KSZ2,KSZ3,KSZ4,KSZ5)
+SUBROUTINE RPASSM( PA, PB, PC, PD, PTRIGS, KINC3, KINC4, KLOT, KN, KFAC, KLA, KERR )
 
   IMPLICIT NONE
 
-  REAL, DIMENSION(KSZ1), INTENT(IN)    :: PA
-  REAL, DIMENSION(KSZ2), INTENT(IN)    :: PB
-  REAL, DIMENSION(KSZ3), INTENT(INOUT) :: PC
-  REAL, DIMENSION(KSZ4), INTENT(INOUT) :: PD
-  REAL, DIMENSION(KSZ5), INTENT(IN)    :: PTRIGS
-  INTEGER,               INTENT(IN)    :: KINC3, KINC4, KLOT, KN, KFAC, KLA
-  INTEGER,               INTENT(OUT)   :: KERR
-  INTEGER,               INTENT(IN)    :: KSZ1,KSZ2,KSZ3,KSZ4,KSZ5
+  REAL, DIMENSION(:), INTENT(IN)    :: PA
+  REAL, DIMENSION(:), INTENT(IN)    :: PB
+  REAL, DIMENSION(:), INTENT(INOUT) :: PC
+  REAL, DIMENSION(:), INTENT(INOUT) :: PD
+  REAL, DIMENSION(:), INTENT(IN)    :: PTRIGS
+  INTEGER,            INTENT(IN)    :: KINC3, KINC4, KLOT, KN, KFAC, KLA
+  INTEGER,            INTENT(OUT)   :: KERR
 !
 !     SUBROUTINE 'RPASSM' - PERFORMS ONE PASS THROUGH DATA AS PART
 !     OF MULTIPLE REAL FFT (FOURIER SYNTHESIS) ROUTINE
@@ -1281,17 +1268,16 @@ END SUBROUTINE RPASSM
 
 
 
-SUBROUTINE QPASSM(PA,PB,PC,PD,PTRIGS,KINC3,KINC4,KLOT,KN,KFAC,KLA,KERR,KSZ1,KSZ2,KSZ3,KSZ4,KSZ5)
+SUBROUTINE QPASSM( PA, PB, PC, PD, PTRIGS, KINC3, KINC4, KLOT, KN, KFAC, KLA, KERR )
   IMPLICIT NONE
 
-  REAL, DIMENSION(KSZ1), INTENT(IN)    :: PA
-  REAL, DIMENSION(KSZ2), INTENT(IN)    :: PB
-  REAL, DIMENSION(KSZ3), INTENT(INOUT) :: PC
-  REAL, DIMENSION(KSZ4), INTENT(INOUT) :: PD
-  REAL, DIMENSION(KSZ5), INTENT(IN)    :: PTRIGS
-  INTEGER,               INTENT(IN)    :: KINC3, KINC4, KLOT, KN, KFAC, KLA
-  INTEGER,               INTENT(OUT)   :: KERR
-  INTEGER,               INTENT(IN)    :: KSZ1, KSZ2, KSZ3, KSZ4, KSZ5
+  REAL, DIMENSION(:), INTENT(IN)    :: PA
+  REAL, DIMENSION(:), INTENT(IN)    :: PB
+  REAL, DIMENSION(:), INTENT(INOUT) :: PC
+  REAL, DIMENSION(:), INTENT(INOUT) :: PD
+  REAL, DIMENSION(:), INTENT(IN)    :: PTRIGS
+  INTEGER,            INTENT(IN)    :: KINC3, KINC4, KLOT, KN, KFAC, KLA
+  INTEGER,            INTENT(OUT)   :: KERR
 !
 !     SUBROUTINE 'QPASSM' - PERFORMS ONE PASS THROUGH DATA AS PART
 !     OF MULTIPLE REAL FFT (FOURIER ANALYSIS) ROUTINE
-- 
GitLab