GCC Code Coverage Report
Directory: ./ Exec Total Coverage
File: phylmd/rrtm/rrtm_cmbgb11.F90 Lines: 34 34 100.0 %
Date: 2023-06-30 12:51:15 Branches: 30 32 93.8 %

Line Branch Exec Source
1
!***************************************************************************
2
1
SUBROUTINE RRTM_CMBGB11
3
!***************************************************************************
4
5
!     BAND 11:  1480-1800 cm-1 (low - H2O; high - H2O)
6
!***************************************************************************
7
8
! Parameters
9
USE PARKIND1  ,ONLY : JPIM     ,JPRB
10
USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
11
12
USE YOERRTO11, ONLY : KAO     ,KBO     ,SELFREFO    ,FRACREFAO ,FRACREFBO
13
USE YOERRTA11, ONLY : KA      ,KB      ,SELFREF     ,FRACREFA  ,FRACREFB
14
USE YOERRTRWT, ONLY : FREFA    ,FREFB    ,RWGT
15
USE YOERRTFTR, ONLY : NGC      ,NGS      ,NGN
16
17
IMPLICIT NONE
18
19
INTEGER(KIND=JPIM) :: IGC, IPR, IPRSM, JP, JT
20
21
REAL(KIND=JPRB) :: Z_SUMF1, Z_SUMF2, Z_SUMK
22
REAL(KIND=JPRB) :: ZHOOK_HANDLE
23
24
1
IF (LHOOK) CALL DR_HOOK('RRTM_CMBGB11',0,ZHOOK_HANDLE)
25
6
DO JT = 1,5
26
71
  DO JP = 1,13
27
    IPRSM = 0
28
590
    DO IGC = 1,NGC(11)
29
      Z_SUMK = 0.0_JPRB
30
1560
      DO IPR = 1, NGN(NGS(10)+IGC)
31
1040
        IPRSM = IPRSM + 1
32
33
1560
        Z_SUMK = Z_SUMK + KAO(JT,JP,IPRSM)*RWGT(IPRSM+160)
34
      ENDDO
35
36
585
      KA(JT,JP,IGC) = Z_SUMK
37
    ENDDO
38
  ENDDO
39
ENDDO
40
6
DO JT = 1,5
41
241
  DO JP = 13,59
42
    IPRSM = 0
43
2120
    DO IGC = 1,NGC(11)
44
      Z_SUMK = 0.0_JPRB
45
5640
      DO IPR = 1, NGN(NGS(10)+IGC)
46
3760
        IPRSM = IPRSM + 1
47
48
5640
        Z_SUMK = Z_SUMK + KBO(JT,JP,IPRSM)*RWGT(IPRSM+160)
49
      ENDDO
50
51
2115
      KB(JT,JP,IGC) = Z_SUMK
52
    ENDDO
53
  ENDDO
54
ENDDO
55
56
11
DO JT = 1,10
57
  IPRSM = 0
58
91
  DO IGC = 1,NGC(11)
59
    Z_SUMK = 0.0_JPRB
60
240
    DO IPR = 1, NGN(NGS(10)+IGC)
61
160
      IPRSM = IPRSM + 1
62
63
240
      Z_SUMK = Z_SUMK + SELFREFO(JT,IPRSM)*RWGT(IPRSM+160)
64
    ENDDO
65
66
90
    SELFREF(JT,IGC) = Z_SUMK
67
  ENDDO
68
ENDDO
69
70
IPRSM = 0
71
9
DO IGC = 1,NGC(11)
72
  Z_SUMF1= 0.0_JPRB
73
  Z_SUMF2= 0.0_JPRB
74
24
  DO IPR = 1, NGN(NGS(10)+IGC)
75
16
    IPRSM = IPRSM + 1
76
77
16
    Z_SUMF1= Z_SUMF1+ FRACREFAO(IPRSM)
78
24
    Z_SUMF2= Z_SUMF2+ FRACREFBO(IPRSM)
79
  ENDDO
80
81
8
  FRACREFA(IGC) = Z_SUMF1
82
9
  FRACREFB(IGC) = Z_SUMF2
83
ENDDO
84
85
9
DO IGC = 1,NGC(11)
86
87
8
  FREFA(NGS(10)+IGC,1) = FRACREFA(IGC)
88
9
  FREFB(NGS(10)+IGC,1) = FRACREFB(IGC)
89
ENDDO
90
91
1
IF (LHOOK) CALL DR_HOOK('RRTM_CMBGB11',1,ZHOOK_HANDLE)
92
1
END SUBROUTINE RRTM_CMBGB11