source: LMDZ6/trunk/libf/phylmd/ecrad/ifsrrtm/srtm_cmbgb25.F90 @ 5408

Last change on this file since 5408 was 4773, checked in by idelkadi, 12 months ago
  • Update of Ecrad in LMDZ The same organization of the Ecrad offline version is retained in order to facilitate the updating of Ecrad in LMDZ and the comparison between online and offline results. version 1.6.1 of Ecrad (https://github.com/lguez/ecrad.git)
  • Implementation of the double call of Ecrad in LMDZ


File size: 1.6 KB
Line 
1SUBROUTINE SRTM_CMBGB25
2
3!     BAND 25:  16000-22650 cm-1 (low - H2O; high - nothing)
4!-----------------------------------------------------------------------
5
6USE PARKIND1  ,ONLY : JPIM , JPRB
7USE YOMHOOK   ,ONLY : LHOOK, DR_HOOK, JPHOOK
8
9USE YOESRTM  , ONLY : NGN
10USE YOESRTWN , ONLY : NGC, NGS, RWGT
11!USE YOESRTWN , ONLY : NGC, NGS, NGN, RWGT
12USE YOESRTA25, ONLY : KA, SFLUXREF, ABSO3A, ABSO3B, RAYL, &
13                    & KAC, SFLUXREFC, ABSO3AC, ABSO3BC, RAYLC
14
15IMPLICIT NONE
16
17! Local variables
18INTEGER(KIND=JPIM) :: JT, JP, IGC, IPR, IPRSM
19REAL(KIND=JPRB)    :: ZSUMK, ZSUMF1, ZSUMF2, ZSUMF3, ZSUMF4
20
21REAL(KIND=JPHOOK) :: ZHOOK_HANDLE
22!     ------------------------------------------------------------------
23IF (LHOOK) CALL DR_HOOK('SRTM_CMBGB25',0,ZHOOK_HANDLE)
24
25DO JT = 1,5
26  DO JP = 1,13
27    IPRSM = 0
28    DO IGC = 1,NGC(10)
29      ZSUMK = 0.
30      DO IPR = 1, NGN(NGS(9)+IGC)
31        IPRSM = IPRSM + 1
32        ZSUMK = ZSUMK + KA(JT,JP,IPRSM)*RWGT(IPRSM+144)
33      ENDDO
34      KAC(JT,JP,IGC) = ZSUMK
35    ENDDO
36  ENDDO
37ENDDO
38
39IPRSM = 0
40DO IGC = 1,NGC(10)
41  ZSUMF1 = 0.
42  ZSUMF2 = 0.
43  ZSUMF3 = 0.
44  ZSUMF4 = 0.
45  DO IPR = 1, NGN(NGS(9)+IGC)
46    IPRSM = IPRSM + 1
47    ZSUMF1 = ZSUMF1 + SFLUXREF(IPRSM)
48    ZSUMF2 = ZSUMF2 + ABSO3A(IPRSM)*RWGT(IPRSM+144)
49    ZSUMF3 = ZSUMF3 + ABSO3B(IPRSM)*RWGT(IPRSM+144)
50    ZSUMF4 = ZSUMF4 + RAYL(IPRSM)*RWGT(IPRSM+144)
51  ENDDO
52  SFLUXREFC(IGC) = ZSUMF1
53  ABSO3AC(IGC) = ZSUMF2
54  ABSO3BC(IGC) = ZSUMF3
55  RAYLC(IGC) = ZSUMF4
56ENDDO
57
58!     -----------------------------------------------------------------
59IF (LHOOK) CALL DR_HOOK('SRTM_CMBGB25',1,ZHOOK_HANDLE)
60END SUBROUTINE SRTM_CMBGB25
61
Note: See TracBrowser for help on using the repository browser.