*IF DEF,A03_7A                                                             FCDCH7A.2      
C *****************************COPYRIGHT******************************     FCDCH7A.3      
C (c) CROWN COPYRIGHT 1997, METEOROLOGICAL OFFICE, All Rights Reserved.    FCDCH7A.4      
C                                                                          FCDCH7A.5      
C Use, duplication or disclosure of this code is subject to the            FCDCH7A.6      
C restrictions as set forth in the contract.                               FCDCH7A.7      
C                                                                          FCDCH7A.8      
C                Meteorological Office                                     FCDCH7A.9      
C                London Road                                               FCDCH7A.10     
C                BRACKNELL                                                 FCDCH7A.11     
C                Berkshire UK                                              FCDCH7A.12     
C                RG12 2SZ                                                  FCDCH7A.13     
C                                                                          FCDCH7A.14     
C If no contract has been raised with this copy of the code, the use,      FCDCH7A.15     
C duplication or disclosure of it is strictly prohibited.  Permission      FCDCH7A.16     
C to do so must first be obtained in writing from the Head of Numerical    FCDCH7A.17     
C Modelling at the above address.                                          FCDCH7A.18     
C ******************************COPYRIGHT******************************    FCDCH7A.19     
!!!   SUBROUTINES FCDCH_SEA AND FCDCH_LAND-----------------------------    FCDCH7A.20     
!!!                                                                        FCDCH7A.21     
!!!   Purpose: Calculate bulk transfer coefficients at one or more         FCDCH7A.22     
!!!            gridpoints, according to formulae derived by R N B Smith    FCDCH7A.23     
!!!            October 1989.                                               FCDCH7A.24     
!!!                                                                        FCDCH7A.25     
!!!   Model            Modification history:                               FCDCH7A.26     
!!!   version  Date                                                        FCDCH7A.27     
!!!                                                                        FCDCH7A.28     
!!!   4.4      7/97   Split into separate land and sea routines for the    FCDCH7A.29     
!!!                   MOSES II tile model (Richard Essery).                FCDCH7A.30     
!!!                                                                        FCDCH7A.31     
!!!   Programming standard: Unified Model Documentation Paper No 4,        FCDCH7A.32     
!!!                        Version 2, dated 18/1/90.                       FCDCH7A.33     
!!!                                                                        FCDCH7A.34     
!!!   System component covered: Part of P243.                              FCDCH7A.35     
!!!                                                                        FCDCH7A.36     
!!!   Documentation: UM Documentation Paper No 24, section P243.           FCDCH7A.37     
!!!                  See especially sub-section (iv).                      FCDCH7A.38     
!!!   -----------------------------------------------------------------    FCDCH7A.39     
                                                                           FCDCH7A.40     
!     SUBROUTINE FCDCH_SEA---------------------------------------------    FCDCH7A.41     
!                                                                          FCDCH7A.42     
!     Transfer coefficients for sea, sea-ice and leads                     FCDCH7A.43     
!                                                                          FCDCH7A.44     
!     -----------------------------------------------------------------    FCDCH7A.45     

      SUBROUTINE FCDCH_SEA (P_POINTS,P_FIELD,P1,LAND_MASK,                  3,2FCDCH7A.46     
     &                      RIB,Z0M,Z0H,Z0F,Z1_UV,Z1_TQ,                   FCDCH7A.47     
     &                      CD,CH,LTIMER)                                  FCDCH7A.48     
                                                                           FCDCH7A.49     
      IMPLICIT NONE                                                        FCDCH7A.50     
                                                                           FCDCH7A.51     
      INTEGER                                                              FCDCH7A.52     
     & P_POINTS           ! IN Number of gridpoints treated.               FCDCH7A.53     
     &,P_FIELD            ! IN Size of field on p-grid.                    FCDCH7A.54     
     &,P1                 ! IN First p-point to be treated.                FCDCH7A.55     
                                                                           FCDCH7A.56     
      LOGICAL                                                              FCDCH7A.57     
     & LTIMER             ! IN logical for TIMER                           FCDCH7A.58     
     &,LAND_MASK(P_FIELD) ! IN .TRUE. for land; .FALSE. elsewhere.         FCDCH7A.59     
                                                                           FCDCH7A.60     
      REAL                                                                 FCDCH7A.61     
     & RIB(P_FIELD)       ! IN Bulk Richardson number.                     FCDCH7A.62     
     &,Z0M(P_FIELD)       ! IN Roughness length for momentum transport     FCDCH7A.63     
     &,Z0H(P_FIELD)       ! IN Roughness length for heat and moisture      FCDCH7A.64     
     &,Z0F(P_FIELD)       ! IN Roughness length for free-convective heat   FCDCH7A.65     
