*IF DEF,S40_1A                                                             SLBHCA1A.2      
C ******************************COPYRIGHT******************************    GTS2F400.9019   
C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved.    GTS2F400.9020   
C                                                                          GTS2F400.9021   
C Use, duplication or disclosure of this code is subject to the            GTS2F400.9022   
C restrictions as set forth in the contract.                               GTS2F400.9023   
C                                                                          GTS2F400.9024   
C                Meteorological Office                                     GTS2F400.9025   
C                London Road                                               GTS2F400.9026   
C                BRACKNELL                                                 GTS2F400.9027   
C                Berkshire UK                                              GTS2F400.9028   
C                RG12 2SZ                                                  GTS2F400.9029   
C                                                                          GTS2F400.9030   
C If no contract has been raised with this copy of the code, the use,      GTS2F400.9031   
C duplication or disclosure of it is strictly prohibited.  Permission      GTS2F400.9032   
C to do so must first be obtained in writing from the Head of Numerical    GTS2F400.9033   
C Modelling at the above address.                                          GTS2F400.9034   
C ******************************COPYRIGHT******************************    GTS2F400.9035   
C                                                                          GTS2F400.9036   
C*LL                                                                       SLBHCA1A.3      
CLL   SUBROUTINE SLBHCADJ                                                  SLBHCA1A.4      
CLL   -------------------                                                  SLBHCA1A.5      
CLL                                                                        SLBHCA1A.6      
CLL   THIS ROUTINE IS FOR USE WITH THE 'SLAB' OCEAN MODEL ONLY.            SLBHCA1A.7      
CLL                                                                        SLBHCA1A.8      
CLL   MODIFIED VERSION:  2/8/1993                                          SLBHCA1A.9      
CLL                                                                        SLBHCA1A.10     
CLL   THE HEAT CONVERGENCE IS ADJUSTED TO PREVENT PROBLEMS                 SLBHCA1A.11     
CLL   DUE TO LARGE NEGATIVE VALUES. SPECIFICALLY:-                         SLBHCA1A.12     
CLL                                                                        SLBHCA1A.13     
CLL   IF THE HEAT CONVERGENCE AT A SEA-ICE POINT IS LESS                   SLBHCA1A.14     
CLL   THAN HCLIMIT,THEN IT IS SET TO BE HCLIMIT, AND THE                   SLBHCA1A.15     
CLL   HEAT IS REDISTRIBUTED OVER ALL THE SEA POINTS IN THE                 SLBHCA1A.16     
CLL   HEMISPHERE. HCLIMIT = -40 WM2                                        SLBHCA1A.17     
CLL                                                                        SLBHCA1A.18     
CLL   THIS ROUTINE FORMS PART OF SYSTEM COMPONENT P40.                     SLBHCA1A.19     
CLL   IT CAN BE COMPILED BY CFT77, BUT DOES NOT CONFORM TO ANSI            SLBHCA1A.20     
CLL   FORTRAN77 STANDARDS, BECAUSE OF THE INLINE COMMENTS                  SLBHCA1A.21     
CLL   AND ENDDO STATEMENTS.                                                SLBHCA1A.22     
CLL                                                                        SLBHCA1A.23     
CLL                                                                        SLBHCA1A.24     
CLL   ALL QUANTITIES IN THIS ROUTINE ARE IN S.I. UNITS UNLESS              SLBHCA1A.25     
CLL   OTHERWISE STATED.                                                    SLBHCA1A.26     
CLL                                                                        SLBHCA1A.27     
CLL   CALLED BY: SLABCNTL                                                  SLBHCA1A.28     
CLL                                                                        SLBHCA1A.29     
CLL   WRITTEN BY A.B.KEEN (12/03/92)                                       SLBHCA1A.30     
CLL   MODIFIED BY A.B.KEEN (27/04/93)                                      SLBHCA1A.31     
CLL   MODIFIED BY A.B.KEEN (17/06/93)                                      SLBHCA1A.32     
CLL   MODIFIED BY C.A.SENIOR (28/02/94)                                    SLBHCA1A.33     
CLL   VERSION NUMBER 1.2                                                   SLBHCA1A.34     
CLL   REVIEWER: W.INGRAM (01/03/93)                                        SLBHCA1A.35     
CLL                                                                        SLBHCA1A.36     
CLLEND---------------------------------------------------------------      SLBHCA1A.37     
C*L                                                                        SLBHCA1A.38     

      SUBROUTINE SLBHCADJ(L1,L2,                                            2SLBHCA1A.39     
     +                    ADJHCONV,                                        SLBHCA1A.40     
     +                    WEIGHTS,                                         SLBHCA1A.41     
     +                    ICY,                                             SLBHCA1A.42     
     +                    HCLIMIT,                                         SLBHCA1A.43     
     +                    OPENSEA)                                         SLBHCA1A.44     
