C ECMWF PERFORMANCE EVALUATION TEST 21 PROGRAM SCK                      SCK    1
      PROGRAM SCK                                                               
      COMMON T,T1,T2,E1(4),J,K,L                                        SCK    2
      T=0.499975                                                        SCK    3
      T1=0.50025                                                        SCK    4
      T2=2.0                                                            SCK    5
      I = 1000
      N1=0                                                              SCK    8
      N2=12*I                                                           SCK    9
      N3=14*I                                                           SCK   10
      N4=345*I                                                          SCK   11
      N5=0                                                              SCK   12
      N6=210*I                                                          SCK   13
      N7=32*I                                                           SCK   14
      N8=899*I                                                          SCK   15
      N9=616*I                                                          SCK   16
      N10=0                                                             SCK   17
      N11=93*I                                                          SCK   18
      N12=0                                                             SCK   19
      X1=1.0                                                            SCK   20
      X2=-1.0                                                           SCK   21
      X3=-1.0                                                           SCK   22
      X4=-1.0                                                           SCK   23
      IF(N1)19,19,11                                                    SCK   24
   11 DO 18 I=1,N1,1                                                    SCK   25
      X1=(X1+X2+X3-X4)*T                                                SCK   26
      X2=(X1+X2-X3+X4)*T                                                SCK   27
      X3=(X1-X2+X3+X4)*T                                                SCK   28
      X4=(-X1+X2+X3+X4)*T                                               SCK   29
   18 CONTINUE                                                          SCK   30
   19 CONTINUE                                                          SCK   31
      CALL POUT(N1,N1,N1,X1,X2,X3,X4)                                   SCK   32
      E1(1)=1.0                                                         SCK   33
      E1(2)=-1.0                                                        SCK   34
      E1(3)=-1.0                                                        SCK   35
      E1(4)=-1.0                                                        SCK   36
      IF(N2)29,29,21                                                    SCK   37
   21 DO 28 I=1,N2,1                                                    SCK   38
      E1(1)=(E1(1)+E1(2)+E1(3)-E1(4))*T                                 SCK   39
      E1(2)=(E1(1)+E1(2)-E1(3)+E1(4))*T                                 SCK   40
      E1(3)=(E1(1)-E1(2)+E1(3)+E1(4))*T                                 SCK   41
      E1(4)=(-E1(1)+E1(2)+E1(3)+E1(4))*T                                SCK   42
   28 CONTINUE                                                          SCK   43
   29 CONTINUE                                                          SCK   44
      CALL POUT(N2,N3,N2,E1(1),E1(2),E1(3),E1(4))                       SCK   45
      IF(N3)39,39,31                                                    SCK   46
   31 DO 38 I=1,N3,1                                                    SCK   47
   38 CALL PA(E1)                                                       SCK   48
   39 CONTINUE                                                          SCK   49
      CALL POUT(N3,N2,N2,E1(1),E1(2),E1(3),E1(4))                       SCK   50
      J=1                                                               SCK   51
      IF(N4)49,49,41                                                    SCK   52
   41 DO 48 I=1,N4,1                                                    SCK   53
      IF(J-1)43,42,43                                                   SCK   54
   42 J=2                                                               SCK   55
      GO TO 44                                                          SCK   56
   43 J=3                                                               SCK   57
   44 IF(J-2)46,46,45                                                   SCK   58
   45 J=0                                                               SCK   59
      GO TO 47                                                          SCK   60
   46 J=1                                                               SCK   61
   47 IF(J-1)411,412,412                                                SCK   62
  411 J=1                                                               SCK   63
      GO TO 48                                                          SCK   64
  412 J=0                                                               SCK   65
   48 CONTINUE                                                          SCK   66
   49 CONTINUE                                                          SCK   67
      CALL POUT(N4,J,J,X1,X2,X3,X4)                                     SCK   68
      J=1                                                               SCK   69
      K=2                                                               SCK   70
      L=3                                                               SCK   71
      IF(N6)69,69,61                                                    SCK   72
   61 DO 68 I=1,N6,1                                                    SCK   73
      J=J*(K-J)*(L-K)                                                   SCK   74
      K=L*K-(L-J)*K                                                     SCK   75
      L=(L-K)*(K+J)                                                     SCK   76
      E1(L-1)=J+K+L                                                     SCK   77
      E1(K-1)=J*K*L                                                     SCK   78
   68 CONTINUE                                                          SCK   79
   69 CONTINUE                                                          SCK   80
      CALL POUT(N6,J,K,E1(1),E1(2),E1(3),E1(4))                         SCK   81