!                         !    and moisture transport (m).                 FCDCH7A.66     
     &,Z1_UV(P_FIELD)     ! IN Height of lowest uv level (m).              FCDCH7A.67     
     &,Z1_TQ(P_FIELD)     ! IN Height of lowest tq level (m).              FCDCH7A.68     
                                                                           FCDCH7A.69     
      REAL                                                                 FCDCH7A.70     
     & CD(P_FIELD)        ! OUT Surface drag coefficient including form    FCDCH7A.71     
!                               drag.                                      FCDCH7A.72     
     &,CH(P_FIELD)        ! OUT Bulk transfer coefficient for              FCDCH7A.73     
!                               heat/moisture.                             FCDCH7A.74     
                                                                           FCDCH7A.75     
      EXTERNAL TIMER                                                       FCDCH7A.76     
                                                                           FCDCH7A.77     
!----------------------------------------------------------------------    FCDCH7A.78     
!  Common and local physical constants                                     FCDCH7A.79     
*CALL C_VKMAN                                                              FCDCH7A.80     
                                                                           FCDCH7A.81     
      REAL ALPHAR,HETGEN,CZ,DM                                             FCDCH7A.82     
      PARAMETER (                                                          FCDCH7A.83     
     & ALPHAR=5.0   ! Tunable parameter in FM and FH calculation.          FCDCH7A.84     
     &,HETGEN=0.0   ! Tunable parameter to represent 'the degree of        FCDCH7A.85     
!                     heterogeneity' of the surface; must be > or = 0.0    FCDCH7A.86     
!                     and < or = 1.0                                       FCDCH7A.87     
     &,CZ=4.0       ! Tunable parameter in unstable Fh, Fm calculations,   FCDCH7A.88     
!                     equal to (3h)**-1.5 in the documentation.            FCDCH7A.89     
     &,DM=2.0       ! Tunable parameter in unstable Fm calculation.        FCDCH7A.90     
     &)                                                                    FCDCH7A.91     
                                                                           FCDCH7A.92     
!  Define local variables (more or less in order of first appearance).     FCDCH7A.93     
                                                                           FCDCH7A.94     
      INTEGER I       ! Loop counter; horizontal field index               FCDCH7A.95     
      REAL                                                                 FCDCH7A.96     
     & KARMAN2        ! Square of von Karman's constant.                   FCDCH7A.97     
     &,ZETAM          ! See documentation for definition.                  FCDCH7A.98     
     &,ZETAH          ! See documentation for definition.                  FCDCH7A.99     
     &,CDN            ! CD for neutral conditions.                         FCDCH7A.100    
     &,CHN            ! CH for neutral conditions.                         FCDCH7A.101    
     &,PRANDTL        ! Prandtl number at neutrality.                      FCDCH7A.102    
     &,RFZ            ! Temporary in calculation of FM and FH.             FCDCH7A.103    
     &,RIF            ! Flux Richardson number.                            FCDCH7A.104    
     &,AM             ! Temporary in calculation of FM and FH.             FCDCH7A.105    
     &,AH             ! Temporary in calculation of FM and FH.             FCDCH7A.106    
     &,BM             ! Temporary in calculation of FM and FH.             FCDCH7A.107    
     &,BH             ! Temporary in calculation of FM and FH.             FCDCH7A.108    
     &,FM             ! Stability factor for CD.                           FCDCH7A.109    
     &,FH             ! Stability factor for CH.                           FCDCH7A.110    
                                                                           FCDCH7A.111    
      IF (LTIMER) THEN                                                     FCDCH7A.112    
        CALL TIMER('FCDCH   ',3)                                           FCDCH7A.113    
      ENDIF                                                                FCDCH7A.114    
                                                                           FCDCH7A.115    
      KARMAN2=VKMAN*VKMAN                                                  FCDCH7A.116    
                                                                           FCDCH7A.117    
      DO I=P1,P1+P_POINTS-1                                                FCDCH7A.118    
        CD(I) = 0.                                                         FCDCH7A.119    
        CH(I) = 0.                                                         FCDCH7A.120    
        IF ( .NOT. LAND_MASK(I) ) THEN                                     FCDCH7A.121    
                                                                           FCDCH7A.122    
