Changeset 518 for trunk/NEMO
- Timestamp:
- 2006-10-05T18:06:06+02:00 (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMO/C1D_SRC/icestp1d.F90
r440 r518 4 4 !! Sea-Ice model : 1D LIM Sea ice model time-stepping 5 5 !!====================================================================== 6 !! History : 9.0 ! 04-10 (C. Ethe) from icestp, 1D configuration 7 !!---------------------------------------------------------------------- 6 8 #if defined key_cfg_1d && defined key_ice_lim 7 9 !!---------------------------------------------------------------------- 8 !! 'key_cfg_1d' 1D Configuration 9 !! 'key_ice_lim' : Lim sea-ice model 10 !! 'key_cfg_1d' .AND. 1D Configuration 11 !! 'key_ice_lim' Lim sea-ice model 12 !!---------------------------------------------------------------------- 10 13 !!---------------------------------------------------------------------- 11 14 !! ice_stp_1d : sea-ice model time-stepping 12 15 !!---------------------------------------------------------------------- 13 USE dom_oce 14 USE oce ! dynamics and tracers variables15 USE in_out_manager 16 USE dom_oce ! ocean space and time domain 17 USE oce ! dynamics and tracers variables 18 USE in_out_manager ! I/O manager 16 19 USE ice_oce ! ice variables 17 20 USE flx_oce ! forcings variables 18 USE dom_ice 19 USE cpl_oce 20 USE blk_oce 21 USE daymod 21 USE dom_ice ! LIM sea-ice domain 22 USE cpl_oce ! coupled ocean-atmosphere variables 23 USE blk_oce ! bulk variables 24 USE daymod ! calendar 22 25 USE phycst ! Define parameters for the routines 23 USE taumod 24 USE ice 25 USE iceini 26 USE lbclnk 27 USE limdyn 28 USE limtrp 26 USE taumod ! surface stress forcing 27 USE ice ! ice variables 28 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 29 29 USE limthd 30 30 USE limflx 31 USE limdia32 31 USE limwri 33 32 USE limrst 34 33 35 USE ocesbc 36 USE flxmod 37 USE flxrnf 38 USE tradmp ! damping salinity trend39 USE dtatem 40 USE dtasal 41 USE ocfzpt 34 USE ocesbc ! thermohaline fluxes 35 USE flxmod ! thermohaline forcing 36 USE flxrnf ! runoffs forcing 37 USE tradmp ! damping salinity trend 38 USE dtatem ! ocean temperature data 39 USE dtasal ! ocean salinity data 40 USE ocfzpt ! surface ocean freezing point 42 41 USE prtctl ! Print control 43 42 … … 46 45 PRIVATE 47 46 48 !! * Routine accessibility 49 PUBLIC ice_stp_1d ! called by step.F90 47 PUBLIC ice_stp_1d ! called by step.F90 50 48 51 49 !! * Substitutions 52 50 # include "domzgr_substitute.h90" 53 51 # include "vectopt_loop_substitute.h90" 54 !!----------------------------------------------------- 55 !! LIM 2.0 , UCL-LOCEAN-IPSL (200 5)52 !!---------------------------------------------------------------------- 53 !! LIM 2.0 , UCL-LOCEAN-IPSL (2006) 56 54 !! $Header$ 57 !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt58 !!----------------------------------------------------- 55 !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 56 !!---------------------------------------------------------------------- 59 57 60 58 CONTAINS … … 73 71 !! - save the outputs 74 72 !! - save the outputs for restart when necessary 75 !! 76 !! History : 77 !! 1.0 ! 99-11 (M. Imbard) Original code 78 !! ! 01-03 (D. Ludicone, E. Durand, G. Madec) free surf. 79 !! 2.0 ! 02-09 (G. Madec, C. Ethe) F90: Free form and module 80 !! 9.0 ! 04-10 (C. Ethe) 1D configuration 81 !!---------------------------------------------------------------------- 82 !! * Arguments 83 INTEGER, INTENT( in ) :: kt ! ocean time-step index 84 85 !! * Local declarations 86 INTEGER :: ji, jj ! dummy loop indices 87 88 REAL(wp) , DIMENSION(jpi,jpj) :: & 89 zsss_io, zsss2_io, zsss3_io ! tempory workspaces 90 REAL(wp) :: ztair2 73 !!---------------------------------------------------------------------- 74 INTEGER, INTENT(in) :: kt ! ocean time-step index 75 76 INTEGER :: ji, jj ! dummy loop indices 77 REAL(wp) :: ztair2 ! temporary scalar 78 REAL(wp), DIMENSION(jpi,jpj) :: zsss_io, zsss2_io, zsss3_io ! tempory workspaces 91 79 !!---------------------------------------------------------------------- 92 80 … … 113 101 v_io (:,:) = v_io (:,:) + vn(:,:,1) 114 102 115 116 103 117 104 IF( MOD( kt-1, nfice ) == 0 ) THEN … … 150 137 CALL prt_ctl(tab2d_1=frld ,clinfo1=' frld 1 : ', tab2d_2=sist , clinfo2=' sist : ') 151 138 ENDIF 152 153 ! Ice model call154 numit = numit + nfice ! Friction velocity155 139 156 140 DO jj = 1, jpj … … 163 147 END DO 164 148 149 ! !-----------------------! 150 CALL lim_rst_opn( kt ) ! Open Ice restart file ! 151 ! !-----------------------! 152 165 153 ! !--------------------! 166 CALL lim_thd 154 CALL lim_thd( kt ) ! Ice thermodynamics ! 167 155 ! !--------------------! 168 156 IF(ln_ctl) THEN … … 186 174 ENDIF 187 175 ! !-------------! 188 CALL lim_wri 176 CALL lim_wri( kt ) ! Ice outputs ! 189 177 ! !-------------! 190 178 191 IF( MOD( numit, nstock ) == 0 .OR. numit == nlast ) THEN 192 ! !------------------! 193 CALL lim_rst_write( numit ) ! Ice restart file ! 194 ! !------------------! 195 ENDIF 179 ! !------------------------! 180 IF( lrst_ice ) CALL lim_rst_write( kt ) ! Write Ice restart file ! 181 ! !------------------------! 196 182 197 183 ! Re-initialization of forcings … … 222 208 !! ** Purpose : - Ocean surface boundary conditions with LIM sea-ice 223 209 !! model in forced mode using bulk formulea 224 !! 225 !! History : 226 !! 1.0 ! 99-11 (M. Imbard) Original code 227 !! ! 01-03 (D. Ludicone, E. Durand, G. Madec) free surf. 228 !! 2.0 ! 02-09 (G. Madec, C. Ethe) F90: Free form and module 229 !! 9.0 ! 05-11 (V. Garnier) Surface pressure gradient organization 230 !!---------------------------------------------------------------------- 231 !! * arguments 232 INTEGER, INTENT( in ) :: kt ! ocean time step 233 234 !! * Local declarations 210 !!---------------------------------------------------------------------- 211 INTEGER, INTENT(in) :: kt ! ocean time step 212 ! 235 213 INTEGER :: ji, jj ! dummy loop indices 236 214 REAL(wp) :: ztxy … … 297 275 u_io (:,:) = 0.e0 298 276 v_io (:,:) = 0.e0 299 300 277 ! 301 278 END SUBROUTINE oce_sbc_1d 302 279 … … 311 288 !! ** Purpose : Computation of internal and evaporation damping terms 312 289 !! for ocean surface boundary conditions 313 !! 314 !! History : 315 !! 9.0 ! 04-01 (G. Madec, C. Ethe) Original code 316 !! 9.0 ! 05-11 (V. Garnier) Surface pressure gradient organization 317 !!---------------------------------------------------------------------- 318 !! * Local declarations 319 INTEGER :: ji, jj ! dummy loop indices 290 !!---------------------------------------------------------------------- 291 INTEGER :: ji, jj ! dummy loop indices 320 292 REAL(wp) :: zerp, zsrp 321 293 #if ! defined key_dynspg_rl … … 330 302 !!---------------------------------------------------------------------- 331 303 332 333 304 ! sea ice indicator (1 or 0) 334 305 DO jj = 1, jpj … … 417 388 END SUBROUTINE oce_sbc_1d 418 389 #endif 390 419 391 !!====================================================================== 420 392 END MODULE icestp1d
Note: See TracChangeset
for help on using the changeset viewer.