LMDZ
srtm_cmbgb23.F90
Go to the documentation of this file.
1 SUBROUTINE srtm_cmbgb23
2 
3 ! BAND 23: 8050-12850 cm-1 (low - H2O; high - nothing)
4 !-----------------------------------------------------------------------
5 
6 USE parkind1 ,ONLY : jpim , jprb
7 USE yomhook ,ONLY : lhook, dr_hook
8 
9 USE yoesrtwn , ONLY : ngc, ngs, ngn, rwgt
10 USE yoesrta23, ONLY : ka, selfref, forref, sfluxref, rayl, &
12 
13 IMPLICIT NONE
14 
15 ! Local variables
16 INTEGER(KIND=JPIM) :: JT, JP, IGC, IPR, IPRSM
17 REAL(KIND=JPRB) :: ZSUMK, ZSUMF1, ZSUMF2
18 
19 REAL(KIND=JPRB) :: ZHOOK_HANDLE
20 ! ------------------------------------------------------------------
21 IF (lhook) CALL dr_hook('SRTM_CMBGB23',0,zhook_handle)
22 
23 DO jt = 1,5
24  DO jp = 1,13
25  iprsm = 0
26  DO igc = 1,ngc(8)
27  zsumk = 0.
28  DO ipr = 1, ngn(ngs(7)+igc)
29  iprsm = iprsm + 1
30  zsumk = zsumk + ka(jt,jp,iprsm)*rwgt(iprsm+112)
31  ENDDO
32  kac(jt,jp,igc) = zsumk
33  ENDDO
34  ENDDO
35 ENDDO
36 
37 DO jt = 1,10
38  iprsm = 0
39  DO igc = 1,ngc(8)
40  zsumk = 0.
41  DO ipr = 1, ngn(ngs(7)+igc)
42  iprsm = iprsm + 1
43  zsumk = zsumk + selfref(jt,iprsm)*rwgt(iprsm+112)
44  ENDDO
45  selfrefc(jt,igc) = zsumk
46  ENDDO
47 ENDDO
48 
49 DO jt = 1,3
50  iprsm = 0
51  DO igc = 1,ngc(8)
52  zsumk = 0.
53  DO ipr = 1, ngn(ngs(7)+igc)
54  iprsm = iprsm + 1
55  zsumk = zsumk + forref(jt,iprsm)*rwgt(iprsm+112)
56  ENDDO
57  forrefc(jt,igc) = zsumk
58  ENDDO
59 ENDDO
60 
61 iprsm = 0
62 DO igc = 1,ngc(8)
63  zsumf1 = 0.
64  zsumf2 = 0.
65  DO ipr = 1, ngn(ngs(7)+igc)
66  iprsm = iprsm + 1
67  zsumf1 = zsumf1 + sfluxref(iprsm)
68  zsumf2 = zsumf2 + rayl(iprsm)*rwgt(iprsm+112)
69  ENDDO
70  sfluxrefc(igc) = zsumf1
71  raylc(igc) = zsumf2
72 ENDDO
73 
74 ! -----------------------------------------------------------------
75 IF (lhook) CALL dr_hook('SRTM_CMBGB23',1,zhook_handle)
76 END SUBROUTINE srtm_cmbgb23
77 
real(kind=jprb), dimension(jpg) sfluxref
Definition: yoesrta23.F90:18
integer(kind=jpim), dimension(14) ngs
Definition: yoesrtwn.F90:25
integer(kind=jpim), dimension(112) ngn
Definition: yoesrtwn.F90:27
real(kind=jprb), dimension(224) rwgt
Definition: yoesrtwn.F90:32
real(kind=jprb), dimension(5, 13, jpg) ka
Definition: yoesrta23.F90:16
real(kind=jprb), dimension(ng23) raylc
Definition: yoesrta23.F90:24
real(kind=jprb), dimension(10, jpg) selfref
Definition: yoesrta23.F90:17
integer, parameter jprb
Definition: parkind1.F90:31
real(kind=jprb), dimension(3, jpg) forref
Definition: yoesrta23.F90:17
real(kind=jprb), dimension(jpg) rayl
Definition: yoesrta23.F90:18
real(kind=jprb), dimension(5, 13, ng23) kac
Definition: yoesrta23.F90:22
logical lhook
Definition: yomhook.F90:12
real(kind=jprb), dimension(ng23) sfluxrefc
Definition: yoesrta23.F90:24
subroutine dr_hook(CDNAME, KSWITCH, PKEY)
Definition: yomhook.F90:17
real(kind=jprb), dimension(3, ng23) forrefc
Definition: yoesrta23.F90:23
subroutine srtm_cmbgb23
Definition: srtm_cmbgb23.F90:2
integer, parameter jpim
Definition: parkind1.F90:13
real(kind=jprb), dimension(10, ng23) selfrefc
Definition: yoesrta23.F90:23
integer(kind=jpim), dimension(14) ngc
Definition: yoesrtwn.F90:25