!-----------------------------------------------------------------------   FCDCH7A.123    
!! 1. Calculate neutral CD, CH.                                            FCDCH7A.124    
!-----------------------------------------------------------------------   FCDCH7A.125    
!  (A) Store ZETAM, ZETAH.                                                 FCDCH7A.126    
          ZETAM = LOG( (Z1_UV(I) + Z0M(I)) / Z0M(I) )                      FCDCH7A.127    
          ZETAH = LOG( (Z1_TQ(I) + Z0M(I)) / Z0H(I) )                      FCDCH7A.128    
!  (B) Calculate neutral CD, CH.  Eqns P243.40, P243.41                    FCDCH7A.129    
          CDN = KARMAN2 / ( ZETAM * ZETAM )                                FCDCH7A.130    
          CHN = KARMAN2 / ( ZETAH * ZETAM )                                FCDCH7A.131    
          PRANDTL = CDN / CHN                                              FCDCH7A.132    
!  (C) Calculate temporary quantities.                                     FCDCH7A.133    
          AM = 2.0 * ALPHAR / PRANDTL                                      FCDCH7A.134    
          AH = AM                                                          FCDCH7A.135    
                                                                           FCDCH7A.136    
!-----------------------------------------------------------------------   FCDCH7A.137    
!! 2. Calculate functions Fm, Fh.                                          FCDCH7A.138    
!-----------------------------------------------------------------------   FCDCH7A.139    
          RFZ=0.0                                                          FCDCH7A.140    
          BM=0.0                                                           FCDCH7A.141    
          BH=0.0                                                           FCDCH7A.142    
          RIF = RIB(I) / PRANDTL                                           FCDCH7A.143    
                                                                           FCDCH7A.144    
!  Case 1: stable boundary layer (RIB > 0).                                FCDCH7A.145    
          IF (RIB(I) .GT. 0.0) THEN                                        FCDCH7A.146    
            IF ( 1.0/RIF .GT. HETGEN*ALPHAR ) THEN                         FCDCH7A.147    
              FM = 1.0 - HETGEN * ALPHAR * RIF                             FCDCH7A.148    
              FM = ( FM * FM ) /                                           FCDCH7A.149    
     &             ( 1.0 + 2.0 * (1.0-HETGEN) * ALPHAR * RIF )             FCDCH7A.150    
              FH = FM                                                      FCDCH7A.151    
            ELSE                                                           FCDCH7A.152    
              FM = 0.0                                                     FCDCH7A.153    
              FH = 0.0                                                     FCDCH7A.154    
            ENDIF                                                          FCDCH7A.155    
                                                                           FCDCH7A.156    
!  Case 2: unstable boundary layer (RIB < or = 0).                         FCDCH7A.157    
          ELSE                                                             FCDCH7A.158    
!  (A) Store 1/Fz in RFZ.  Eqn P243.51, as approximated by P243.52.        FCDCH7A.159    
            RFZ = CZ * SQRT ( Z1_UV(I) / Z0F(I) )                          FCDCH7A.160    
!  (B) Store BM and BH.                                                    FCDCH7A.161    
            BM = DM * AM * CDN * RFZ                                       FCDCH7A.162    
            BH = AH * CHN * RFZ                                            FCDCH7A.163    
!  (C) Finally calculate FM and FH.                                        FCDCH7A.164    
            FM = 1.0 - AM * RIB(I) / ( 1.0 + BM * SQRT(-RIB(I)) )          FCDCH7A.165    
            FH = 1.0 - AH * RIB(I) / ( 1.0 + BH * SQRT(-RIB(I)) )          FCDCH7A.166    
                                                                           FCDCH7A.167    
          ENDIF                                                            FCDCH7A.168    
                                                                           FCDCH7A.169    
!-----------------------------------------------------------------------   FCDCH7A.170    
!! 3. Calculate output coefficients.  Eqns P243.53, P243.54.               FCDCH7A.171    
!-----------------------------------------------------------------------   FCDCH7A.172    
          CD(I) = CDN * FM                                                 FCDCH7A.173    
          CH(I) = CHN * FH                                                 FCDCH7A.174    
                                                                           FCDCH7A.175    
        ENDIF ! Sea points                                                 FCDCH7A.176    
                                                                           FCDCH7A.177    
      ENDDO  ! POINTS                                                      FCDCH7A.178    
                                                                           FCDCH7A.179    
      IF (LTIMER) THEN                                                     FCDCH7A.180    
        CALL TIMER('FCDCH   ',4)                                           FCDCH7A.181    
      ENDIF                                                                FCDCH7A.182    
                                                                           FCDCH7A.183    
      RETURN                                                               FCDCH7A.184    
      END                                                                  FCDCH7A.185    
                                                                           FCDCH7A.186    
