- Timestamp:
- Sep 19, 2006, 4:23:21 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/branches/IPSL-CM4_IPCC_patches/libf/phylmd/interface_surf.F90
r589 r705 39 39 #include "YOMCST.inc" 40 40 #include "indicesol.inc" 41 41 !IM 42 #include "clesphys.inc" 42 43 43 44 ! run_off ruissellement total … … 74 75 & evap, fluxsens, fluxlat, dflux_l, dflux_s, & 75 76 & tsol_rad, tsurf_new, alb_new, alblw, emis_new, & 76 & z0_new, pctsrf_new, agesno,fqcalving,f fonte, run_off_lic_0)77 & z0_new, pctsrf_new, agesno,fqcalving,fqfonte,ffonte, run_off_lic_0) 77 78 78 79 … … 282 283 ffonte(1:knon)=0. 283 284 fqcalving(1:knon)=0. 285 fqfonte (1:knon)=0. 284 286 285 287 cal = 999999. ; beta = 999999. ; dif_grnd = 999999. ; capsol = 999999. … … 375 377 & petAcoef, peqAcoef, petBcoef, peqBcoef, & 376 378 & tsurf_new, evap, fluxlat, fluxsens, dflux_s, dflux_l, & 377 & fqcalving,f fonte, run_off_lic_0)379 & fqcalving,fqfonte,ffonte, run_off_lic_0) 378 380 379 381 … … 628 630 & petAcoef, peqAcoef, petBcoef, peqBcoef, & 629 631 & tsurf_new, evap, fluxlat, fluxsens, dflux_s, dflux_l, & 630 & fqcalving,f fonte, run_off_lic_0)632 & fqcalving,fqfonte,ffonte, run_off_lic_0) 631 633 632 634 ! calcul albedo … … 723 725 & petAcoef, peqAcoef, petBcoef, peqBcoef, & 724 726 & tsurf_new, evap, fluxlat, fluxsens, dflux_s, dflux_l, & 725 & fqcalving,f fonte, run_off_lic_0)727 & fqcalving,fqfonte,ffonte, run_off_lic_0) 726 728 727 729 ! passage du run-off des glaciers calcule dans fonte_neige au coupleur … … 1364 1366 ! l'avoir lu 1365 1367 real, allocatable,dimension(:,:),save :: pctsrf_sav 1366 real, dimension(iim, jjm+1, 2) :: tamp_srf1368 real, dimension(iim, jjm+1, 3) :: tamp_srf 1367 1369 integer, allocatable, dimension(:), save :: tamp_ind 1368 1370 real, allocatable, dimension(:,:),save :: tamp_zmasq … … 1715 1717 wri_rriv = cpl_rriv(:,:) 1716 1718 wri_rcoa = cpl_rcoa(:,:) 1717 DO j = 1, jjm + 1 1718 wri_calv(:,j) = sum(cpl_rlic(:,j)) / iim 1719 enddo 1719 !Essai OM+JLD : ca marche !!!! (17 mars 2006) 1720 CALL gath2cpl( pctsrf(1,is_lic), tamp_srf(1,1,3), klon, klon, iim, jjm, tamp_ind) 1721 DO j = 1, jjm+1 1722 wri_calv(1,j) = DOT_PRODUCT (cpl_rlic(1:iim,j), tamp_srf(1:iim,j,3)) / REAL(iim) 1723 wri_calv(2:iim,j) = wri_calv(1,j) 1724 ENDDO 1720 1725 1721 1726 where (tamp_zmasq /= 1.) … … 2642 2647 & petAcoef, peqAcoef, petBcoef, peqBcoef, & 2643 2648 & tsurf_new, evap, fluxlat, fluxsens, dflux_s, dflux_l, & 2644 & fqcalving,f fonte,run_off_lic_0)2649 & fqcalving,fqfonte,ffonte,run_off_lic_0) 2645 2650 2646 2651 ! Routine de traitement de la fonte de la neige dans le cas du traitement … … 2703 2708 real, dimension(klon), intent(INOUT):: ffonte 2704 2709 ! Flux d'eau "perdue" par la surface et necessaire pour que limiter la 2705 ! hauteur de neige, en kg/m2/s 2706 real, dimension(klon), intent(INOUT):: fqcalving2710 ! hauteur de neige, en kg/m2/s. Et flux d'eau de fonte de la calotte. 2711 REAL, DIMENSION(klon), INTENT(INOUT):: fqcalving, fqfonte 2707 2712 real, dimension(klon), intent(INOUT):: run_off_lic_0 2708 2713 ! Variables locales … … 2824 2829 fq_fonte = MIN( MAX((tsurf_new(i)-RTT )/chasno,0.0),snow(i)) 2825 2830 ffonte(i) = fq_fonte * RLMLT/dtime 2831 fqfonte(i) = fq_fonte/dtime 2826 2832 snow(i) = max(0., snow(i) - fq_fonte) 2827 2833 bil_eau_s(i) = bil_eau_s(i) + fq_fonte … … 2832 2838 fq_fonte = MAX((tsurf_new(i)-RTT )/chaice,0.0) 2833 2839 ffonte(i) = ffonte(i) + fq_fonte * RLMLT/dtime 2834 bil_eau_s(i) = bil_eau_s(i) + fq_fonte 2840 IF ( ok_lic_melt ) THEN 2841 fqfonte(i) = fqfonte(i) + fq_fonte/dtime 2842 bil_eau_s(i) = bil_eau_s(i) + fq_fonte 2843 ENDIF 2835 2844 tsurf_new(i) = RTT 2836 2845 ENDIF … … 2850 2859 & (1. - coeff_rel) * run_off_lic_0(i) 2851 2860 run_off_lic_0(i) = run_off_lic(i) 2852 run_off_lic(i) = run_off_lic(i) + bil_eau_s(i)/dtime2861 run_off_lic(i) = run_off_lic(i) + fqfonte(i)/dtime 2853 2862 endif 2854 2863 enddo
Note: See TracChangeset
for help on using the changeset viewer.