- Timestamp:
- 2011-03-15T16:27:46+01:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/OFF_SRC/dtadyn.F90
r2648 r2690 296 296 END SUBROUTINE dta_dyn 297 297 298 298 299 INTEGER FUNCTION dta_dyn_alloc() 299 300 !!--------------------------------------------------------------------- … … 302 303 303 304 ALLOCATE( tdta (jpi,jpj,jpk,2), sdta (jpi,jpj,jpk,2), & 304 &udta (jpi,jpj,jpk,2), vdta (jpi,jpj,jpk,2), &305 &wdta (jpi,jpj,jpk,2), avtdta (jpi,jpj,jpk,2), &305 & udta (jpi,jpj,jpk,2), vdta (jpi,jpj,jpk,2), & 306 & wdta (jpi,jpj,jpk,2), avtdta (jpi,jpj,jpk,2), & 306 307 #if defined key_ldfslp 307 &uslpdta (jpi,jpj,jpk,2), vslpdta (jpi,jpj,jpk,2), &308 &wslpidta(jpi,jpj,jpk,2), wslpjdta(jpi,jpj,jpk,2), &308 & uslpdta (jpi,jpj,jpk,2), vslpdta (jpi,jpj,jpk,2), & 309 & wslpidta(jpi,jpj,jpk,2), wslpjdta(jpi,jpj,jpk,2), & 309 310 #endif 310 311 #if defined key_degrad 311 &ahtudta (jpi,jpj,jpk,2), ahtvdta (jpi,jpj,jpk,2), &312 &ahtwdta (jpi,jpj,jpk,2), &312 & ahtudta (jpi,jpj,jpk,2), ahtvdta (jpi,jpj,jpk,2), & 313 & ahtwdta (jpi,jpj,jpk,2), & 313 314 # if defined key_traldf_eiv 314 &aeiudta (jpi,jpj,jpk,2), aeivdta (jpi,jpj,jpk,2), &315 &aeiwdta (jpi,jpj,jpk,2), &315 & aeiudta (jpi,jpj,jpk,2), aeivdta (jpi,jpj,jpk,2), & 316 & aeiwdta (jpi,jpj,jpk,2), & 316 317 # endif 317 318 #endif 318 319 #if ! defined key_degrad && defined key_traldf_c2d && defined key_traldf_eiv 319 & aeiwdta (jpi,jpj, 2), & 320 #endif 321 322 & hmlddta (jpi,jpj, 2), wspddta (jpi,jpj, 2), & 323 & frlddta (jpi,jpj, 2), qsrdta (jpi,jpj, 2), & 324 & empdta (jpi,jpj, 2), STAT=dta_dyn_alloc ) 325 326 IF( dta_dyn_alloc /= 0 ) CALL ctl_warn('dta_dyn_alloc: failed to allocate facvol array.') 327 320 & aeiwdta (jpi,jpj, 2), & 321 #endif 322 & hmlddta (jpi,jpj, 2), wspddta (jpi,jpj, 2), & 323 & frlddta (jpi,jpj, 2), qsrdta (jpi,jpj, 2), & 324 & empdta (jpi,jpj, 2), STAT=dta_dyn_alloc ) 325 ! 326 IF( dta_dyn_alloc /= 0 ) CALL ctl_warn('dta_dyn_alloc: failed to allocate facvol array') 327 ! 328 328 END FUNCTION dta_dyn_alloc 329 329 330 330 331 SUBROUTINE dynrea( kt, kenr ) … … 353 354 INTEGER :: jkenr 354 355 !!---------------------------------------------------------------------- 355 356 ! 0. Memory allocation 356 ! 357 357 IF( wrk_in_use(3, 1,2,3,4,5,6,7,8,9,10,11,12,13) .OR. & 358 358 wrk_in_use(2, 1,2,3,4,5,6,7,8,9,10) ) THEN 359 CALL ctl_stop('domrea/dta_dyn: requested workspace arrays unavailable') ;RETURN360 END 359 CALL ctl_stop('domrea/dta_dyn: requested workspace arrays unavailable') ; RETURN 360 ENDIF 361 361 362 362 ! cas d'un fichier non periodique : on utilise deux fois le premier et … … 488 488 IF( wrk_not_released(3, 1,2,3,4,5,6,7,8,9,10,11,12,13) .OR. & 489 489 wrk_not_released(2, 1,2,3,4,5,6,7,8,9,10) ) THEN 490 CALL ctl_stop('domrea/dta_dyn: failed to release workspace arrays .')490 CALL ctl_stop('domrea/dta_dyn: failed to release workspace arrays') 491 491 END IF 492 492 ! … … 503 503 !!---------------------------------------------------------------------- 504 504 REAL(wp) :: znspyr !: number of time step per year 505 INTEGER :: ierr 506 !! 505 ! 507 506 NAMELIST/namdyn/ ndtadyn, ndtatot, nsptint, lperdyn, & 508 & cfile_grid_T, cfile_grid_U, cfile_grid_V, cfile_grid_W 509 !!---------------------------------------------------------------------- 510 511 ierr = dta_dyn_alloc() 512 IF( ierr /= 0 ) CALL ctl_stop( 'STOP', 'dta_dyn_alloc : unable to allocate standard ocean arrays' ) 513 514 ! Define the dynamical input parameters 515 ! ====================================== 516 507 & cfile_grid_T, cfile_grid_U, cfile_grid_V, cfile_grid_W 508 !!---------------------------------------------------------------------- 509 ! 510 IF( dta_dyn_alloc() /= 0 ) CALL ctl_stop( 'STOP', 'dta_dyn_alloc: unable to allocate standard ocean arrays' ) 511 ! 517 512 REWIND( numnam ) ! Read Namelist namdyn : Lateral physics on tracers 518 513 READ ( numnam, namdyn ) 519 514 ! 520 515 IF(lwp) THEN ! control print 521 516 WRITE(numout,*) … … 537 532 ! 538 533 znspyr = nyear_len(1) * rday / rdt 539 rnspdta = znspyr / FLOAT( ndtadyn)534 rnspdta = znspyr / REAL( ndtadyn, wp ) 540 535 rnspdta2 = rnspdta * 0.5 541 536 !
Note: See TracChangeset
for help on using the changeset viewer.