!     SUBROUTINE FCDCH_LAND---------------------------------------------   FCDCH7A.187    
!                                                                          FCDCH7A.188    
!     Transfer coefficients for snow, land ice and snow-free land tiles    FCDCH7A.189    
!                                                                          FCDCH7A.190    
!     ------------------------------------------------------------------   FCDCH7A.191    

      SUBROUTINE FCDCH_LAND (                                               1,2FCDCH7A.192    
     & P_FIELD,LAND_FIELD,TILE_PTS,TILE_INDEX,LAND_INDEX,                  FCDCH7A.193    
     & RIB,WIND_PROFILE_FACTOR,Z0M,Z0H,Z0F,Z1_UV,Z1_TQ,                    FCDCH7A.194    
     & CD,CH,CD_STD,LTIMER                                                 FCDCH7A.195    
     & )                                                                   FCDCH7A.196    
                                                                           FCDCH7A.197    
      IMPLICIT NONE                                                        FCDCH7A.198    
                                                                           FCDCH7A.199    
      INTEGER                                                              FCDCH7A.200    
     & P_FIELD            ! IN Size of field on p-grid.                    FCDCH7A.201    
     &,LAND_FIELD         ! IN Number of land points.                      FCDCH7A.202    
     &,TILE_PTS           ! IN Number of tile points.                      FCDCH7A.203    
     &,TILE_INDEX(LAND_FIELD)                                              FCDCH7A.204    
!                         ! IN Index of tile points.                       FCDCH7A.205    
     &,LAND_INDEX(P_FIELD)! IN Index of land points.                       FCDCH7A.206    
                                                                           FCDCH7A.207    
      LOGICAL                                                              FCDCH7A.208    
     & LTIMER             ! IN Logical for TIMER.                          FCDCH7A.209    
                                                                           FCDCH7A.210    
      REAL                                                                 FCDCH7A.211    
     & RIB(LAND_FIELD)    ! IN Bulk Richardson number.                     FCDCH7A.212    
     &,WIND_PROFILE_FACTOR(LAND_FIELD)                                     FCDCH7A.213    
!                         ! IN for adjusting the surface transfer          FCDCH7A.214    
!                         !    coefficients to remove form drag effects.   FCDCH7A.215    
     &,Z0M(LAND_FIELD)    ! IN Roughness length for momentum transport     FCDCH7A.216    
     &,Z0H(LAND_FIELD)    ! IN Roughness length for heat and moisture      FCDCH7A.217    
     &,Z0F(LAND_FIELD)    ! IN Roughness length for free-convective heat   FCDCH7A.218    
!                         !    and moisture transport (m).                 FCDCH7A.219    
     &,Z1_UV(P_FIELD)     ! IN Height of lowest uv level (m).              FCDCH7A.220    
     &,Z1_TQ(P_FIELD)     ! IN Height of lowest tq level (m).              FCDCH7A.221    
                                                                           FCDCH7A.222    
      REAL                                                                 FCDCH7A.223    
     & CD(LAND_FIELD)     ! OUT Surface drag coefficient including form    FCDCH7A.224    
!                         !     drag.                                      FCDCH7A.225    
     &,CH(LAND_FIELD)     ! OUT Bulk transfer coefficient for              FCDCH7A.226    
!                         !     heat/moisture.                             FCDCH7A.227    
     &,CD_STD(LAND_FIELD) ! OUT Surface drag coefficient excluding form    FCDCH7A.228    
!                               drag.                                      FCDCH7A.229    
                                                                           FCDCH7A.230    
      EXTERNAL TIMER                                                       FCDCH7A.231    
                                                                           FCDCH7A.232    
