/[lmdze]/trunk/phylmd/Radlwsw/sw.f90
ViewVC logotype

Diff of /trunk/phylmd/Radlwsw/sw.f90

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 217 by guez, Thu Mar 30 14:25:18 2017 UTC revision 219 by guez, Thu Mar 30 15:59:45 2017 UTC
# Line 103  contains Line 103  contains
103      INTEGER:: itapsw = 0      INTEGER:: itapsw = 0
104      LOGICAL:: appel1er = .TRUE.      LOGICAL:: appel1er = .TRUE.
105      !jq-Introduced for aerosol forcings      !jq-Introduced for aerosol forcings
     logical, save:: flag_aer  
106    
107      !jq - Fluxes including aerosol effects      !jq - Fluxes including aerosol effects
108      DOUBLE PRECISION, save:: ZFSUPAD(KDLON, KFLEV+1)      DOUBLE PRECISION, save:: ZFSUPAD(KDLON, KFLEV+1)
# Line 117  contains Line 116  contains
116      !-------------------------------------------------------------------      !-------------------------------------------------------------------
117    
118      if(.not.initialized) then      if(.not.initialized) then
        flag_aer=.false.  
119         initialized=.TRUE.         initialized=.TRUE.
120         ZFSUPAD = 0.         ZFSUPAD = 0.
121         ZFSDNAD = 0.         ZFSDNAD = 0.
# Line 145  contains Line 143  contains
143              PRMU0, PFRAC, PTAVE, PWV, &              PRMU0, PFRAC, PTAVE, PWV, &
144              ZAKI, ZCLD, ZCLEAR, ZDSIG, ZFACT, ZRMU, ZSEC, ZUD)              ZAKI, ZCLD, ZCLEAR, ZDSIG, ZFACT, ZRMU, ZSEC, ZUD)
145         INU = 1         INU = 1
146         CALL SW1S(INU, flag_aer, PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, &         CALL SW1S(INU, PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, POMEGA, ZOZ, &
147              POMEGA, ZOZ, ZRMU, ZSEC, PTAU, ZUD, ZFD, ZFU)              ZRMU, ZSEC, PTAU, ZUD, ZFD, ZFU)
148         INU = 2         INU = 2
149         CALL SW2S(INU, flag_aer, ZAKI, PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, &         CALL SW2S(INU, ZAKI, PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, POMEGA, &
150              POMEGA, ZOZ, ZRMU, ZSEC, PTAU, ZUD, PWV, PQS, ZFDOWN, ZFUP)              ZOZ, ZRMU, ZSEC, PTAU, ZUD, PWV, PQS, ZFDOWN, ZFUP)
151         DO JK = 1 , KFLEV+1         DO JK = 1 , KFLEV+1
152            DO JL = 1, KDLON            DO JL = 1, KDLON
153               ZFSUP0(JL, JK) = (ZFUP(JL, JK) + ZFU(JL, JK)) * ZFACT(JL)               ZFSUP0(JL, JK) = (ZFUP(JL, JK) + ZFU(JL, JK)) * ZFACT(JL)
# Line 157  contains Line 155  contains
155            ENDDO            ENDDO
156         ENDDO         ENDDO
157    
        flag_aer= .false.  
158         CALL SWU(PSCT, PCLDSW, PPMB, PPSOL, &         CALL SWU(PSCT, PCLDSW, PPMB, PPSOL, &
159              PRMU0, PFRAC, PTAVE, PWV, &              PRMU0, PFRAC, PTAVE, PWV, &
160              ZAKI, ZCLD, ZCLEAR, ZDSIG, ZFACT, ZRMU, ZSEC, ZUD)              ZAKI, ZCLD, ZCLEAR, ZDSIG, ZFACT, ZRMU, ZSEC, ZUD)
161         INU = 1         INU = 1
162         CALL SW1S(INU, .false., PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, &         CALL SW1S(INU, PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, POMEGA, ZOZ, &
163              POMEGA, ZOZ, ZRMU, ZSEC, PTAU, ZUD, ZFD, ZFU)              ZRMU, ZSEC, PTAU, ZUD, ZFD, ZFU)
164         INU = 2         INU = 2
165         CALL SW2S(INU, .false., ZAKI, PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, &         CALL SW2S(INU, ZAKI, PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, POMEGA, &
166              POMEGA, ZOZ, ZRMU, ZSEC, PTAU, ZUD, PWV, PQS, ZFDOWN, ZFUP)              ZOZ, ZRMU, ZSEC, PTAU, ZUD, PWV, PQS, ZFDOWN, ZFUP)
167    
168         ! cloudy-sky:         ! cloudy-sky:
169    
# Line 179  contains Line 176  contains
176    
177         IF (ok_ade) THEN         IF (ok_ade) THEN
178            ! cloudy-sky + aerosol dir OB            ! cloudy-sky + aerosol dir OB
           flag_aer= .true.  
179            CALL SWU(PSCT, PCLDSW, PPMB, PPSOL, PRMU0, PFRAC, PTAVE, PWV, ZAKI, &            CALL SWU(PSCT, PCLDSW, PPMB, PPSOL, PRMU0, PFRAC, PTAVE, PWV, ZAKI, &
180                 ZCLD, ZCLEAR, ZDSIG, ZFACT, ZRMU, ZSEC, ZUD)                 ZCLD, ZCLEAR, ZDSIG, ZFACT, ZRMU, ZSEC, ZUD)
181            INU = 1            INU = 1
182            CALL SW1S(INU, .true., PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, &            CALL SW1S(INU, PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, POMEGA, ZOZ, &
183                 POMEGA, ZOZ, ZRMU, ZSEC, PTAU, ZUD, ZFD, ZFU)                 ZRMU, ZSEC, PTAU, ZUD, ZFD, ZFU)
184            INU = 2            INU = 2
185            CALL SW2S(INU, .true., ZAKI, PALBD, PALBP, PCG, ZCLD, ZCLEAR, &            CALL SW2S(INU, ZAKI, PALBD, PALBP, PCG, ZCLD, ZCLEAR, ZDSIG, &
186                 ZDSIG, POMEGA, ZOZ, ZRMU, ZSEC, PTAU, ZUD, PWV, PQS, ZFDOWN, &                 POMEGA, ZOZ, ZRMU, ZSEC, PTAU, ZUD, PWV, PQS, ZFDOWN, ZFUP)
                ZFUP)  
187            DO JK = 1 , KFLEV+1            DO JK = 1 , KFLEV+1
188               DO JL = 1, KDLON               DO JL = 1, KDLON
189                  ZFSUPAD(JL, JK) = ZFSUP(JL, JK)                  ZFSUPAD(JL, JK) = ZFSUP(JL, JK)

Legend:
Removed from v.217  
changed lines
  Added in v.219

  ViewVC Help
Powered by ViewVC 1.1.21