C     X=0.5                                                             SCK   82
C     Y=0.5                                                             SCK   83
C     IF(N7)79,79,71                                                    SCK   84
C  71 DO 78 I=1,N7,1                                                    SCK   85
C     X=T*ATAN(T2*SIN(X)*COS(X)/(COS(X+Y)+COS(X-Y)-1.0))                SCK   86
C     Y=T*ATAN(T2*SIN(Y)*COS(Y)/(COS(X+Y)+COS(X-Y)-1.0))                SCK   87
C  78 CONTINUE                                                          SCK   88
C  79 CONTINUE                                                          SCK   89
C     CALL POUT(N7,J,K,X,X,Y,Y)                                         SCK   90
      X=1.0                                                             SCK   91
      Y=1.0                                                             SCK   92
      Z=1.0                                                             SCK   93
      IF(N8)89,89,81                                                    SCK   94
   81 DO 88 I=1,N8,1                                                    SCK   95
   88 CALL P3(X,Y,Z)                                                    SCK   96
   89 CONTINUE                                                          SCK   97
      CALL POUT(N8,J,K,X,Y,Z,Z)                                         SCK   98
      J=1                                                               SCK   99
      K=2                                                               SCK  100
      L=3                                                               SCK  101
      E1(1)=1.0                                                         SCK  102
      E1(2)=2.0                                                         SCK  103
      E1(3)=3.0                                                         SCK  104
      IF(N9)99,99,91                                                    SCK  105
   91 DO 98 I=1,N9,1                                                    SCK  106
   98 CALL P0                                                           SCK  107
   99 CONTINUE                                                          SCK  108
      CALL POUT(N9,J,K,E1(1),E1(2),E1(3),E1(4))                         SCK  109
      J=2                                                               SCK  110
      K=3                                                               SCK  111
      IF(N10)109,109,101                                                SCK  112
  101 DO 108 I=1,N10,1                                                  SCK  113
      J=J+K                                                             SCK  114
      K=J+K                                                             SCK  115
      J=J-K                                                             SCK  116
      K=K-J-J                                                           SCK  117
  108 CONTINUE                                                          SCK  118
  109 CONTINUE                                                          SCK  119
      CALL POUT(N10,J,K,X1,X2,X3,X4)                                    SCK  120
C     X=0.75                                                            SCK  121
C     IF(N11)119,119,111                                                SCK  122
C 111 DO 118 I=1,N11,1                                                  SCK  123
C 118 X=SQRT(EXP(ALOG(X)/T1))                                           SCK  124
C 119 CONTINUE                                                          SCK  125
C     CALL POUT(N11,J,K,X,X,X,X)                                        SCK  126
      STOP                                                              SCK  127
      END                                                               SCK  128
      SUBROUTINE PA(E)                                                  SCK  129
      COMMON T,T1,T2                                                    SCK  130
      DIMENSION E(4)                                                    SCK  131
      J=0                                                               SCK  132
    1 E(1)=(E(1)+E(2)+E(3)-E(4))*T                                      SCK  133
      E(2)=(E(1)+E(2)-E(3)+E(4))*T                                      SCK  134
      E(3)=(E(1)-E(2)+E(3)+E(4))*T                                      SCK  135
      E(4)=(-E(1)+E(2)+E(3)+E(4))/T2                                    SCK  136
      J=J+1                                                             SCK  137
      IF(J-6)1,2,2                                                      SCK  138
    2 CONTINUE                                                          SCK  139
      RETURN                                                            SCK  140
      END                                                               SCK  141
      SUBROUTINE P0                                                     SCK  142
      COMMON T,T1,T2,E1(4),J,K,L                                        SCK  143
      E1(J)=E1(K)                                                       SCK  144
      E1(K)=E1(L)                                                       SCK  145
      E1(L)=E1(J)                                                       SCK  146
      RETURN                                                            SCK  147
      END                                                               SCK  148
      SUBROUTINE P3(X,Y,Z)                                              SCK  149
      COMMON T,T1,T2                                                    SCK  150
      X1=X                                                              SCK  151
      Y1=Y                                                              SCK  152
      X1=T*(X1+Y1)                                                      SCK  153
      Y1=T*(X1+Y1)                                                      SCK  154
      Z=(X1+Y1)/T2                                                      SCK  155
      RETURN                                                            SCK  156
      END                                                               SCK  157
      SUBROUTINE POUT(N,J,K,X1,X2,X3,X4)
         PRINT *,N,J,K
         PRINT *,X1,X2,X3,X4
         RETURN
      END