| Line | Branch | Exec | Source | 
    
      | 1 |  |  | ! | 
    
      | 2 |  |  | ! $Header$ | 
    
      | 3 |  |  | ! | 
    
      | 4 |  | ✗ | SUBROUTINE rotatst (klevel,x, y, rot ) | 
    
      | 5 |  |  | c | 
    
      | 6 |  |  | c  P. Le Van | 
    
      | 7 |  |  | c | 
    
      | 8 |  |  | c    ***************************************************************** | 
    
      | 9 |  |  | c     .. calcule le rotationnel a tous les niveaux d'1 vecteur de comp. x et y .. | 
    
      | 10 |  |  | c         x  et  y etant des composantes  covariantes  ..... | 
    
      | 11 |  |  | c    ***************************************************************** | 
    
      | 12 |  |  | c        x  et y     sont des arguments d'entree pour le s-prog | 
    
      | 13 |  |  | c        rot          est  un argument  de sortie pour le s-prog | 
    
      | 14 |  |  | c | 
    
      | 15 |  |  | IMPLICIT NONE | 
    
      | 16 |  |  | c | 
    
      | 17 |  |  | INTEGER klevel | 
    
      | 18 |  |  | !----------------------------------------------------------------------- | 
    
      | 19 |  |  | !   INCLUDE 'dimensions.h' | 
    
      | 20 |  |  | ! | 
    
      | 21 |  |  | !   dimensions.h contient les dimensions du modele | 
    
      | 22 |  |  | !   ndm est tel que iim=2**ndm | 
    
      | 23 |  |  | !----------------------------------------------------------------------- | 
    
      | 24 |  |  |  | 
    
      | 25 |  |  | INTEGER iim,jjm,llm,ndm | 
    
      | 26 |  |  |  | 
    
      | 27 |  |  | PARAMETER (iim= 32,jjm=32,llm=39,ndm=1) | 
    
      | 28 |  |  |  | 
    
      | 29 |  |  | !----------------------------------------------------------------------- | 
    
      | 30 |  |  | ! | 
    
      | 31 |  |  | ! $Header$ | 
    
      | 32 |  |  | ! | 
    
      | 33 |  |  | ! | 
    
      | 34 |  |  | !  ATTENTION!!!!: ce fichier include est compatible format fixe/format libre | 
    
      | 35 |  |  | !                 veillez  n'utiliser que des ! pour les commentaires | 
    
      | 36 |  |  | !                 et  bien positionner les & des lignes de continuation | 
    
      | 37 |  |  | !                 (les placer en colonne 6 et en colonne 73) | 
    
      | 38 |  |  | ! | 
    
      | 39 |  |  | ! | 
    
      | 40 |  |  | !----------------------------------------------------------------------- | 
    
      | 41 |  |  | !   INCLUDE 'paramet.h' | 
    
      | 42 |  |  |  | 
    
      | 43 |  |  | INTEGER  iip1,iip2,iip3,jjp1,llmp1,llmp2,llmm1 | 
    
      | 44 |  |  | INTEGER  kftd,ip1jm,ip1jmp1,ip1jmi1,ijp1llm | 
    
      | 45 |  |  | INTEGER  ijmllm,mvar | 
    
      | 46 |  |  | INTEGER jcfil,jcfllm | 
    
      | 47 |  |  |  | 
    
      | 48 |  |  | PARAMETER( iip1= iim+1,iip2=iim+2,iip3=iim+3                       & | 
    
      | 49 |  |  | &    ,jjp1=jjm+1-1/jjm) | 
    
      | 50 |  |  | PARAMETER( llmp1 = llm+1,  llmp2 = llm+2, llmm1 = llm-1 ) | 
    
      | 51 |  |  | PARAMETER( kftd  = iim/2 -ndm ) | 
    
      | 52 |  |  | PARAMETER( ip1jm  = iip1*jjm,  ip1jmp1= iip1*jjp1 ) | 
    
      | 53 |  |  | PARAMETER( ip1jmi1= ip1jm - iip1 ) | 
    
      | 54 |  |  | PARAMETER( ijp1llm= ip1jmp1 * llm, ijmllm= ip1jm * llm ) | 
    
      | 55 |  |  | PARAMETER( mvar= ip1jmp1*( 2*llm+1) + ijmllm ) | 
    
      | 56 |  |  | PARAMETER( jcfil=jjm/2+5, jcfllm=jcfil*llm ) | 
    
      | 57 |  |  |  | 
    
      | 58 |  |  | !----------------------------------------------------------------------- | 
    
      | 59 |  |  |  | 
    
      | 60 |  |  | REAL rot( ip1jm,klevel ) | 
    
      | 61 |  |  | REAL x( ip1jmp1,klevel ), y( ip1jm,klevel ) | 
    
      | 62 |  |  | INTEGER  l, ij | 
    
      | 63 |  |  | c | 
    
      | 64 |  |  | c | 
    
      | 65 |  | ✗ | DO 5 l = 1,klevel | 
    
      | 66 |  |  | c | 
    
      | 67 |  | ✗ | DO 1 ij = 1, ip1jm - 1 | 
    
      | 68 |  |  | rot( ij,l )  =  (  y( ij+1 , l )  -  y( ij,l )   + | 
    
      | 69 |  | ✗ | *                 x(ij +iip1, l )  -  x( ij,l )  ) | 
    
      | 70 |  | ✗ | 1  CONTINUE | 
    
      | 71 |  |  | c | 
    
      | 72 |  |  | c    .... correction pour rot( iip1,j,l)  .... | 
    
      | 73 |  |  | c | 
    
      | 74 |  |  | c    ....   rot(iip1,j,l)= rot(1,j,l) ... | 
    
      | 75 |  |  | CDIR$ IVDEP | 
    
      | 76 |  | ✗ | DO 2 ij = iip1, ip1jm, iip1 | 
    
      | 77 |  | ✗ | rot( ij,l ) = rot( ij -iim,l ) | 
    
      | 78 |  | ✗ | 2  CONTINUE | 
    
      | 79 |  |  | c | 
    
      | 80 |  | ✗ | 5  CONTINUE | 
    
      | 81 |  | ✗ | RETURN | 
    
      | 82 |  |  | END | 
    
      | 83 |  |  |  |