Changeset 973 for trunk/LMDZ.VENUS/libf/phyvenus
- Timestamp:
- May 27, 2013, 9:47:37 AM (12 years ago)
- Location:
- trunk/LMDZ.VENUS/libf/phyvenus
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.VENUS/libf/phyvenus/interface_surf.F90
r892 r973 45 45 & tsol_rad, tsurf_new, alb_new) 46 46 47 use write_field_phy 48 49 IMPLICIT none 47 50 48 51 ! Cette routine sert d'aiguillage entre l'atmosphere et la surface en general … … 141 144 142 145 if (check) write(*,*) 'Entree ', modname 143 146 144 147 ! Initialisations diverses 145 148 ! … … 149 152 150 153 ! ADAPTATION GCM POUR CP(T) 151 zcp(1:klon) = cpdet(tsurf(1:klon)) 154 do ii=1,klon 155 zcp(ii)=cpdet(tsurf(ii)) 156 enddo 152 157 153 158 IF (soil_model) THEN 154 159 CALL soil(dtime, knon, tsurf, tsoil,soilcap, soilflux) 155 160 cal(1:knon) = zcp(1:knon) / soilcap(1:knon) 161 ! for tests: 162 ! call writefield_phy('interfsurf_hq_zcp',zcp,1) 163 ! call writefield_phy('interfsurf_hq_cal',cal,1) 164 ! call writefield_phy('interfsurf_hq_soilcap',soilcap,1) 156 165 ! print*,"DIAGNOSTIC SOIL" 157 166 ! print*,"soilcap=",soilcap … … 186 195 & tsurf_new, fluxsens, dflux_s) 187 196 197 use write_field_phy 198 199 IMPLICIT none 200 188 201 ! Cette routine calcule les fluxs en h a l'interface et eventuellement 189 202 ! une temperature de surface (au cas ou ok_veget = false) … … 317 330 ENDDO 318 331 332 ! for tests: write output fields... 333 ! call writefield_phy('calcul_fluxs_d_ts',d_ts,1) 334 ! call writefield_phy('calcul_fluxs_fluxsens',fluxsens,1) 335 ! call writefield_phy('calcul_fluxs_dflux_s',dflux_s,1) 336 319 337 END SUBROUTINE calcul_fluxs 320 338 ! -
trunk/LMDZ.VENUS/libf/phyvenus/phyetat0.F90
r892 r973 152 152 PRINT*,'Rayonnement solaire au sol solsw:', xmin, xmax 153 153 154 ! Lecture rayonnement I Fau sol:154 ! Lecture rayonnement IR au sol: 155 155 156 156 CALL get_field("sollw",sollw,found) … … 166 166 xmax = MAX(sollw(i),xmax) 167 167 ENDDO 168 PRINT*,'Rayonnement I Fau sol sollw:', xmin, xmax168 PRINT*,'Rayonnement IR au sol sollw:', xmin, xmax 169 169 170 170 ! Lecture derive des flux: … … 183 183 ENDDO 184 184 PRINT*,'Derive des flux fder:', xmin, xmax 185 186 ! Lecture derive flux IR: 187 188 CALL get_field("dlw",dlw,found) 189 IF (.not.found) THEN 190 PRINT*, 'phyetat0: Le champ <dlw> est absent' 191 PRINT*, 'mis a zero' 192 dlw = 0. 193 ENDIF 194 xmin = 1.0E+20 195 xmax = -1.0E+20 196 DO i = 1, klon 197 xmin = MIN(dlw(i),xmin) 198 xmax = MAX(dlw(i),xmax) 199 ENDDO 200 PRINT*,'Derive flux IR dlw:', xmin, xmax 201 202 ! Lecture rayonnement IR vers le bas au sol: 203 204 CALL get_field("sollwdown",sollwdown,found) 205 IF (.not.found) THEN 206 PRINT*, 'phyetat0: Le champ <sollwdown> est absent' 207 PRINT*, 'mis a zero' 208 sollwdown = 0. 209 ENDIF 210 xmin = 1.0E+20 211 xmax = -1.0E+20 212 DO i = 1, klon 213 xmin = MIN(sollwdown(i),xmin) 214 xmax = MAX(sollwdown(i),xmax) 215 ENDDO 216 PRINT*,'Flux IR vers le bas au sol sollwdown:', xmin, xmax 185 217 186 218 ! Lecture du rayonnement net au sol: -
trunk/LMDZ.VENUS/libf/phyvenus/phyredem.F90
r892 r973 87 87 CALL put_field("sollw","Rayonnement IR a la surface",sollw) 88 88 CALL put_field("fder","Derive de flux",fder) 89 CALL put_field("dlw","Derivee flux IR",dlw) 90 CALL put_field("sollwdown","Flux IR vers le bas a la surface",sollwdown) 89 91 CALL put_field("RADS","Rayonnement net a la surface",radsol) 90 92 CALL put_field("ZMEA","zmea Orographie sous-maille",zmea) -
trunk/LMDZ.VENUS/libf/phyvenus/phys_state_var_mod.F90
r901 r973 117 117 ALLOCATE(zuthe(klon),zvthe(klon)) 118 118 ! 119 ALLOCATE(swnet(klon,klev ), lwnet(klon,klev))119 ALLOCATE(swnet(klon,klev+1), lwnet(klon,klev+1)) 120 120 ALLOCATE(heat(klon,klev), heat0(klon,klev)) 121 121 ALLOCATE(cool(klon,klev), cool0(klon,klev)) -
trunk/LMDZ.VENUS/libf/phyvenus/physiq.F
r953 r973 62 62 USE mod_phys_lmdz_para, only : is_parallel,jj_nb 63 63 USE phys_state_var_mod ! Variables sauvegardees de la physique 64 USE write_field_phy 64 65 USE iophy 65 66 IMPLICIT none … … 810 811 endif ! fin du VENUS TEST 811 812 813 ! tests: output tendencies 814 ! call writefield_phy('physiq_d_t_vdf',d_t_vdf,klev) 815 ! call writefield_phy('physiq_d_u_vdf',d_u_vdf,klev) 816 ! call writefield_phy('physiq_d_v_vdf',d_v_vdf,klev) 817 ! call writefield_phy('physiq_d_ts',d_ts,1) 818 812 819 c 813 820 c Appeler l'ajustement sec … … 869 876 870 877 endif 878 879 ! tests: output tendencies 880 ! call writefield_phy('physiq_d_t_ajs',d_t_ajs,klev) 881 ! call writefield_phy('physiq_d_u_ajs',d_u_ajs,klev) 882 ! call writefield_phy('physiq_d_v_ajs',d_v_ajs,klev) 871 883 c 872 884 IF (if_ebil.ge.2) THEN … … 932 944 ENDDO 933 945 ENDDO 946 947 ! tests: output tendencies 948 ! call writefield_phy('physiq_dtrad',dtrad,klev) 934 949 935 950 IF (if_ebil.ge.2) THEN … … 1014 1029 ENDIF ! fin de test sur ok_orodr 1015 1030 c 1031 ! tests: output tendencies 1032 ! call writefield_phy('physiq_d_t_oro',d_t_oro,klev) 1033 ! call writefield_phy('physiq_d_u_oro',d_u_oro,klev) 1034 ! call writefield_phy('physiq_d_v_oro',d_v_oro,klev) 1035 1016 1036 c ----------------------------OROLIFT 1017 1037 IF (ok_orolf) THEN … … 1082 1102 1083 1103 ENDIF ! fin de test sur ok_gw_nonoro 1104 1105 ! tests: output tendencies 1106 ! call writefield_phy('physiq_d_t_hin',d_t_hin,klev) 1107 ! call writefield_phy('physiq_d_u_hin',d_u_hin,klev) 1108 ! call writefield_phy('physiq_d_v_hin',d_v_hin,klev) 1084 1109 1085 1110 c==================================================================== -
trunk/LMDZ.VENUS/libf/phyvenus/radlwsw.F
r953 r973 40 40 use dimphy 41 41 USE comgeomphy 42 use write_field_phy 42 43 IMPLICIT none 43 44 #include "dimensions.h" … … 64 65 c 65 66 REAL zheat(klev), zcool(klev) 67 real temp(klev) 66 68 REAL ZFSNET(klev+1),ZFLNET(klev+1) 67 69 REAL ztopsw, ztoplw … … 128 130 129 131 c+++++++ BOUCLE SUR LA GRILLE +++++++++++++++++++++++++ 130 DO 99999j = 1, klon132 DO j = 1, klon 131 133 132 134 c====================================================================== … … 229 231 c LW call 230 232 c--------- 233 temp(1:klev)=t(j,1:klev) 231 234 CALL LW_venus_ve( 232 . PPB,t (j,:),psi,deltapsi,235 . PPB,temp,psi,deltapsi, 233 236 . zcool, 234 237 . ztoplw,zsollw, … … 239 242 c--------- 240 243 CALL SW_venus_dc(zrmu0, zfract, 241 S PPB,t (j,:),244 S PPB,temp, 242 245 S zheat, 243 246 S ztopsw,zsolsw,ZFSNET) … … 261 264 ENDDO 262 265 c 263 99999 CONTINUE 266 ENDDO ! of DO j = 1, klon 264 267 c+++++++ FIN BOUCLE SUR LA GRILLE +++++++++++++++++++++++++ 268 ! for tests: write output fields... 269 ! call writefield_phy('radlwsw_heat',heat,klev) 270 ! call writefield_phy('radlwsw_cool',cool,klev) 271 ! call writefield_phy('radlwsw_radsol',radsol,1) 272 ! call writefield_phy('radlwsw_topsw',topsw,1) 273 ! call writefield_phy('radlwsw_toplw',toplw,1) 274 ! call writefield_phy('radlwsw_solsw',solsw,1) 275 ! call writefield_phy('radlwsw_sollw',sollw,1) 276 ! call writefield_phy('radlwsw_sollwdown',sollwdown,1) 277 ! call writefield_phy('radlwsw_swnet',swnet,klev+1) 278 ! call writefield_phy('radlwsw_lwnet',lwnet,klev+1) 265 279 266 280 c tests
Note: See TracChangeset
for help on using the changeset viewer.