!----------------------------------------------------------------------    FCDCH7A.233    
!  Common and local physical constants                                     FCDCH7A.234    
*CALL C_VKMAN                                                              FCDCH7A.235    
                                                                           FCDCH7A.236    
      REAL ALPHAR,HETGEN,CZ,DM                                             FCDCH7A.237    
      PARAMETER (                                                          FCDCH7A.238    
     & ALPHAR=5.0   ! Tunable parameter in FM and FH calculation.          FCDCH7A.239    
     &,HETGEN=0.0   ! Tunable parameter to represent 'the degree of        FCDCH7A.240    
!                     heterogeneity' of the surface; must be > or = 0.0    FCDCH7A.241    
!                     and < or = 1.0                                       FCDCH7A.242    
     &,CZ=4.0       ! Tunable parameter in unstable Fh, Fm calculations,   FCDCH7A.243    
!                     equal to (3h)**-1.5 in the documentation.            FCDCH7A.244    
     &,DM=2.0       ! Tunable parameter in unstable Fm calculation.        FCDCH7A.245    
     &)                                                                    FCDCH7A.246    
                                                                           FCDCH7A.247    
!  Define local variables (more or less in order of first appearance).     FCDCH7A.248    
                                                                           FCDCH7A.249    
      INTEGER                                                              FCDCH7A.250    
     & I              ! Horizontal field index                             FCDCH7A.251    
     &,J              ! Tile field index                                   FCDCH7A.252    
     &,L              ! Land field index                                   FCDCH7A.253    
                                                                           FCDCH7A.254    
      REAL                                                                 FCDCH7A.255    
     & KARMAN2        ! Square of von Karman's constant.                   FCDCH7A.256    
     &,ZETAM          ! See documentation for definition.                  FCDCH7A.257    
     &,ZETAH          ! See documentation for definition.                  FCDCH7A.258    
     &,CDN            ! CD for neutral conditions.                         FCDCH7A.259    
     &,CHN            ! CH for neutral conditions.                         FCDCH7A.260    
     &,CDN_STD        ! CD_STD for neutral conditions.                     FCDCH7A.261    
     &,PRANDTL        ! Prandtl number at neutrality.                      FCDCH7A.262    
     &,RFZ            ! Temporary in calculation of FM and FH.             FCDCH7A.263    
     &,RIF            ! Flux Richardson number.                            FCDCH7A.264    
     &,AM             ! Temporary in calculation of FM and FH.             FCDCH7A.265    
     &,AH             ! Temporary in calculation of FM and FH.             FCDCH7A.266    
     &,BM             ! Temporary in calculation of FM and FH.             FCDCH7A.267    
     &,BH             ! Temporary in calculation of FM and FH.             FCDCH7A.268    
     &,BM_STD         ! Temporary in calculation of FM_STD.                FCDCH7A.269    
     &,FM             ! Stability factor for CD.                           FCDCH7A.270    
     &,FH             ! Stability factor for CH.                           FCDCH7A.271    
     &,FM_STD         ! Stability factor for CD_STD.                       FCDCH7A.272    
                                                                           FCDCH7A.273    
      IF (LTIMER) THEN                                                     FCDCH7A.274    
        CALL TIMER('FCDCH   ',3)                                           FCDCH7A.275    
      ENDIF                                                                FCDCH7A.276    
                                                                           FCDCH7A.277    
      KARMAN2=VKMAN*VKMAN                                                  FCDCH7A.278    
                                                                           FCDCH7A.279    
      DO J=1,TILE_PTS                                                      FCDCH7A.280    
        L = TILE_INDEX(J)                                                  FCDCH7A.281    
        I = LAND_INDEX(L)                                                  FCDCH7A.282    
                                                                           FCDCH7A.283    
!-----------------------------------------------------------------------   FCDCH7A.284    
!! 1. Calculate neutral CD, CH.                                            FCDCH7A.285    
!-----------------------------------------------------------------------   FCDCH7A.286    
!  (A) Store ZETAM, ZETAH.                                                 FCDCH7A.287    
          ZETAM = LOG( (Z1_UV(I) + Z0M(L)) / Z0M(L) )                      FCDCH7A.288    
          ZETAH = LOG( (Z1_TQ(I) + Z0M(L)) / Z0H(L) )                      FCDCH7A.289    
!  (B) Calculate neutral CD, CH.  Eqns P243.40, P243.41                    FCDCH7A.290    
          CDN = KARMAN2 / ( ZETAM * ZETAM )                                FCDCH7A.291    
          CHN = KARMAN2 / ( ZETAH * ZETAM ) * WIND_PROFILE_FACTOR(L)       FCDCH7A.292    
          CDN_STD = CDN * WIND_PROFILE_FACTOR(L) *                         FCDCH7A.293    
     &                    WIND_PROFILE_FACTOR(L)                           FCDCH7A.294    
          PRANDTL = CDN_STD / CHN                                          FCDCH7A.295    
