Changeset 2903 for trunk/LMDZ.MARS/libf


Ignore:
Timestamp:
Feb 22, 2023, 7:08:12 PM (21 months ago)
Author:
llange
Message:

PCM
Fix a bug in CO2condens. Surface temperature used at the surface as a boundary condition for the VL scheme must be ztcondsol. I've directly put ztcondsol rather that ptsurf+pdtsurfc*timestep.
Remove stuff about the solar albedo dependant flux to r2901, sorry about the mistake
LL & FF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.MARS/libf/phymars/co2condens_mod.F

    r2902 r2903  
    170170      REAL masseq(nlayer),wq(nlayer+1)
    171171      INTEGER ifils,iq2
    172 c LL: flux dependant albedo
    173       real :: totflux(ngrid)
    174172c----------------------------------------------------------------------
    175173
     
    177175c   --------------
    178176c
    179        totflux(:) = fluxsurf_sw(:,1)+fluxsurf_sw(:,2)
    180177      ! AS: firstcall OK absolute
    181178      IF (firstcall) THEN
     
    502499!     ----------------------------------------
    503500      CALL albedocaps(zls,ngrid,piceco2,psolaralb,emisref)
    504       DO ig = 1,ngrid
    505         if(piceco2(ig).gt.0.) then
    506           psolaralb(ig,1) = 0.267+0.00059*totflux(ig)
    507           psolaralb(ig,2) = psolaralb(ig,1)
    508           if(ig.eq.ngrid) then
    509            psolaralb(ig,1) = 0.532+8.72e-4*totflux(ig)
    510            psolaralb(ig,2) = psolaralb(ig,1)
    511           endif
    512         endif
    513       ENDDO
    514 
    515 
    516501
    517502! set pemisurf() to emissiv when there is bare surface (needed for co2snow)
     
    577562c           Value transfert at the surface interface when condensation
    578563c           sublimation:
    579             ztm(1) = ztsrf(ig) + pdtsrfc(ig)*ptimestep
     564            ztm(1) = ztcondsol(ig)
    580565            zum(1) = 0 
    581566            zvm(1) = 0 
     
    751736           ! NB: Updated surface pressure, at grid point 'ngrid', is
    752737           !     ps(ngrid)=pplev(ngrid,1)+pdpsrf(ngrid)*ptimestep
    753 !             write(*,*) "co2condens: South pole: latitude(ngrid)=",
    754 !     &                                           latitude(ngrid)
    755 !             ztcondsol(ngrid)=
    756 !     &          1./(bcond-acond*log(.01*vmr_co2(ngrid,1)*
    757 !     &                    (pplev(ngrid,1)+pdpsrf(ngrid)*ptimestep)))
    758 !             pdtsrfc(ngrid)=(ztcondsol(ngrid)-ztsrf(ngrid))/ptimestep
     738             write(*,*) "co2condens: South pole: latitude(ngrid)=",
     739     &                                           latitude(ngrid)
     740             ztcondsol(ngrid)=
     741     &          1./(bcond-acond*log(.01*vmr_co2(ngrid,1)*
     742     &                    (pplev(ngrid,1)+pdpsrf(ngrid)*ptimestep)))
     743             pdtsrfc(ngrid)=(ztcondsol(ngrid)-ztsrf(ngrid))/ptimestep
    759744           endif
    760745         endif
Note: See TracChangeset for help on using the changeset viewer.