GCC Code Coverage Report
Directory: ./ Exec Total Coverage
File: phylmd/rrtm/suphy.F90 Lines: 9 9 100.0 %
Date: 2023-06-30 12:56:34 Branches: 2 4 50.0 %

Line Branch Exec Source
1
1
SUBROUTINE SUPHY(KULOUT)
2
3
USE YOMCT0   , ONLY : NCONF
4
USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
5
6
!**** *SUPHY*   - Calls physic specific set-up routines
7
8
!     Purpose.
9
!     --------
10
!           Calls set-up routines specific to the different physics
11
!           packages that can be used in the IFS/ARPEGE model
12
13
!**   Interface.
14
!     ----------
15
!        *CALL* *SUPHY(KULOUT)
16
17
!        Explicit arguments :
18
!        --------------------
19
!        KULOUT : Logical unit for the output
20
21
!        Implicit arguments :
22
!        --------------------
23
!        COMMON YOMPHY, YOEPHY
24
25
!     Method.
26
!     -------
27
!        See documentation
28
29
!     Externals.
30
!     ----------
31
32
!     SUPHEC
33
!     SUPHMF
34
!     SUPHYFL
35
!     SUHLPH
36
!
37
!     Reference.
38
!     ----------
39
!        ECMWF Research Department documentation of the IFS
40
41
!        or
42
43
!        Documentation ARPEGE (depending on which physics will be used)
44
45
!     Author.
46
!     -------
47
!        Mats Hamrud and Philippe Courtier  *ECMWF*
48
!        J.-F. Geleyn for the ARPEGE rewriting.
49
50
!     Modifications.
51
!     --------------
52
!        Original : 87-10-15
53
!        ARPEGE extension 90-9-1
54
!        ARPEGE modification 90-11-24
55
!        Modified by M. Deque 91-02-28 (key for Ozone)
56
!        Modified by M. Deque 91-03-18 (key for Negative humidity)
57
!        Modified by M. Deque 91-04-01 (keys for cloudiness and wavedrag)
58
!        Modified by J.-F. Geleyn 91-06-15 (call to SUPHMF and SUPHEC)
59
!        Modified by J.-J. Morcrette 91-11-12
60
!        Modified by K. YESSAD (MAY 2000): remove call to EC physics setup
61
!         in a 2D model because some dimensionings are inconsistent and
62
!         generate aborts, and because 2D models are purely adiabatic ones.
63
!        M.Hamrud      01-Oct-2003 CY28 Cleaning
64
!        B.Sass        01-June-2006 (call setup for HIRLAM physics)
65
!     ------------------------------------------------------------------
66
67
USE PARKIND1  ,ONLY : JPIM     ,JPRB
68
69
IMPLICIT NONE
70
71
INTEGER(KIND=JPIM),INTENT(IN)    :: KULOUT
72
LOGICAL :: LLSHW, LLVEQ, LL2D
73
REAL(KIND=JPRB) :: ZHOOK_HANDLE
74
75
#include "suphec.intfb.h"
76
#include "suphmf.intfb.h"
77
#include "suhlph.intfb.h"
78
#include "suphyfl.intfb.h"
79
#include "sumts.intfb.h"
80
81
!     ------------------------------------------------------------------
82
83
!*       0.    Set-up LL2D (2D model switch).
84
!              ------------------------------
85
86
1
IF (LHOOK) CALL DR_HOOK('SUPHY',0,ZHOOK_HANDLE)
87
LLSHW=NCONF == 201.OR.NCONF == 421.OR.NCONF == 521
88
LLVEQ=NCONF == 202.OR.NCONF == 422.OR.NCONF == 522
89
LL2D=LLSHW.OR.LLVEQ
90
91
!     ------------------------------------------------------------------
92
93
!*       1.    Call initialization of specific physics' commons.
94
!              -------------------------------------------------
95
96
!*       1.1   Meteo-France Physics
97
!              --------------------
98
99
1
print *,'---- SUPHY: avant SUPHMF'
100
1
CALL SUPHMF(KULOUT)
101
!
102
1
print *,'---- SUPHY: avant SUGFL'
103
!SUGFL: Set up unified_treatment grid-point fields
104
1
CALL SUGFL
105
106
107
!*       1.2   ECMWF Physics
108
!              -------------
109
110
! IF Commente par MPL 20.11.08
111
!IF (.NOT.LL2D) THEN
112
1
   CALL SUPHEC(KULOUT)
113
!ENDIF
114
115
!        1.3   Initialize HIRLAM physics
116
!              -------------------------
117
! Commente par MPL 20.11.08
118
!CALL SUHLPH(KULOUT)
119
!
120
!     ------------------------------------------------------------------
121
122
!*       2.    Initialize physics' flags commons.
123
!              ----------------------------------
124
125
! Commente par MPL 20.11.08
126
!CALL SUPHYFL
127
128
!     ------------------------------------------------------------------
129
130
!*       3.    Initialize "model to satellite" RTTOV parameters.
131
!              ------------------------------------------------
132
133
! Commente par MPL 20.11.08
134
!CALL SUMTS
135
136
!     ------------------------------------------------------------------
137
138
1
IF (LHOOK) CALL DR_HOOK('SUPHY',1,ZHOOK_HANDLE)
139
1
END SUBROUTINE SUPHY