Changeset 2915 for LMDZ5/trunk
- Timestamp:
- Jun 16, 2017, 6:03:16 PM (7 years ago)
- Location:
- LMDZ5/trunk/libf/phylmd
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/phylmd/comsoil.h
r1907 r2915 3 3 ! 4 4 5 common /comsoil/inertie_sol,inertie_sno,inertie_ice 6 real inertie_sol,inertie_sno,inertie_ice 5 common /comsoil/inertie_sol,inertie_sno,inertie_sic,inertie_lic, & 6 & iflag_sic 7 real inertie_sol,inertie_sno,inertie_sic,inertie_lic 8 integer iflag_sic 7 9 !$OMP THREADPRIVATE(/comsoil/) -
LMDZ5/trunk/libf/phylmd/conf_phys_m.F90
r2852 r2915 173 173 REAL,SAVE :: exposant_glace_omp 174 174 REAL,SAVE :: rei_min_omp, rei_max_omp 175 REAL,SAVE :: inertie_sol_omp,inertie_sno_omp,inertie_ice_omp 175 INTEGER,SAVE :: iflag_sic_omp 176 REAL,SAVE :: inertie_sol_omp,inertie_sno_omp,inertie_sic_omp 177 REAL,SAVE :: inertie_lic_omp 176 178 REAL,SAVE :: qsol0_omp 177 179 REAL,SAVE :: evap0_omp … … 1133 1135 !----------------------------------------------------------------------- 1134 1136 ! 1135 !Config Key = inertie_ice 1137 !Config Key = iflag_sic 1138 !Config Desc = 1139 !Config Def = 0 1140 !Config Help = 1141 ! 1142 iflag_sic_omp = 0 1143 CALL getin('iflag_sic',iflag_sic_omp) 1144 ! 1145 !Config Key = inertie_sic 1136 1146 !Config Desc = 1137 1147 !Config Def = 2000. 1138 1148 !Config Help = 1139 1149 ! 1140 inertie_ice_omp = 2000. 1141 CALL getin('inertie_ice',inertie_ice_omp) 1150 inertie_sic_omp = 2000. 1151 CALL getin('inertie_sic',inertie_sic_omp) 1152 ! 1153 !Config Key = inertie_lic 1154 !Config Desc = 1155 !Config Def = 2000. 1156 !Config Help = 1157 ! 1158 inertie_lic_omp = 2000. 1159 CALL getin('inertie_lic',inertie_lic_omp) 1142 1160 ! 1143 1161 !Config Key = inertie_sno … … 2132 2150 evap0 = evap0_omp 2133 2151 albsno0 = albsno0_omp 2152 iflag_sic = iflag_sic_omp 2134 2153 inertie_sol = inertie_sol_omp 2135 inertie_ice = inertie_ice_omp 2154 inertie_sic = inertie_sic_omp 2155 inertie_lic = inertie_lic_omp 2136 2156 inertie_sno = inertie_sno_omp 2137 2157 rad_froid = rad_froid_omp … … 2545 2565 write(lunout,*)' evap0 = ', evap0 2546 2566 write(lunout,*)' albsno0 = ', albsno0 2567 write(lunout,*)' iflag_sic = ', iflag_sic 2547 2568 write(lunout,*)' inertie_sol = ', inertie_sol 2548 write(lunout,*)' inertie_ice = ', inertie_ice 2569 write(lunout,*)' inertie_sic = ', inertie_sic 2570 write(lunout,*)' inertie_lic = ', inertie_lic 2549 2571 write(lunout,*)' inertie_sno = ', inertie_sno 2550 2572 write(lunout,*)' f_cdrag_ter = ',f_cdrag_ter -
LMDZ5/trunk/libf/phylmd/sisvat/sisvat.F
r1990 r2915 7070 7070 7071 7071 DO ig = 1,knonv 7072 ztherm_i(ig) = inertie_ ice7072 ztherm_i(ig) = inertie_lic 7073 7073 IF (isnoSV(ig) > 0) ztherm_i(ig) = inertie_sno 7074 7074 ENDDO -
LMDZ5/trunk/libf/phylmd/soil.F90
r2311 r2915 152 152 !----------------------------------------------------------------------- 153 153 ! Calcul de l'inertie thermique a partir de la variable rnat. 154 ! on initialise a inertie_ icememe au-dessus d'un point de mer au cas154 ! on initialise a inertie_sic meme au-dessus d'un point de mer au cas 155 155 ! ou le point de mer devienne point de glace au pas suivant 156 156 ! on corrige si on a un point de terre avec ou sans glace 157 157 ! 158 !----------------------------------------------------------------------- 158 ! iophys can be used to write the ztherm_i variable in a phys.nc file 159 ! and check the results; to do so, add "CALL iophys_ini" in physiq_mod 160 ! and add knindex to the list of inputs in all the calls to soil.F90 161 ! (and to soil.F90 itself !) 162 !----------------------------------------------------------------------- 163 159 164 IF (indice == is_sic) THEN 160 165 DO ig = 1, knon 161 ztherm_i(ig) = inertie_ice 166 ztherm_i(ig) = inertie_sic 167 ENDDO 168 IF (iflag_sic == 0) THEN 169 DO ig = 1, knon 170 IF (snow(ig) > 0.0) ztherm_i(ig) = inertie_sno 171 ENDDO 172 ! Otherwise sea-ice keeps the same inertia, even when covered by snow 173 ENDIF 174 ! CALL iophys_ecrit_index('ztherm_sic', 1, 'ztherm_sic', 'USI', & 175 ! knon, knindex, ztherm_i) 176 ELSE IF (indice == is_lic) THEN 177 DO ig = 1, knon 178 ztherm_i(ig) = inertie_lic 162 179 IF (snow(ig) > 0.0) ztherm_i(ig) = inertie_sno 163 180 ENDDO 164 ELSE IF (indice == is_lic) THEN 165 DO ig = 1, knon 166 ztherm_i(ig) = inertie_ice 167 IF (snow(ig) > 0.0) ztherm_i(ig) = inertie_sno 168 ENDDO 181 ! CALL iophys_ecrit_index('ztherm_lic', 1, 'ztherm_lic', 'USI', & 182 ! knon, knindex, ztherm_i) 169 183 ELSE IF (indice == is_ter) THEN 170 184 DO ig = 1, knon … … 172 186 IF (snow(ig) > 0.0) ztherm_i(ig) = inertie_sno 173 187 ENDDO 188 ! CALL iophys_ecrit_index('ztherm_ter', 1, 'ztherm_ter', 'USI', & 189 ! knon, knindex, ztherm_i) 174 190 ELSE IF (indice == is_oce) THEN 175 191 DO ig = 1, knon 176 ztherm_i(ig) = inertie_ice 177 ENDDO 192 ! This is just in case, but SST should be used by the model anyway 193 ztherm_i(ig) = inertie_sic 194 ENDDO 195 ! CALL iophys_ecrit_index('ztherm_oce', 1, 'ztherm_oce', 'USI', & 196 ! knon, knindex, ztherm_i) 178 197 ELSE 179 198 WRITE(lunout,*) "valeur d indice non prevue", indice
Note: See TracChangeset
for help on using the changeset viewer.