- Timestamp:
- 2014-12-01T11:11:43+01:00 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2014/dev_CNRS_CICE/NEMOGCM/NEMO/OPA_SRC/DOM/istate.F90
r4370 r4933 34 34 USE dtatsd ! data temperature and salinity (dta_tsd routine) 35 35 USE dtauvd ! data: U & V current (dta_uvd routine) 36 USE in_out_manager ! I/O manager37 USE iom ! I/O library38 36 USE zpshde ! partial step: hor. derivative (zps_hde routine) 39 37 USE eosbn2 ! equation of state (eos bn2 routine) … … 42 40 USE dynspg_flt ! filtered free surface 43 41 USE sol_oce ! ocean solver variables 42 ! 43 USE in_out_manager ! I/O manager 44 USE iom ! I/O library 44 45 USE lib_mpp ! MPP library 45 46 USE restart ! restart … … 56 57 # include "vectopt_loop_substitute.h90" 57 58 !!---------------------------------------------------------------------- 58 !! NEMO/OPA 3. 3 , NEMO Consortium (2010)59 !! NEMO/OPA 3.7 , NEMO Consortium (2014) 59 60 !! $Id$ 60 61 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) … … 73 74 !!---------------------------------------------------------------------- 74 75 ! 75 IF( nn_timing == 1 ) CALL timing_start('istate_init')76 IF( nn_timing == 1 ) CALL timing_start('istate_init') 76 77 ! 77 78 … … 83 84 IF( lk_c1d ) CALL dta_uvd_init ! Initialization of U & V input data 84 85 85 rhd (:,:,: ) = 0.e0 86 rhop (:,:,: ) = 0.e0 87 rn2 (:,:,: ) = 0.e0 88 tsa (:,:,:,:) = 0.e0 86 rhd (:,:,: ) = 0._wp 87 rhop (:,:,: ) = 0._wp 88 rn2 (:,:,: ) = 0._wp 89 tsa (:,:,:,:) = 0._wp 90 rab_b(:,:,:,:) = 0._wp 91 rab_n(:,:,:,:) = 0._wp 89 92 90 93 IF( ln_rstart ) THEN ! Restart from a file … … 162 165 ! 163 166 DO jk = 1, jpkm1 164 #if defined key_vectopt_loop165 DO jj = 1, 1 !Vector opt. => forced unrolling166 DO ji = 1, jpij167 #else168 167 DO jj = 1, jpj 169 168 DO ji = 1, jpi 170 #endif171 169 un_b(ji,jj) = un_b(ji,jj) + fse3u_n(ji,jj,jk) * un(ji,jj,jk) * umask(ji,jj,jk) 172 170 vn_b(ji,jj) = vn_b(ji,jj) + fse3v_n(ji,jj,jk) * vn(ji,jj,jk) * vmask(ji,jj,jk) … … 185 183 ! 186 184 ! 187 IF( nn_timing == 1 ) CALL timing_stop('istate_init')185 IF( nn_timing == 1 ) CALL timing_stop('istate_init') 188 186 ! 189 187 END SUBROUTINE istate_init 188 190 189 191 190 SUBROUTINE istate_t_s … … 219 218 END SUBROUTINE istate_t_s 220 219 220 221 221 SUBROUTINE istate_eel 222 222 !!---------------------------------------------------------------------- … … 233 233 USE divcur ! hor. divergence & rel. vorticity (div_cur routine) 234 234 USE iom 235 235 ! 236 236 INTEGER :: inum ! temporary logical unit 237 237 INTEGER :: ji, jj, jk ! dummy loop indices … … 244 244 REAL(wp), DIMENSION(jpiglo,jpjglo) :: zssh ! initial ssh over the global domain 245 245 !!---------------------------------------------------------------------- 246 246 ! 247 247 SELECT CASE ( jp_cfg ) 248 248 ! ! ==================== … … 375 375 INTEGER, PARAMETER :: ntsinit = 0 ! (0/1) (analytical/input data files) T&S initialization 376 376 !!---------------------------------------------------------------------- 377 377 ! 378 378 SELECT CASE ( ntsinit) 379 379 ! 380 380 CASE ( 0 ) ! analytical T/S profil deduced from LEVITUS 381 381 IF(lwp) WRITE(numout,*) 382 382 IF(lwp) WRITE(numout,*) 'istate_gyre : initial analytical T and S profil deduced from LEVITUS ' 383 383 IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 384 384 ! 385 385 DO jk = 1, jpk 386 386 DO jj = 1, jpj … … 407 407 END DO 408 408 END DO 409 409 ! 410 410 CASE ( 1 ) ! T/S data fields read in dta_tem.nc/data_sal.nc files 411 411 IF(lwp) WRITE(numout,*) … … 431 431 tsn(:,:,:,jp_sal) = tsn(:,:,:,jp_sal) * tmask(:,:,:) 432 432 tsb(:,:,:,jp_sal) = tsn(:,:,:,jp_sal) 433 433 ! 434 434 END SELECT 435 435 ! 436 436 IF(lwp) THEN 437 437 WRITE(numout,*) … … 440 440 WRITE(numout, "(10x, i4, 3f10.2)" ) ( jk, gdept_1d(jk), tsn(2,2,jk,jp_tem), tsn(2,2,jk,jp_sal), jk = 1, jpk ) 441 441 ENDIF 442 442 ! 443 443 END SUBROUTINE istate_gyre 444 444 445 445 446 SUBROUTINE istate_uvg … … 457 458 USE divcur ! hor. divergence & rel. vorticity (div_cur routine) 458 459 USE lbclnk ! ocean lateral boundary condition (or mpp link) 459 460 ! 460 461 INTEGER :: ji, jj, jk ! dummy loop indices 461 462 INTEGER :: indic ! ??? … … 567 568 !!===================================================================== 568 569 END MODULE istate 569
Note: See TracChangeset
for help on using the changeset viewer.