GCC Code Coverage Report
Directory: ./ Exec Total Coverage
File: phylmd/add_wake_tend.F90 Lines: 18 20 90.0 %
Date: 2023-06-30 12:56:34 Branches: 12 14 85.7 %

Line Branch Exec Source
1
432
SUBROUTINE add_wake_tend(zddeltat, zddeltaq, zds, zddensaw, zddensw, zoccur, text, abortphy)
2
!===================================================================
3
! Ajoute les tendances li�es aux diverses parametrisations physiques aux
4
! variables d'etat des poches froides.
5
!===================================================================
6
!======================================================================
7
! Declarations
8
!======================================================================
9
10
USE dimphy, ONLY: klon, klev
11
USE phys_state_var_mod, ONLY: wake_deltat, wake_deltaq, wake_s,  &
12
                              awake_dens, wake_dens
13
14
USE print_control_mod, ONLY: prt_level
15
IMPLICIT none
16
17
! Arguments :
18
!------------
19
  REAL, DIMENSION(klon, klev),   INTENT (IN)         :: zddeltat, zddeltaq
20
  REAL, DIMENSION(klon),         INTENT (IN)         :: zds, zddensaw, zddensw
21
  INTEGER, DIMENSION(klon),      INTENT (IN)         :: zoccur
22
  CHARACTER*(*),                 INTENT (IN)         :: text
23
  INTEGER,                       INTENT (IN)         :: abortphy
24
25
! Local :
26
!--------
27
28
INTEGER                                              :: i, l
29
30
31
32
432
     IF (prt_level >= 5) then
33
        write (*,*) "In add_wake_tend, after ",text
34
        call flush
35
     end if
36
37
432
     IF (abortphy==1) RETURN ! on n ajoute pas les tendance si le modele
38
                              ! a deja plante.
39
40
!======================================================================
41
!    Add tendencies to wake state variables
42
!======================================================================
43
17280
         DO l = 1, klev
44
16764192
           DO i = 1, klon
45
16763760
             IF (zoccur(i) .GE. 1) THEN
46
7315854
               wake_deltat(i, l) = wake_deltat(i, l) + zddeltat(i,l)
47
7315854
               wake_deltaq(i, l) = wake_deltaq(i, l) + zddeltaq(i,l)
48
             ELSE
49
9431058
               wake_deltat(i, l) = 0.
50
9431058
               wake_deltaq(i, l) = 0.
51
             ENDIF   ! (zoccur(i) .GE. 1)
52
           END DO
53
         END DO
54
429840
         DO i = 1, klon
55
429840
           IF (zoccur(i) .GE. 1) THEN
56
187586
             wake_s(i)     = wake_s(i)    + zds(i)
57
187586
             awake_dens(i) = awake_dens(i) + zddensaw(i)
58
187586
             wake_dens(i)  = wake_dens(i) + zddensw(i)
59
           ELSE
60
241822
             wake_s(i)     = 0.
61
241822
             awake_dens(i) = 0.
62
241822
             wake_dens(i)  = 0.
63
           ENDIF   ! (zoccur(i) .GE. 1)
64
         END DO
65
66
RETURN
67
END