Ignore:
Timestamp:
Jan 16, 2014, 1:43:34 PM (10 years ago)
Author:
idelkadi
Message:
  • Correction du bug dans l'interface avec la physique : On ne veut pas que la distinction entre les nuages convectifs et stratiformes soit prise en compte dans les calculs Cosp. Dans l'interface avec la physique, sont passees en entree pour Cosp, les quantites totales (stratiforme + convective) du contenus en eau et d'autres variables. La fraction nuageuse convective calculee dans la physique est passee en entree pour Cosp dans la version buggee. Elle est remise a 0 dans cette version corrigee.
  • Mise a jour pour ISCCP : la fraction d'ensoleillement calculee par LMDZ est passee en argument pour Isccp
  • Rajouts d'autre variables diagnostiques : sunlit (=0 si nuit et =1 si jour) parasol_crefl (reflectance integree)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/LMDZ4_AR5/libf/cosp/phys_cosp.F90

    r1535 r1928  
    11! Simulateur COSP : Cfmip Observation Simulator Package
     2
    23! ISCCP, Radar (QuickBeam), Lidar et Parasol (ACTSIM), MISR, RTTOVS
    34!Idelkadi Abderrahmane Aout-Septembre 2009
    4 
    55
    66  subroutine phys_cosp( itap,dtime,freq_cosp, &
    77                        ok_mensuelCOSP,ok_journeCOSP,ok_hfCOSP, &
    88                        ecrit_mth,ecrit_day,ecrit_hf, &
    9                         Nptslmdz,Nlevlmdz,lon,lat, presnivs,overlaplmdz, &
     9                        Nptslmdz,Nlevlmdz,lon,lat, presnivs,overlaplmdz,sunlit, &
    1010                        ref_liq,ref_ice,fracTerLic,u_wind,v_wind,phis,phi,ph,p,skt,t, &
    1111                        sh,rh,tca,cca,mr_lsliq,mr_lsice,fl_lsrainI,fl_lssnowI, &
     
    144144                                     zlev,zlev_half,mr_ozone,radliq,radice,dtau_s,dem_s,ref_liq,ref_ice
    145145  real,dimension(Nptslmdz,Nlevlmdz) ::  fl_lsrainI,fl_lssnowI,fl_ccrainI,fl_ccsnowI
    146   real,dimension(Nptslmdz)        :: lon,lat,skt,fracTerLic,u_wind,v_wind,phis
     146  real,dimension(Nptslmdz)        :: lon,lat,skt,fracTerLic,u_wind,v_wind,phis,sunlit   
    147147  real,dimension(Nlevlmdz)        :: presnivs
    148148  integer                         :: itap,k,ip
    149149  real                            :: dtime,freq_cosp
    150150  logical, parameter              :: lCOSP=.FALSE.
     151
     152  real, dimension(Nptslmdz,PARASOL_NREFL) :: parasolcrefl, Ncref
    151153
    152154!
     
    237239        gbx%q = rh*100.
    238240        gbx%sh = sh
    239         gbx%cca = cca !convective_cloud_amount (1)
     241        gbx%cca = 0.
    240242        gbx%tca = tca ! total_cloud_amount (1)
    241243        gbx%psfc = ph(:,1) !pression de surface
     
    253255        gbx%u_wind  = u_wind !eastward_wind (m s-1)
    254256        gbx%v_wind  = v_wind !northward_wind
    255 ! Attention
    256         gbx%sunlit  = 1
     257
     258      do ip = 1, Npoints
     259        if (sunlit(ip).le.0.) then
     260           gbx%sunlit(ip)=0
     261        else
     262           gbx%sunlit(ip)=1
     263        endif
     264      enddo
    257265
    258266! A voir l equivalent LMDZ
     
    280288     gbx%Reff(:,:,I_CVCLIQ) = ref_liq*1e-6
    281289     gbx%Reff(:,:,I_CVCICE) = ref_ice*1e-6
    282 
    283290        ! ISCCP simulator
    284291        gbx%dtau_s   = dtau_s
     
    423430     if(isccp%boxptop(ip,ii).eq.-1.E+30)then
    424431       isccp%boxptop(ip,ii)=0.
     432     endif
     433    enddo
     434   enddo
     435
     436   do k=1,PARASOL_NREFL
     437    do ii=1, Npoints
     438     if (stlidar%cldlayer(ii,4).gt.0.01) then
     439        parasolcrefl(ii,k)=(stlidar%parasolrefl(ii,k)-0.03*(1.-stlidar%cldlayer(ii,4)))/ &
     440                   stlidar%cldlayer(ii,4)
     441        Ncref(ii,k) = 1.
     442     else
     443        parasolcrefl(ii,k)=0.
     444        Ncref(ii,k) = 0.
    425445     endif
    426446    enddo
Note: See TracChangeset for help on using the changeset viewer.