Ignore:
Timestamp:
Oct 14, 2015, 5:05:47 PM (9 years ago)
Author:
mturbet
Message:

Implementation of the Spectral Albedo

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.GENERIC/libf/phystd/condense_co2.F90

    r1477 r1482  
    11      subroutine condense_co2(ngrid,nlayer,nq,ptimestep, &
    2           pcapcal,pplay,pplev,ptsrf,pt, &
    3           pphi,pdt,pdu,pdv,pdtsrf,pu,pv,pq,pdq, &
    4           piceco2,psolaralb,pemisurf, &
    5           pdtc,pdtsrfc,pdpsrf,pduc,pdvc, &
     2          pcapcal,pplay,pplev,ptsrf,pt,                  &
     3          pphi,pdt,pdu,pdv,pdtsrf,pu,pv,pq,pdq,          &
     4          piceco2,albedo,pemisurf,                       &
     5          albedo_bareground,albedo_co2_ice_SPECTV,       &
     6          pdtc,pdtsrfc,pdpsrf,pduc,pdvc,                 &
    67          pdqc)
    78
    8       use radinc_h, only : naerkind
     9      use radinc_h, only : L_NSPECTV, naerkind
    910      use gases_h, only: gfrac, igas_co2
    1011      use radii_mod, only : co2_reffrad
    1112      use aerosol_mod, only : iaero_co2
    12       USE surfdat_h, only: albedodat, albedice, emisice, emissiv
     13      USE surfdat_h, only: emisice, emissiv
    1314      USE comgeomfi_h, only: lati
    1415      USE tracer_h, only: noms, rho_co2
     
    3233!     ptsrf(ngrid)          Surface temperature
    3334!     
    34 !     pdt(ngrid,nlayer)   Time derivative before condensation/sublimation of pt
     35!     pdt(ngrid,nlayer)     Time derivative before condensation/sublimation of pt
    3536!     pdtsrf(ngrid)         Time derivative before condensation/sublimation of ptsrf
    3637!     pqsurf(ngrid,nq)      Sedimentation flux at the surface (kg.m-2.s-1)
     
    4445!     Both
    4546!     ----
    46 !     piceco2(ngrid)        CO2 ice at the surface (kg/m2)
    47 !     psolaralb(ngrid)      Albedo at the surface
    48 !     pemisurf(ngrid)       Emissivity of the surface
     47!     piceco2(ngrid)               CO2 ice at the surface (kg/m2)
     48!     albedo(ngrid,L_NSPECTV)      Spectral albedo at the surface
     49!     pemisurf(ngrid)              Emissivity of the surface
    4950!
    5051!     Authors
     
    7778      REAL,INTENT(IN) :: pq(ngrid,nlayer,nq)
    7879      REAL,INTENT(IN) :: pdq(ngrid,nlayer,nq)
     80      REAL,INTENT(IN) :: albedo_bareground(ngrid)
     81      REAL,INTENT(IN) :: albedo_co2_ice_SPECTV(L_NSPECTV)
    7982      REAL,INTENT(INOUT) :: piceco2(ngrid)
    80       REAL,INTENT(OUT) :: psolaralb(ngrid)
     83      REAL,INTENT(OUT) :: albedo(ngrid,L_NSPECTV)
    8184      REAL,INTENT(OUT) :: pemisurf(ngrid)
    8285      REAL,INTENT(OUT) :: pdtc(ngrid,nlayer)
     
    9093!     Local variables
    9194
    92       INTEGER l,ig,icap,ilay,it,iq
     95      INTEGER l,ig,icap,ilay,it,iq,nw
    9396
    9497      REAL reffrad(ngrid,nlayer) ! radius (m) of the co2 ice particles
     
    461464            piceco2(ig)=0.
    462465         endif
    463          if (piceco2(ig).gt.0) then
    464             psolaralb(ig) = albedice(icap)
     466         if (piceco2(ig) .gt. 1.) then  ! CO2 Albedo condition changed to 1 mm coverage. Change by MT2015.
     467            DO nw=1,L_NSPECTV
     468               albedo(ig,nw) = albedo_co2_ice_SPECTV(nw)
     469            ENDDO
    465470            emisref(ig)   = emisice(icap)
    466471         else
    467             psolaralb(ig) = albedodat(ig)
     472            DO nw=1,L_NSPECTV
     473               albedo(ig,nw) = albedo_bareground(ig) ! Note : If you have some water, it will be taken into account in the "hydrol" routine.
     474            ENDDO
    468475            emisref(ig)   = emissiv
    469476            pemisurf(ig)  = emissiv
Note: See TracChangeset for help on using the changeset viewer.