Ignore:
Timestamp:
Oct 24, 2023, 12:13:53 PM (7 months ago)
Author:
oboucher
Message:

moving the calculation of wfbilo wfrain and wfsnow inside phys_output_write_mod so that it uses the timestep values of rain and snow instead of the values from the previous timestep as it was the case in pbl_surface. Thus there is exact mass balance in the output.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/phys_local_var_mod.F90

    r4703 r4737  
    313313!$OMP THREADPRIVATE(cdragm, cdragh)
    314314      REAL,ALLOCATABLE,SAVE,DIMENSION(:) :: cldh, cldl, cldm, cldq, cldt, qsat2m
    315 !$OMP THREADPRIVATE(cldh, cldl, cldm, cldq, cldt, qsat2m )
     315!$OMP THREADPRIVATE(cldh, cldl, cldm, cldq, cldt, qsat2m)
    316316!AS: cldhjn, cldljn, cldmjn,cldtjn pas utilisés en tant que variables, juste noms de diagnostics
    317317      REAL,ALLOCATABLE,SAVE,DIMENSION(:) :: JrNt
     
    406406      REAL,ALLOCATABLE,SAVE,DIMENSION(:) :: proba_notrig, random_notrig
    407407!$OMP THREADPRIVATE(proba_notrig, random_notrig)
    408       REAL,ALLOCATABLE,SAVE,DIMENSION(:,:) :: fsolsw, wfbils, wfbilo
    409 !$OMP THREADPRIVATE(fsolsw, wfbils, wfbilo)
    410       REAL,ALLOCATABLE,SAVE,DIMENSION(:,:) :: wfevap, wfrain, wfsnow
    411 !$OMP THREADPRIVATE(wfevap,wfrain,wfsnow)
     408      REAL,ALLOCATABLE,SAVE,DIMENSION(:,:) :: fsolsw, wfbils
     409!$OMP THREADPRIVATE(fsolsw, wfbils)
     410      REAL,ALLOCATABLE,SAVE,DIMENSION(:,:) :: wfevap
     411!$OMP THREADPRIVATE(wfevap)
    412412      REAL,ALLOCATABLE,SAVE,DIMENSION(:,:)  :: t2m, fluxlat, fsollw,evap_pot
    413413!$OMP THREADPRIVATE(t2m, fluxlat, fsollw,evap_pot)
     
    862862      ALLOCATE(t2m(klon, nbsrf), fluxlat(klon, nbsrf))
    863863      ALLOCATE(fsollw(klon, nbsrf))
    864       ALLOCATE(fsolsw(klon, nbsrf), wfbils(klon, nbsrf), wfbilo(klon, nbsrf))
    865       ALLOCATE(wfevap(klon, nbsrf), wfrain(klon,nbsrf), wfsnow(klon, nbsrf))
     864      ALLOCATE(fsolsw(klon, nbsrf), wfbils(klon, nbsrf))
     865      ALLOCATE(wfevap(klon, nbsrf))
    866866      ALLOCATE(evap_pot(klon, nbsrf))
    867867! FC
     
    871871      ALLOCATE(pmflxr(klon, klev+1), pmflxs(klon, klev+1))
    872872      ALLOCATE(wdtrainA(klon,klev),wdtrainS(klon,klev),wdtrainM(klon,klev))
    873       ALLOCATE(dnwd(klon, klev), upwd(klon, klev) )
     873      ALLOCATE(dnwd(klon, klev), upwd(klon, klev))
    874874      ALLOCATE(ep(klon,klev))                          ! epmax_cape
    875       ALLOCATE(da(klon,klev), mp(klon,klev) )
    876       ALLOCATE(phi(klon,klev,klev) )
    877       ALLOCATE(wght_cvfd(klon,klev) )
    878       ALLOCATE(phi2(klon,klev,klev) )
     875      ALLOCATE(da(klon,klev), mp(klon,klev))
     876      ALLOCATE(phi(klon,klev,klev))
     877      ALLOCATE(wght_cvfd(klon,klev))
     878      ALLOCATE(phi2(klon,klev,klev))
    879879      ALLOCATE(d1a(klon,klev), dam(klon,klev))
    880       ALLOCATE(ev(klon,klev) )
    881       ALLOCATE(elij(klon,klev,klev) )
    882       ALLOCATE(qtaa(klon,klev) )
    883       ALLOCATE(clw(klon,klev) )
    884       ALLOCATE(epmlmMm(klon,klev,klev), eplaMm(klon,klev) )
    885       ALLOCATE(sij(klon,klev,klev) )
     880      ALLOCATE(ev(klon,klev))
     881      ALLOCATE(elij(klon,klev,klev))
     882      ALLOCATE(qtaa(klon,klev))
     883      ALLOCATE(clw(klon,klev))
     884      ALLOCATE(epmlmMm(klon,klev,klev), eplaMm(klon,klev))
     885      ALLOCATE(sij(klon,klev,klev))
    886886
    887887      ALLOCATE(prfl(klon, klev+1))
     
    11841184      DEALLOCATE(t2m, fluxlat)
    11851185      DEALLOCATE(fsollw, evap_pot)
    1186       DEALLOCATE(fsolsw, wfbils, wfbilo)
    1187       DEALLOCATE(wfevap,wfrain,wfsnow)
     1186      DEALLOCATE(fsolsw, wfbils)
     1187      DEALLOCATE(wfevap)
    11881188
    11891189      DEALLOCATE(pmflxr, pmflxs)
     
    11911191      DEALLOCATE(upwd, dnwd)
    11921192      DEALLOCATE(ep)
    1193       DEALLOCATE(da, mp )
    1194       DEALLOCATE(phi )
    1195       DEALLOCATE(wght_cvfd )
    1196       DEALLOCATE(phi2 )
     1193      DEALLOCATE(da, mp)
     1194      DEALLOCATE(phi)
     1195      DEALLOCATE(wght_cvfd)
     1196      DEALLOCATE(phi2)
    11971197      DEALLOCATE(d1a, dam)
    1198       DEALLOCATE(ev )
    1199       DEALLOCATE(elij )
    1200       DEALLOCATE(qtaa )
    1201       DEALLOCATE(clw )
    1202       DEALLOCATE(epmlmMm, eplaMm )
    1203       DEALLOCATE(sij )
     1198      DEALLOCATE(ev)
     1199      DEALLOCATE(elij)
     1200      DEALLOCATE(qtaa)
     1201      DEALLOCATE(clw)
     1202      DEALLOCATE(epmlmMm, eplaMm)
     1203      DEALLOCATE(sij)
    12041204
    12051205
Note: See TracChangeset for help on using the changeset viewer.