Changeset 5026
- Timestamp:
- Jul 8, 2024, 3:09:16 PM (2 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/physiq_mod.F90
r5007 r5026 903 903 REAL zdtime, zdtime1, zdtime2, zlongi 904 904 ! 905 REAL qcheck906 905 REAL z_avant(klon), z_apres(klon), z_factor(klon) 907 906 LOGICAL zx_ajustq … … 3058 3057 ENDDO 3059 3058 ENDDO 3060 IF (check) THEN3061 za = qcheck(klon,klev,paprs,q_seri,ql_seri,cell_area)3062 WRITE(lunout,*) "avantcon=", za3063 ENDIF3064 zx_ajustq = .FALSE.3065 IF (iflag_con.EQ.2) zx_ajustq=.TRUE.3066 IF (zx_ajustq) THEN3067 DO i = 1, klon3068 z_avant(i) = 0.03069 ENDDO3070 DO k = 1, klev3071 DO i = 1, klon3072 z_avant(i) = z_avant(i) + (q_seri(i,k)+ql_seri(i,k)) &3073 *(paprs(i,k)-paprs(i,k+1))/RG3074 ENDDO3075 ENDDO3076 ENDIF3077 3059 3078 3060 ! Calcule de vitesse verticale a partir de flux de masse verticale … … 3467 3449 CALL writefield_phy('q_seri',q_seri,nbp_lev) 3468 3450 ENDIF 3469 3470 IF (check) THEN3471 za = qcheck(klon,klev,paprs,q_seri,ql_seri,cell_area)3472 WRITE(lunout,*)"aprescon=", za3473 zx_t = 0.03474 za = 0.03475 DO i = 1, klon3476 za = za + cell_area(i)/REAL(klon)3477 zx_t = zx_t + (rain_con(i)+ &3478 snow_con(i))*cell_area(i)/REAL(klon)3479 ENDDO3480 zx_t = zx_t/za*phys_tstep3481 WRITE(lunout,*)"Precip=", zx_t3482 ENDIF3483 IF (zx_ajustq) THEN3484 DO i = 1, klon3485 z_apres(i) = 0.03486 ENDDO3487 DO k = 1, klev3488 DO i = 1, klon3489 z_apres(i) = z_apres(i) + (q_seri(i,k)+ql_seri(i,k)) &3490 *(paprs(i,k)-paprs(i,k+1))/RG3491 ENDDO3492 ENDDO3493 DO i = 1, klon3494 z_factor(i) = (z_avant(i)-(rain_con(i)+snow_con(i))*phys_tstep) &3495 /z_apres(i)3496 ENDDO3497 DO k = 1, klev3498 DO i = 1, klon3499 IF (z_factor(i).GT.(1.0+1.0E-08) .OR. &3500 z_factor(i).LT.(1.0-1.0E-08)) THEN3501 q_seri(i,k) = q_seri(i,k) * z_factor(i)3502 ENDIF3503 ENDDO3504 ENDDO3505 ENDIF3506 zx_ajustq=.FALSE.3507 3451 3508 3452 ! … … 3998 3942 ENDIF 3999 3943 4000 IF (check) THEN4001 za = qcheck(klon,klev,paprs,q_seri,ql_seri,cell_area)4002 WRITE(lunout,*)"apresilp=", za4003 zx_t = 0.04004 za = 0.04005 DO i = 1, klon4006 za = za + cell_area(i)/REAL(klon)4007 zx_t = zx_t + (rain_lsc(i) &4008 + snow_lsc(i))*cell_area(i)/REAL(klon)4009 ENDDO4010 zx_t = zx_t/za*phys_tstep4011 WRITE(lunout,*)"Precip=", zx_t4012 ENDIF4013 4014 3944 IF (mydebug) THEN 4015 3945 CALL writefield_phy('u_seri',u_seri,nbp_lev)
Note: See TracChangeset
for help on using the changeset viewer.