!  (C) Calculate temporary quantities.                                     FCDCH7A.296    
          AM = 2.0 * ALPHAR / PRANDTL                                      FCDCH7A.297    
          AH = AM                                                          FCDCH7A.298    
                                                                           FCDCH7A.299    
!-----------------------------------------------------------------------   FCDCH7A.300    
!! 2. Calculate functions Fm, Fh.                                          FCDCH7A.301    
!-----------------------------------------------------------------------   FCDCH7A.302    
          RFZ=0.0                                                          FCDCH7A.303    
          BM=0.0                                                           FCDCH7A.304    
          BH=0.0                                                           FCDCH7A.305    
          BM_STD=0.0                                                       FCDCH7A.306    
          RIF = RIB(L) / PRANDTL                                           FCDCH7A.307    
                                                                           FCDCH7A.308    
!  Case 1: stable boundary layer (RIB > 0).                                FCDCH7A.309    
          IF (RIB(L) .GT. 0.0) THEN                                        FCDCH7A.310    
            IF ( 1.0/RIF .GT. HETGEN*ALPHAR ) THEN                         FCDCH7A.311    
              FM = 1.0 - HETGEN * ALPHAR * RIF                             FCDCH7A.312    
              FM = ( FM * FM ) /                                           FCDCH7A.313    
     &             ( 1.0 + 2.0 * (1.0-HETGEN) * ALPHAR * RIF )             FCDCH7A.314    
              FH = FM                                                      FCDCH7A.315    
              FM_STD = FM                                                  FCDCH7A.316    
            ELSE                                                           FCDCH7A.317    
              FM = 0.0                                                     FCDCH7A.318    
              FH = 0.0                                                     FCDCH7A.319    
              FM_STD = 0.0                                                 FCDCH7A.320    
            ENDIF                                                          FCDCH7A.321    
                                                                           FCDCH7A.322    
!  Case 2: unstable boundary layer (RIB < or = 0).                         FCDCH7A.323    
          ELSE                                                             FCDCH7A.324    
!  (A) Store 1/Fz in RFZ.  Eqn P243.51, as approximated by P243.52.        FCDCH7A.325    
            RFZ = CZ * SQRT ( Z1_UV(I) / Z0F(L) )                          FCDCH7A.326    
!  (B) Store BM, BH and BM_STD.                                            FCDCH7A.327    
            BM = DM * AM * CDN * RFZ                                       FCDCH7A.328    
            BH = AH * CHN * RFZ                                            FCDCH7A.329    
            BM_STD = DM * AM * CDN_STD * RFZ                               FCDCH7A.330    
!  (C) Finally calculate FM, FH and FM_STD.                                FCDCH7A.331    
            FM = 1.0 - AM * RIB(L) / ( 1.0 + BM * SQRT(-RIB(L)) )          FCDCH7A.332    
            FH = 1.0 - AH * RIB(L) / ( 1.0 + BH * SQRT(-RIB(L)) )          FCDCH7A.333    
            FM_STD = 1.0 - AM * RIB(L) /                                   FCDCH7A.334    
     &              ( 1.0 + BM_STD * SQRT(-RIB(L)) )                       FCDCH7A.335    
                                                                           FCDCH7A.336    
          ENDIF                                                            FCDCH7A.337    
                                                                           FCDCH7A.338    
!-----------------------------------------------------------------------   FCDCH7A.339    
!! 3. Calculate output coefficients.  Eqns P243.53, P243.54.               FCDCH7A.340    
!-----------------------------------------------------------------------   FCDCH7A.341    
          CD(L) = CDN * FM                                                 FCDCH7A.342    
          CH(L) = CHN * FH                                                 FCDCH7A.343    
          CD_STD(L) = CDN_STD * FM_STD                                     FCDCH7A.344    
                                                                           FCDCH7A.345    
      ENDDO  ! POINTS                                                      FCDCH7A.346    
                                                                           FCDCH7A.347    
      IF (LTIMER) THEN                                                     FCDCH7A.348    
        CALL TIMER('FCDCH   ',4)                                           FCDCH7A.349    
      ENDIF                                                                FCDCH7A.350    
                                                                           FCDCH7A.351    
      RETURN                                                               FCDCH7A.352    
      END                                                                  FCDCH7A.353    
                                                                           FCDCH7A.354    
*ENDIF                                                                     FCDCH7A.355