Changeset 3294 for trunk/NEMOGCM/NEMO/LIM_SRC_3/limwri.F90
- Timestamp:
- 2012-01-28T17:44:18+01:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/LIM_SRC_3/limwri.F90
r2777 r3294 23 23 USE lbclnk 24 24 USE lib_mpp ! MPP library 25 USE wrk_nemo ! work arrays 25 26 USE par_ice 26 27 … … 48 49 REAL(wp) :: epsi16 = 1e-16_wp 49 50 REAL(wp) :: zzero = 0._wp 50 REAL(wp) :: zone = 1._wp 51 52 REAL(wp), SAVE, ALLOCATABLE, DIMENSION(:,:,:) :: zcmo, zcmoa ! additional fields 53 51 REAL(wp) :: zone = 1._wp 54 52 !!---------------------------------------------------------------------- 55 53 !! NEMO/LIM3 4.0 , UCL - NEMO Consortium (2011) … … 73 71 !! modif : 03/06/98 74 72 !!------------------------------------------------------------------- 75 USE wrk_nemo, ONLY: wrk_not_released, wrk_in_use76 USE wrk_nemo, ONLY: zfield => wrk_2d_1 ! 2D workspace77 USE wrk_nemo, ONLY: wrk_3d_3, wrk_3d_4, wrk_3d_5 ! 3D workspace78 !79 73 INTEGER, INTENT(in) :: kindic ! if kindic < 0 there has been an error somewhere 80 74 ! … … 83 77 REAL(wp),DIMENSION(1) :: zdept 84 78 REAL(wp) :: zsto, zjulian, zout, zindh, zinda, zindb 79 REAL(wp), POINTER, DIMENSION(:,:,:) :: zcmo, zcmoa 80 REAL(wp), POINTER, DIMENSION(:,: ) :: zfield 85 81 REAL(wp), POINTER, DIMENSION(:,:,:) :: zmaskitd, zoi, zei 86 82 … … 93 89 !!------------------------------------------------------------------- 94 90 95 IF( wrk_in_use(2, 1) .OR. wrk_in_use(3, 3,4,5) ) THEN96 CALL ctl_stop( 'lim_wri : requested workspace arrays unavailable' ) ; RETURN97 ENDIF91 CALL wrk_alloc( jpi, jpj, zfield ) 92 CALL wrk_alloc( jpi, jpj, jpnoumax, zcmo, zcmoa ) 93 CALL wrk_alloc( jpi, jpj, jpl, zmaskitd, zoi, zei ) 98 94 99 95 ipl = jpl 100 96 101 zmaskitd => wrk_3d_3(:,:,1:jpl)102 zoi => wrk_3d_4(:,:,1:jpl)103 zei => wrk_3d_5(:,:,1:jpl)104 105 106 97 IF( numit == nstart ) THEN 107 98 108 ALLOCATE( ndex51(jpij), ndexitd(jpij*jpl), zcmo(jpi,jpj,jpnoumax), zcmoa(jpi,jpj,jpnoumax),STAT=ierr )99 ALLOCATE( ndex51(jpij), ndexitd(jpij*jpl), STAT=ierr ) 109 100 IF( lk_mpp ) CALL mpp_sum ( ierr ) 110 101 IF( ierr /= 0 ) THEN … … 354 345 ENDIF 355 346 356 IF( wrk_not_released(2, 1) .OR. wrk_not_released(3, 3,4,5) ) & 357 CALL ctl_stop( 'lim_wri: failed to release workspace arrays' ) 347 CALL wrk_dealloc( jpi, jpj, zfield ) 348 CALL wrk_dealloc( jpi, jpj, jpnoumax, zcmo, zcmoa ) 349 CALL wrk_dealloc( jpi, jpj, jpl, zmaskitd, zoi, zei ) 358 350 359 351 END SUBROUTINE lim_wri
Note: See TracChangeset
for help on using the changeset viewer.