Ignore:
Timestamp:
Oct 21, 2024, 2:58:45 PM (23 hours ago)
Author:
abarral
Message:

Convert fixed-form to free-form sources .F -> .{f,F}90
(WIP: some .F remain, will be handled in subsequent commits)

File:
1 moved

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/dyn3d_common/grad.f90

    r5245 r5246  
    22! $Header$
    33!
    4       SUBROUTINE  grad(klevel, pg,pgx,pgy )
    5 c
    6 c      P. Le Van
    7 c
    8 c    ******************************************************************
    9 c    .. calcul des composantes covariantes en x et y du gradient de g
    10 c
    11 c    ******************************************************************
    12 c             pg        est un   argument  d'entree pour le s-prog
    13 c       pgx  et  pgy    sont des arguments de sortie pour le s-prog
    14 c
    15       IMPLICIT NONE
    16 c
    17       INCLUDE "dimensions.h"
    18       INCLUDE "paramet.h"
    19       INTEGER klevel
    20       REAL pg( ip1jmp1,klevel )
    21       REAL pgx( ip1jmp1,klevel ) , pgy( ip1jm,klevel )
    22       INTEGER l,ij
    23 c
    24 c
    25       DO 6 l = 1,klevel
    26 c
    27       DO 2  ij = 1, ip1jmp1 - 1
    28       pgx( ij,l ) = pg( ij +1,l ) - pg( ij,l )
    29    2  CONTINUE
    30 c
    31 c    .... correction pour  pgx(ip1,j,l)  ....
    32 c    ...    pgx(iip1,j,l)= pgx(1,j,l)  ....
    33 CDIR$ IVDEP
    34       DO 3  ij = iip1, ip1jmp1, iip1
    35       pgx( ij,l ) = pgx( ij -iim,l )
    36    3  CONTINUE
    37 c
    38       DO 4 ij = 1,ip1jm
    39       pgy( ij,l ) = pg( ij,l ) - pg( ij +iip1,l )
    40    4  CONTINUE
    41 c
    42    6  CONTINUE
    43       RETURN
    44       END
     4SUBROUTINE  grad(klevel, pg,pgx,pgy )
     5  !
     6  !  P. Le Van
     7  !
     8  !    ******************************************************************
     9  ! .. calcul des composantes covariantes en x et y du gradient de g
     10  !
     11  !    ******************************************************************
     12  !         pg        est un   argument  d'entree pour le s-prog
     13  !   pgx  et  pgy    sont des arguments de sortie pour le s-prog
     14  !
     15  IMPLICIT NONE
     16  !
     17  INCLUDE "dimensions.h"
     18  INCLUDE "paramet.h"
     19  INTEGER :: klevel
     20  REAL :: pg( ip1jmp1,klevel )
     21  REAL :: pgx( ip1jmp1,klevel ) , pgy( ip1jm,klevel )
     22  INTEGER :: l,ij
     23  !
     24  !
     25  DO l = 1,klevel
     26  !
     27  DO  ij = 1, ip1jmp1 - 1
     28  pgx( ij,l ) = pg( ij +1,l ) - pg( ij,l )
     29  END DO
     30  !
     31  !    .... correction pour  pgx(ip1,j,l)  ....
     32  !    ...    pgx(iip1,j,l)= pgx(1,j,l)  ....
     33  !DIR$ IVDEP
     34  DO  ij = iip1, ip1jmp1, iip1
     35  pgx( ij,l ) = pgx( ij -iim,l )
     36  END DO
     37  !
     38  DO ij = 1,ip1jm
     39  pgy( ij,l ) = pg( ij,l ) - pg( ij +iip1,l )
     40  END DO
     41  !
     42  END DO
     43  RETURN
     44END SUBROUTINE grad
Note: See TracChangeset for help on using the changeset viewer.