- Timestamp:
- 2016-06-24T09:50:27+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/NERC/dev_r3874_FASTNEt/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90
r3769 r6736 46 46 USE mppini ! shared/distributed memory setting (mpp_init routine) 47 47 USE domain ! domain initialization (dom_init routine) 48 #if defined key_nemocice_decomp49 USE ice_domain_size, only: nx_global, ny_global50 #endif51 USE tideini ! tidal components initialization (tide_ini routine)52 48 USE obcini ! open boundary cond. initialization (obc_ini routine) 53 49 USE bdyini ! open boundary cond. initialization (bdy_init routine) 54 50 USE bdydta ! open boundary cond. initialization (bdy_dta_init routine) 55 USE bdytides ! open boundary cond. initialization ( bdytide_init routine)51 USE bdytides ! open boundary cond. initialization (tide_init routine) 56 52 USE istate ! initial state setting (istate_init routine) 57 53 USE ldfdyn ! lateral viscosity setting (ldfdyn_init routine) … … 60 56 USE phycst ! physical constant (par_cst routine) 61 57 USE trdmod ! momentum/tracers trends (trd_mod_init routine) 62 USE asminc ! assimilation increments63 58 USE asmbkg ! writing out state trajectory 64 59 USE diaptr ! poleward transports (dia_ptr_init routine) … … 67 62 USE lib_fortran ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined) 68 63 USE step ! NEMO time-stepping (stp routine) 69 USE icbini ! handle bergs, initialisation70 USE icbstp ! handle bergs, calving, themodynamics and transport71 64 #if defined key_oasis3 72 65 USE cpl_oasis3 ! OASIS3 coupling … … 81 74 USE lib_mpp ! distributed memory computing 82 75 #if defined key_iomput 83 USE xios84 #endif 85 USE sbctide, ONLY: lk_tide76 USE mod_ioclient 77 #endif 78 USE tamtrj ! Output trajectory, needed for TAM 86 79 87 80 IMPLICIT NONE … … 126 119 ! !-----------------------! 127 120 #if defined key_agrif 128 CALL Agrif_Declare_Var_dom ! AGRIF: set the meshes for DOM 129 CALL Agrif_Declare_Var ! " " " " " DYN/TRA 121 CALL Agrif_Declare_Var ! AGRIF: set the meshes 130 122 # if defined key_top 131 CALL Agrif_Declare_Var_top ! " " " " " TOP 132 # endif 133 # if defined key_lim2 134 CALL Agrif_Declare_Var_lim2 ! " " " " " LIM 123 CALL Agrif_Declare_Var_Top ! AGRIF: set the meshes 135 124 # endif 136 125 #endif … … 171 160 #endif 172 161 173 IF( lk_diaobs ) CALL dia_obs_wri 174 ! 175 IF( ln_icebergs ) CALL icb_end( nitend ) 162 IF( lk_diaobs ) CALL dia_obs_wri 176 163 177 164 ! !------------------------! … … 194 181 ! 195 182 CALL nemo_closefile 196 #if defined key_iomput 197 CALL xios_finalize ! end mpp communications with xios 198 # if defined key_oasis3 || defined key_oasis4 183 #if defined key_oasis3 || defined key_oasis4 199 184 CALL cpl_prism_finalize ! end coupling and mpp communications with OASIS 200 # endif201 185 #else 202 # if defined key_oasis3 || defined key_oasis4203 CALL cpl_prism_finalize ! end coupling and mpp communications with OASIS204 # else205 186 IF( lk_mpp ) CALL mppstop ! end mpp communications 206 # endif207 187 #endif 208 188 ! … … 238 218 IF( Agrif_Root() ) THEN 239 219 # if defined key_oasis3 || defined key_oasis4 240 CALL cpl_prism_init( ilocal_comm ) ! nemo local communicator given by oasis 241 CALL xios_initialize( "oceanx",local_comm=ilocal_comm ) 242 # else 243 CALL xios_initialize( "nemo",return_comm=ilocal_comm ) 220 CALL cpl_prism_init( ilocal_comm ) ! nemo local communicator given by oasis 244 221 # endif 222 CALL init_ioclient( ilocal_comm ) ! exchange io_server nemo local communicator with the io_server 245 223 ENDIF 246 224 narea = mynode( cltxt, numnam, nstop, ilocal_comm ) ! Nodes selection … … 276 254 ! than variables 277 255 IF( Agrif_Root() ) THEN 256 jpi = ( jpiglo-2*jpreci + (jpni-1) ) / jpni + 2*jpreci ! first dim. 278 257 #if defined key_nemocice_decomp 279 jpi = ( nx_global+2-2*jpreci + (jpni-1) ) / jpni + 2*jpreci ! first dim. 280 jpj = ( ny_global+2-2*jprecj + (jpnj-1) ) / jpnj + 2*jprecj ! second dim. 258 jpj = ( jpjglo+1-2*jprecj + (jpnj-1) ) / jpnj + 2*jprecj ! second dim. 281 259 #else 282 jpi = ( jpiglo-2*jpreci + (jpni-1) ) / jpni + 2*jpreci ! first dim.283 260 jpj = ( jpjglo-2*jprecj + (jpnj-1) ) / jpnj + 2*jprecj ! second dim. 284 261 #endif … … 335 312 IF( ln_ctl ) CALL prt_ctl_init ! Print control 336 313 314 CALL sbc_init ! Forcings : surface module 337 315 IF( lk_obc ) CALL obc_init ! Open boundaries 338 339 CALL istate_init ! ocean initial state (Dynamics and tracers)340 341 IF( lk_tide ) CALL tide_init( nit000 ) ! Initialisation of the tidal harmonics342 343 316 IF( lk_bdy ) CALL bdy_init ! Open boundaries initialisation 344 317 IF( lk_bdy ) CALL bdy_dta_init ! Open boundaries initialisation of external data arrays 345 IF( lk_bdy ) CALL bdytide_init ! Open boundaries initialisation of tidal harmonic forcing 346 318 IF( lk_bdy ) CALL tide_init ! Open boundaries initialisation of tidal harmonic forcing 319 320 CALL flush(numout) 347 321 CALL dyn_nept_init ! simplified form of Neptune effect 322 CALL flush(numout) 323 324 CALL istate_init ! ocean initial state (Dynamics and tracers) 348 325 349 326 ! ! Ocean physics 350 CALL sbc_init ! Forcings : surface module327 351 328 ! ! Vertical physics 352 329 CALL zdf_init ! namelist read … … 383 360 ! ! Misc. options 384 361 IF( nn_cla == 1 ) CALL cla_init ! Cross Land Advection 385 CALL icb_init( rdt, nit000) ! initialise icebergs instance 386 362 387 363 #if defined key_top 388 364 ! ! Passive tracers … … 391 367 ! ! Diagnostics 392 368 IF( lk_floats ) CALL flo_init ! drifting Floats 369 CALL iom_init ! iom_put initialization 393 370 IF( lk_diaar5 ) CALL dia_ar5_init ! ar5 diag 394 371 CALL dia_ptr_init ! Poleward TRansports initialization … … 403 380 IF( lk_asminc ) CALL asm_inc_init ! Initialize assimilation increments 404 381 IF(lwp) WRITE(numout,*) 'Euler time step switch is ', neuler 382 CALL tam_trj_init ! Trajectory handling 405 383 ! 406 384 END SUBROUTINE nemo_init … … 539 517 USE ldftra_oce, ONLY: ldftra_oce_alloc 540 518 USE trc_oce , ONLY: trc_oce_alloc 541 #if defined key_diadct542 USE diadct , ONLY: diadct_alloc543 #endif544 519 ! 545 520 INTEGER :: ierr … … 555 530 ierr = ierr + lib_mpp_alloc (numout) ! mpp exchanges 556 531 ierr = ierr + trc_oce_alloc () ! shared TRC / TRA arrays 557 !558 #if defined key_diadct559 ierr = ierr + diadct_alloc () !560 #endif561 532 ! 562 533 IF( lk_mpp ) CALL mpp_sum( ierr )
Note: See TracChangeset
for help on using the changeset viewer.