Changeset 1067 for LMDZ4/trunk/libf/phylmd/ocean_slab_mod.F90
- Timestamp:
- Dec 17, 2008, 2:30:13 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/trunk/libf/phylmd/ocean_slab_mod.F90
r996 r1067 1 !2 ! $Header$3 1 ! 4 2 MODULE ocean_slab_mod … … 7 5 ! "ocean=slab". 8 6 ! 9 USE surface_data10 USE fonte_neige_mod, ONLY : fonte_neige11 USE calcul_fluxs_mod, ONLY : calcul_fluxs12 USE dimphy13 14 7 IMPLICIT NONE 15 8 PRIVATE … … 22 15 SUBROUTINE ocean_slab_frac(itime, dtime, jour, pctsrf, is_modified) 23 16 17 USE dimphy 24 18 USE limit_read_mod 19 USE surface_data 25 20 INCLUDE "indicesol.h" 26 21 ! INCLUDE "clesphys.h" … … 40 35 41 36 42 IF (version_ocean =='sicOBS') THEN37 IF (version_ocean == 'sicOBS') THEN 43 38 CALL limit_read_frac(itime, dtime, jour, pctsrf, is_modified) 44 39 ELSE … … 55 50 SUBROUTINE ocean_slab_noice( & 56 51 itime, dtime, jour, knon, knindex, & 57 p1lay, tq_cdrag, precip_rain, precip_snow, temp_air, spechum, & 58 petAcoef, peqAcoef, petBcoef, peqBcoef, & 59 ps, u1_lay, v1_lay, tsurf_in, & 52 p1lay, cdragh, cdragm, precip_rain, precip_snow, temp_air, spechum, & 53 AcoefH, AcoefQ, BcoefH, BcoefQ, & 54 AcoefU, AcoefV, BcoefU, BcoefV, & 55 ps, u1, v1, tsurf_in, & 60 56 radsol, snow, agesno, & 61 qsurf, evap, fluxsens, fluxlat, &57 qsurf, evap, fluxsens, fluxlat, flux_u1, flux_v1, & 62 58 tsurf_new, dflux_s, dflux_l, lmt_bils) 63 59 60 USE dimphy 61 USE calcul_fluxs_mod 62 64 63 INCLUDE "indicesol.h" 65 64 INCLUDE "iniprint.h" … … 73 72 REAL, INTENT(IN) :: dtime 74 73 REAL, DIMENSION(klon), INTENT(IN) :: p1lay 75 REAL, DIMENSION(klon), INTENT(IN) :: tq_cdrag74 REAL, DIMENSION(klon), INTENT(IN) :: cdragh, cdragm 76 75 REAL, DIMENSION(klon), INTENT(IN) :: precip_rain, precip_snow 77 76 REAL, DIMENSION(klon), INTENT(IN) :: temp_air, spechum 78 REAL, DIMENSION(klon), INTENT(IN) :: petAcoef, peqAcoef79 REAL, DIMENSION(klon), INTENT(IN) :: petBcoef, peqBcoef77 REAL, DIMENSION(klon), INTENT(IN) :: AcoefH, AcoefQ, BcoefH, BcoefQ 78 REAL, DIMENSION(klon), INTENT(IN) :: AcoefU, AcoefV, BcoefU, BcoefV 80 79 REAL, DIMENSION(klon), INTENT(IN) :: ps 81 REAL, DIMENSION(klon), INTENT(IN) :: u1 _lay, v1_lay80 REAL, DIMENSION(klon), INTENT(IN) :: u1, v1 82 81 REAL, DIMENSION(klon), INTENT(IN) :: tsurf_in 83 82 … … 92 91 REAL, DIMENSION(klon), INTENT(OUT) :: qsurf 93 92 REAL, DIMENSION(klon), INTENT(OUT) :: evap, fluxsens, fluxlat 93 REAL, DIMENSION(klon), INTENT(OUT) :: flux_u1, flux_v1 94 94 REAL, DIMENSION(klon), INTENT(OUT) :: tsurf_new 95 95 REAL, DIMENSION(klon), INTENT(OUT) :: dflux_s, dflux_l … … 101 101 REAL, DIMENSION(klon) :: cal, beta, dif_grnd 102 102 REAL, DIMENSION(klon) :: lmt_bils_oce, lmt_foce, diff_sst 103 REAL, DIMENSION(klon) :: u0, v0 104 REAL, DIMENSION(klon) :: u1_lay, v1_lay 103 105 REAL :: calc_bils_oce, deltat 104 106 REAL, PARAMETER :: cyang=50.0 * 4.228e+06 ! capacite calorifique volumetrique de l'eau J/(m2 K) … … 113 115 agesno(:) = 0. 114 116 117 ! Suppose zero surface speed 118 u0(:)=0.0 119 v0(:)=0.0 120 u1_lay(:) = u1(:) - u0(:) 121 v1_lay(:) = v1(:) - v0(:) 122 115 123 CALL calcul_fluxs(knon, is_oce, dtime, & 116 tsurf_in, p1lay, cal, beta, tq_cdrag, ps, &124 tsurf_in, p1lay, cal, beta, cdragh, ps, & 117 125 precip_rain, precip_snow, snow, qsurf, & 118 126 radsol, dif_grnd, temp_air, spechum, u1_lay, v1_lay, & 119 petAcoef, peqAcoef, petBcoef, peqBcoef, &127 AcoefH, AcoefQ, BcoefH, BcoefQ, & 120 128 tsurf_new, evap, fluxlat, fluxsens, dflux_s, dflux_l) 129 130 ! - Flux calculation at first modele level for U and V 131 CALL calcul_flux_wind(knon, dtime, & 132 u0, v0, u1, v1, cdragm, & 133 AcoefU, AcoefV, BcoefU, BcoefV, & 134 p1lay, temp_air, & 135 flux_u1, flux_v1) 121 136 122 137 !****************************************************************************************
Note: See TracChangeset
for help on using the changeset viewer.