/[lmdze]/trunk/phylmd/Radlwsw/radlwsw.f
ViewVC logotype

Diff of /trunk/phylmd/Radlwsw/radlwsw.f

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

revision 53 by guez, Fri Oct 7 13:11:58 2011 UTC revision 62 by guez, Thu Jul 26 14:37:37 2012 UTC
# Line 39  contains Line 39  contains
39      ! cldfra---input-R- fraction nuageuse (entre 0 et 1)      ! cldfra---input-R- fraction nuageuse (entre 0 et 1)
40      ! cldtaupd---input-R- epaisseur optique des nuages dans le visible (present-day value)      ! cldtaupd---input-R- epaisseur optique des nuages dans le visible (present-day value)
41      ! cldemi---input-R- emissivite des nuages dans l'IR (entre 0 et 1)      ! cldemi---input-R- emissivite des nuages dans l'IR (entre 0 et 1)
     ! ok_ade---input-L- apply the Aerosol Direct Effect or not?  
     ! ok_aie---input-L- apply the Aerosol Indirect Effect or not?  
42      ! tau_ae, piz_ae, cg_ae-input-R- aerosol optical properties (calculated in aeropt.F)      ! tau_ae, piz_ae, cg_ae-input-R- aerosol optical properties (calculated in aeropt.F)
43      ! cldtaupi-input-R- epaisseur optique des nuages dans le visible      ! cldtaupi-input-R- epaisseur optique des nuages dans le visible
44      !                   calculated for pre-industrial (pi) aerosol concentrations, i.e. with smaller      !                   calculated for pre-industrial (pi) aerosol concentrations, i.e. with smaller
# Line 51  contains Line 49  contains
49      ! radsol---output-R- bilan radiatif net au sol (W/m**2) (+ vers le bas)      ! radsol---output-R- bilan radiatif net au sol (W/m**2) (+ vers le bas)
50      ! albpla---output-R- albedo planetaire (entre 0 et 1)      ! albpla---output-R- albedo planetaire (entre 0 et 1)
51      ! topsw----output-R- flux solaire net au sommet de l'atm.      ! topsw----output-R- flux solaire net au sommet de l'atm.
     ! toplw----output-R- ray. IR montant au sommet de l'atmosphere  
52      ! solsw----output-R- flux solaire net a la surface      ! solsw----output-R- flux solaire net a la surface
53      ! sollw----output-R- ray. IR montant a la surface      ! sollw----output-R- ray. IR montant a la surface
54      ! solswad---output-R- ray. solaire net absorbe a la surface (aerosol dir)      ! solswad---output-R- ray. solaire net absorbe a la surface (aerosol dir)
# Line 83  contains Line 80  contains
80    
81      real cool(klon, klev)      real cool(klon, klev)
82      real heat0(klon, klev), cool0(klon, klev)      real heat0(klon, klev), cool0(klon, klev)
83      real radsol(klon), topsw(klon), toplw(klon)      real radsol(klon), topsw(klon)
84    
85        real, intent(out):: toplw(klon)
86        ! rayonnement infrarouge montant au sommet de l'atmosphère
87    
88      real solsw(klon), sollw(klon), albpla(klon)      real solsw(klon), sollw(klon), albpla(klon)
89      real topsw0(klon), toplw0(klon), solsw0(klon), sollw0(klon)      real topsw0(klon), solsw0(klon), sollw0(klon)
90        real, intent(out):: toplw0(klon)
91      real sollwdown(klon)      real sollwdown(klon)
92      !IM output 3D      !IM output 3D
93      DOUBLE PRECISION ZFSUP(KDLON, KLEV+1)      DOUBLE PRECISION ZFSUP(KDLON, KLEV+1)
# Line 100  contains Line 102  contains
102    
103      DOUBLE PRECISION zx_alpha1, zx_alpha2      DOUBLE PRECISION zx_alpha1, zx_alpha2
104    
105      INTEGER k, kk, i, j, iof, nb_gr      INTEGER k, kk, i, iof, nb_gr
106      EXTERNAL lw      EXTERNAL lw
107    
108      DOUBLE PRECISION PSCT      DOUBLE PRECISION PSCT
# Line 153  contains Line 155  contains
155    
156      logical ok_ade, ok_aie      logical ok_ade, ok_aie
157      ! switches whether to use aerosol direct (indirect) effects or not      ! switches whether to use aerosol direct (indirect) effects or not
158        ! ok_ade---input-L- apply the Aerosol Direct Effect or not?
159        ! ok_aie---input-L- apply the Aerosol Indirect Effect or not?
160    
161      double precision tauae(kdlon, klev, 2) ! aer opt properties      double precision tauae(kdlon, klev, 2) ! aer opt properties
162      double precision pizae(kdlon, klev, 2)      double precision pizae(kdlon, klev, 2)
# Line 188  contains Line 192  contains
192      zdist = dist      zdist = dist
193      PSCT = solaire / zdist / zdist      PSCT = solaire / zdist / zdist
194    
195      loop_nbgr: DO j = 1, nb_gr      loop_iof: DO iof = 0, klon - kdlon, kdlon
        iof = kdlon * (j - 1)  
   
196         DO i = 1, kdlon         DO i = 1, kdlon
197            zfract(i) = fract(iof+i)            zfract(i) = fract(iof+i)
198            zrmu0(i) = rmu0(iof+i)            zrmu0(i) = rmu0(iof+i)
# Line 355  contains Line 357  contains
357               cool0(iof+i, k) = zcool0(i, k)/zznormcp               cool0(iof+i, k) = zcool0(i, k)/zznormcp
358            ENDDO            ENDDO
359         ENDDO         ENDDO
360      end DO loop_nbgr      end DO loop_iof
361    
362    END SUBROUTINE radlwsw    END SUBROUTINE radlwsw
363    

Legend:
Removed from v.53  
changed lines
  Added in v.62

  ViewVC Help
Powered by ViewVC 1.1.21