Ignore:
Timestamp:
Feb 4, 2008, 5:24:28 PM (17 years ago)
Author:
Laurent Fairhead
Message:

Modifications sur l'albedo JG
LF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/trunk/libf/phylmd/phyetat0.F

    r879 r888  
    77     .           rlat_p, rlon_p, pctsrf_p, tsol_p,
    88     .           ocean_in, ok_veget_in,
    9      .           albe_p, alblw_p,
     9     .           alb1_p, alb2_p,
    1010     .           rain_fall_p, snow_fall_p,solsw_p, sollw_p,
    1111     .           radsol_p,clesphy0,
     
    5353      REAL qsol_p(klon)
    5454      REAL snow_p(klon,nbsrf)
    55       REAL albe_p(klon,nbsrf)
    56 cIM BEG alblw
    57       REAL alblw_p(klon,nbsrf)
    58 cIM END alblw
     55      REAL alb1_p(klon,nbsrf)   ! albedo in visible SW interval
     56      REAL alb2_p(klon,nbsrf)   ! albedo in near IR interval
    5957      REAL evap_p(klon,nbsrf)
    6058      REAL radsol_p(klon)
     
    9391      REAL qsol(klon_glo)
    9492      REAL snow(klon_glo,nbsrf)
    95       REAL albe(klon_glo,nbsrf)
    96       REAL alblw(klon_glo,nbsrf)
     93      REAL alb1(klon_glo,nbsrf)
     94      REAL alb2(klon_glo,nbsrf)
    9795      REAL evap(klon_glo,nbsrf)
    9896      REAL radsol(klon_glo)
     
    728726      ENDIF
    729727c
    730 c Lecture de albedo au sol:
     728c Lecture de albedo de l'interval visible au sol:
    731729c
    732730      ierr = NF_INQ_VARID (nid, "ALBE", nvarid)
     
    746744           ENDIF
    747745#ifdef NC_DOUBLE
    748            ierr = NF_GET_VAR_DOUBLE(nid, nvarid, albe(1,nsrf))
    749 #else
    750            ierr = NF_GET_VAR_REAL(nid, nvarid, albe(1,nsrf))
     746           ierr = NF_GET_VAR_DOUBLE(nid, nvarid, alb1(1,nsrf))
     747#else
     748           ierr = NF_GET_VAR_REAL(nid, nvarid, alb1(1,nsrf))
    751749#endif
    752750           IF (ierr.NE.NF_NOERR) THEN
     
    757755           xmax = -1.0E+20
    758756           DO i = 1, klon_glo
    759               xmin = MIN(albe(i,nsrf),xmin)
    760               xmax = MAX(albe(i,nsrf),xmax)
     757              xmin = MIN(alb1(i,nsrf),xmin)
     758              xmax = MAX(alb1(i,nsrf),xmax)
    761759           ENDDO
    762760           PRINT*,'Albedo du sol ALBE**:', nsrf, xmin, xmax
     
    766764         PRINT*, '          J ignore donc les autres ALBE**'
    767765#ifdef NC_DOUBLE
    768          ierr = NF_GET_VAR_DOUBLE(nid, nvarid, albe(1,1))
    769 #else
    770          ierr = NF_GET_VAR_REAL(nid, nvarid, albe(1,1))
     766         ierr = NF_GET_VAR_DOUBLE(nid, nvarid, alb1(1,1))
     767#else
     768         ierr = NF_GET_VAR_REAL(nid, nvarid, alb1(1,1))
    771769#endif
    772770         IF (ierr.NE.NF_NOERR) THEN
     
    777775         xmax = -1.0E+20
    778776         DO i = 1, klon_glo
    779             xmin = MIN(albe(i,1),xmin)
    780             xmax = MAX(albe(i,1),xmax)
     777            xmin = MIN(alb1(i,1),xmin)
     778            xmax = MAX(alb1(i,1),xmax)
    781779         ENDDO
    782780         PRINT*,'Neige du sol <ALBE>', xmin, xmax
    783781         DO nsrf = 2, nbsrf
    784782         DO i = 1, klon_glo
    785             albe(i,nsrf) = albe(i,1)
    786          ENDDO
    787          ENDDO
    788       ENDIF
    789 
    790 c
    791 c Lecture de albedo au sol LW:
     783            alb1(i,nsrf) = alb1(i,1)
     784         ENDDO
     785         ENDDO
     786      ENDIF
     787
     788c
     789c Lecture de albedo au sol dans l'interval proche infra-rouge:
    792790c
    793791      ierr = NF_INQ_VARID (nid, "ALBLW", nvarid)
     
    798796         DO nsrf = 1, nbsrf
    799797           DO i = 1, klon_glo
    800              alblw(i,nsrf) = albe(i,nsrf)
     798             alb2(i,nsrf) = alb1(i,nsrf)
    801799           ENDDO
    802800         ENDDO
     
    805803         PRINT*, '          J ignore donc les autres ALBLW**'
    806804#ifdef NC_DOUBLE
    807          ierr = NF_GET_VAR_DOUBLE(nid, nvarid, alblw(1,1))
    808 #else
    809          ierr = NF_GET_VAR_REAL(nid, nvarid, alblw(1,1))
     805         ierr = NF_GET_VAR_DOUBLE(nid, nvarid, alb2(1,1))
     806#else
     807         ierr = NF_GET_VAR_REAL(nid, nvarid, alb2(1,1))
    810808#endif
    811809         IF (ierr.NE.NF_NOERR) THEN
     
    816814         xmax = -1.0E+20
    817815         DO i = 1, klon_glo
    818             xmin = MIN(alblw(i,1),xmin)
    819             xmax = MAX(alblw(i,1),xmax)
     816            xmin = MIN(alb2(i,1),xmin)
     817            xmax = MAX(alb2(i,1),xmax)
    820818         ENDDO
    821819         PRINT*,'Neige du sol <ALBLW>', xmin, xmax
    822820         DO nsrf = 2, nbsrf
    823821         DO i = 1, klon_glo
    824             alblw(i,nsrf) = alblw(i,1)
     822            alb2(i,nsrf) = alb2(i,1)
    825823         ENDDO
    826824         ENDDO
     
    15831581      call Scatter( qsol,qsol_p)
    15841582      call Scatter( snow,snow_p)
    1585       call Scatter( albe,albe_p)
    1586       call Scatter( alblw,alblw_p)
     1583      call Scatter( alb1,alb1_p)
     1584      call Scatter( alb2,alb2_p)
    15871585      call Scatter( evap,evap_p)
    15881586      call Scatter( radsol,radsol_p)
Note: See TracChangeset for help on using the changeset viewer.