source: LMDZ6/trunk/libf/phylmd/ecrad/ifsrrtm/surdi.F90 @ 5423

Last change on this file since 5423 was 4773, checked in by idelkadi, 13 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: 3.6 KB
Line 
1SUBROUTINE SURDI
2
3!**** *SURDI*   - INITIALIZE COMMON YOERDI CONTROLLING RADINT
4
5!     PURPOSE.
6!     --------
7!           INITIALIZE YOERDI, THE COMMON THAT CONTROLS THE
8!           RADIATION INTERFACE
9
10!**   INTERFACE.
11!     ----------
12!        CALL *SURDI* FROM *SURAD*
13!              -----        -----
14
15!        EXPLICIT ARGUMENTS :
16!        --------------------
17!        NONE
18
19!        IMPLICIT ARGUMENTS :
20!        --------------------
21!        COMMON YOERDI
22
23!     METHOD.
24!     -------
25!        SEE DOCUMENTATION
26
27!     EXTERNALS.
28!     ----------
29!        NONE
30
31!     REFERENCE.
32!     ----------
33!        ECMWF RESEARCH DEPARTMENT DOCUMENTATION OF THE IFS MODEL
34
35!     AUTHOR.
36!     -------
37!      Original  JEAN-JACQUES MORCRETTE  *ECMWF*
38!      ORIGINAL : 88-12-15
39
40!     MODIFICATIONS.
41!     --------------
42!      M.Hamrud      01-Oct-2003 CY28 Cleaning
43!      Modified   P. Viterbo   24-05-2004  surf library
44!      JJMorcrette   2004-10-07 Gas concentrations
45!     ------------------------------------------------------------------
46
47USE PARKIND1  ,ONLY : JPRB
48USE YOMHOOK   ,ONLY : LHOOK, DR_HOOK, JPHOOK
49
50USE YOERDI   , ONLY : RRAE     ,&
51 & RCARDI   ,RCH4     ,RN2O     ,RNO2     ,RO3      ,&
52 & RCFC11   ,RCFC12   ,RCFC22   ,RCCL4    ,&
53 & REPCLC   ,REPH2O   ,RSUNDUR  ,&
54 & RCCO2    ,RCCH4    ,RCN2O    ,RCNO2    ,RCCFC11  ,&
55 & RCCFC12  ,RCCFC22  ,RCCCL4
56USE YOMDYNCORE, ONLY : LAQUA
57
58IMPLICIT NONE
59
60REAL(KIND=JPRB) :: ZAIRMWG, ZC11MWG, ZC12MWG, ZCH4MWG, ZCO2MWG,&
61 & ZN2OMWG, ZNO2MWG, ZO3MWG, ZC22MWG, ZCL4MWG
62REAL(KIND=JPHOOK) :: ZHOOK_HANDLE
63
64!      ----------------------------------------------------------------
65
66!*       1.    SET DEFAULT VALUES.
67!              -------------------
68
69IF (LHOOK) CALL DR_HOOK('SURDI',0,ZHOOK_HANDLE)
70RRAE = 0.1277E-02_JPRB
71
72!* Threshold for computing sunshine duration (W/m2)
73RSUNDUR=120._JPRB
74
75!*  For sea ice, monthly values are based on Ebert and Curry, 1993, Table 2.
76!   We take dry snow albedo as the representative value for non-summer
77!   months, and bare sea-ice as the representative value for summer
78!   months. The values for Antarctic are shifted six-months.
79! All computations brought back to *SUSWN*
80
81!*  Concentration of the various trace gases (IPCC/SACC values for 1990)
82!        CO2         CH4        N2O        CFC11       CFC12
83!      353ppmv     1.72ppmv   310ppbv     280pptv     484pptv
84
85ZAIRMWG = 28.970_JPRB
86ZCO2MWG = 44.011_JPRB
87ZCH4MWG = 16.043_JPRB
88ZN2OMWG = 44.013_JPRB
89ZNO2MWG = 46.006_JPRB
90ZO3MWG  = 47.9982_JPRB
91ZC11MWG = 137.3686_JPRB
92ZC12MWG = 120.9140_JPRB
93ZC22MWG =  86.4690_JPRB
94ZCL4MWG = 153.8230_JPRB
95
96!RCARDI  = 353.E-06_JPRB*ZCO2MWG/ZAIRMWG
97!RCH4    = 1.72E-06_JPRB*ZCH4MWG/ZAIRMWG
98!RN2O    = 310.E-09_JPRB*ZN2OMWG/ZAIRMWG
99!RNO2    = 500.E-13_JPRB*ZNO2MWG/ZAIRMWG
100!RO3     =   1.E-06_JPRB*ZO3MWG /ZAIRMWG
101!RCFC11  = 280.E-12_JPRB*ZC11MWG/ZAIRMWG
102!RCFC12  = 484.E-12_JPRB*ZC12MWG/ZAIRMWG
103!RCFC22  =   1.E-12_JPRB*ZC22MWG/ZAIRMWG
104!RCCL4   =   1.E-12_JPRB*ZCL4MWG/ZAIRMWG
105
106IF( LAQUA ) THEN
107  RCARDI  = 348.E-06_JPRB*ZCO2MWG/ZAIRMWG
108  RCH4    = 1.65E-06_JPRB*ZCH4MWG/ZAIRMWG
109  RN2O    = 306.E-09_JPRB*ZN2OMWG/ZAIRMWG
110ELSE
111  RCARDI  = RCCO2   * ZCO2MWG/ZAIRMWG
112  RCH4    = RCCH4   * ZCH4MWG/ZAIRMWG
113  RN2O    = RCN2O   * ZN2OMWG/ZAIRMWG
114ENDIF
115
116RNO2    = RCNO2   * ZNO2MWG/ZAIRMWG
117RO3     = 1.E-06_JPRB*ZO3MWG /ZAIRMWG
118RCFC11  = RCCFC11 * ZC11MWG/ZAIRMWG
119RCFC12  = RCCFC12 * ZC12MWG/ZAIRMWG
120RCFC22  = RCCFC22 * ZC22MWG/ZAIRMWG
121RCCL4   = RCCCL4  * ZCL4MWG/ZAIRMWG
122
123REPCLC=1.E-12_JPRB
124REPH2O=1.E-12_JPRB
125
126!     -----------------------------------------------------------------
127
128IF (LHOOK) CALL DR_HOOK('SURDI',1,ZHOOK_HANDLE)
129END SUBROUTINE SURDI
Note: See TracBrowser for help on using the repository browser.