C                                                                          SLBHCA1A.45     
C                                                                          SLBHCA1A.46     
      INTEGER L1   ! IN SIZE OF INPUT DATA ARRAY                           SLBHCA1A.47     
     +,L2          ! IN AMOUNT OF DATA TO BE PROCESSED                     SLBHCA1A.48     
C                                                                          SLBHCA1A.49     
      REAL                                                                 SLBHCA1A.50     
     + ADJHCONV(L1)       ! INOUT ADJUSTED HEAT CONVERGENCE RATE (WM-2)    SLBHCA1A.51     
     +,WEIGHTS(L1)        ! IN WEIGHTS (COS LATITUDE) FOR AREA SUMS        SLBHCA1A.52     
     +,HCLIMIT      ! LIMIT FOR USING HEAT CONVERGENCES AT ICE POINTS      SLBHCA1A.53     
C                                                                          SLBHCA1A.54     
      LOGICAL                                                              SLBHCA1A.55     
     + ICY(L1)            ! IN TRUE IF BOX CONTAINS ICE.                   SLBHCA1A.56     
     +,OPENSEA(L1)        ! IN TRUE FOR OPEN SEA POINTS                    SLBHCA1A.57     
C                                                                          SLBHCA1A.58     
C     VARIABLES LOCAL TO THIS ROUTINE ARE NOW DEFINED.                     SLBHCA1A.59     
C                                                                          SLBHCA1A.60     
      REAL                                                                 SLBHCA1A.61     
     + SEASUM      ! SUM OF WEIGHTS OVER SEA POINTS                        SLBHCA1A.62     
     +,HCONVSUM    ! SUM OF WEIGHTED HEAT CONVERGENCES                     SLBHCA1A.63     
     +,HC_CORR     ! HEAT CONVERGENCE CORRECTION                           SLBHCA1A.64     
C                                                                          SLBHCA1A.65     
      INTEGER                                                              SLBHCA1A.66     
     + J           ! LOOP COUNTER                                          SLBHCA1A.67     
C                                                                          SLBHCA1A.68     
C    1. COMPUTE HEAT CONVERGENCE ADJUSTEMENTS                              SLBHCA1A.69     
C                                                                          SLBHCA1A.70     
      SEASUM   = 0.0                                                       SLBHCA1A.71     
      HCONVSUM = 0.0                                                       SLBHCA1A.72     
      DO J=1,L2                                                            SLBHCA1A.73     
          IF ( OPENSEA(J) ) THEN                                           SLBHCA1A.74     
            SEASUM = SEASUM + WEIGHTS(J)                                   SLBHCA1A.75     
          ENDIF                                                            SLBHCA1A.76     
          IF (ICY(J) .AND. ( ADJHCONV(J) .LT. HCLIMIT ) ) THEN             SLBHCA1A.77     
            HCONVSUM    = HCONVSUM + ( ADJHCONV(J) - HCLIMIT )             SLBHCA1A.78     
     &                    * WEIGHTS(J)                                     SLBHCA1A.79     
            ADJHCONV(J) = HCLIMIT                                          SLBHCA1A.80     
          ENDIF                                                            SLBHCA1A.81     
      END DO                                                               SLBHCA1A.82     
      HC_CORR = HCONVSUM / SEASUM                                          SLBHCA1A.83     
      DO J=1,L2                                                            SLBHCA1A.84     
          IF ( OPENSEA(J) ) THEN                                           SLBHCA1A.85     
            ADJHCONV(J) = ADJHCONV(J) + HC_CORR                            SLBHCA1A.86     
          ENDIF                                                            SLBHCA1A.87     
      END DO                                                               SLBHCA1A.88     
C                                                                          SLBHCA1A.89     
C                                                                          SLBHCA1A.90     
C                                                                          SLBHCA1A.91     
      RETURN                                                               SLBHCA1A.92     
      END                                                                  SLBHCA1A.93     
*ENDIF                                                                     SLBHCA1A.94