New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 3294 for trunk/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn_c3d.h90 – NEMO

Ignore:
Timestamp:
2012-01-28T17:44:18+01:00 (12 years ago)
Author:
rblod
Message:

Merge of 3.4beta into the trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn_c3d.h90

    r2715 r3294  
    2727      !!---------------------------------------------------------------------- 
    2828      USE ldftra_oce, ONLY :   aht0 
    29       USE wrk_nemo  , ONLY:   wrk_in_use, wrk_not_released 
    30       USE wrk_nemo  , ONLY:   zcoef => wrk_1d_2 
    3129      !! 
    3230      LOGICAL, INTENT (in) ::   ld_print   ! If true, output arrays on numout 
     
    3735      REAL(wp) ::   zd_max       ! maximum grid spacing over the global domain 
    3836      REAL(wp) ::   za00, zc, zd, zetmax, zefmax, zeumax, zevmax   ! local scalars 
    39       !!---------------------------------------------------------------------- 
    40  
    41       IF( wrk_in_use(1,2) ) THEN 
    42          CALL ctl_stop('ldf_dyn_c3d: requested workspace array unavailable')   ;   RETURN 
    43       ENDIF 
    44  
     37      REAL(wp), POINTER, DIMENSION(:) :: zcoef    
     38      !!---------------------------------------------------------------------- 
     39      ! 
     40      CALL wrk_alloc( jpk, zcoef ) 
     41      ! 
    4542      IF(lwp) WRITE(numout,*) 
    4643      IF(lwp) WRITE(numout,*) 'ldf_dyn_c3d : 3D lateral eddy viscosity coefficient' 
     
    182179      ENDIF 
    183180      ! 
    184       IF( wrk_not_released(1,2) )   CALL ctl_stop('ldf_dyn_c3d: failed to release workspace array') 
     181      CALL wrk_dealloc( jpk, zcoef ) 
    185182      ! 
    186183   END SUBROUTINE ldf_dyn_c3d 
     
    196193      !!---------------------------------------------------------------------- 
    197194      USE ldftra_oce, ONLY:   aht0 
    198       USE wrk_nemo  , ONLY:   wrk_in_use, wrk_not_released, iwrk_in_use, iwrk_not_released 
    199       USE wrk_nemo  , ONLY:   icof  => iwrk_2d_1 
    200       USE wrk_nemo  , ONLY:   zahm0 =>  wrk_2d_1 
    201       USE wrk_nemo  , ONLY:   zcoef =>  wrk_1d_1 
    202195      !! 
    203196      LOGICAL, INTENT(in) ::   ld_print   ! If true, output arrays on numout 
     
    207200      INTEGER ::   inum, iim, ijm      !  
    208201      INTEGER ::   ifreq, il1, il2, ij, ii 
    209       INTEGER, DIMENSION(jpidta, jpjdta) ::   idata 
    210  
    211202      REAL(wp) ::   zahmeq, zcoff, zcoft, zmsk   ! local scalars 
    212203      REAL(wp) ::   zemax , zemin, zeref, zahmm 
    213204      CHARACTER (len=15) ::   clexp 
    214       !!---------------------------------------------------------------------- 
    215  
    216       IF( iwrk_in_use(2,1) .OR. wrk_in_use(2,1) .OR. wrk_in_use(1,1) ) THEN 
    217          CALL ctl_stop('ldf_dyn_c3d_orca: requested workspace arrays are unavailable')   ;   RETURN 
    218       ENDIF 
    219  
     205      INTEGER , POINTER, DIMENSION(:,:)  :: icof 
     206      INTEGER , POINTER, DIMENSION(:,:)  :: idata 
     207      REAL(wp), POINTER, DIMENSION(:  )  :: zcoef    
     208      REAL(wp), POINTER, DIMENSION(:,:)  :: zahm0 
     209      !!---------------------------------------------------------------------- 
     210      ! 
     211      CALL wrk_alloc( jpi   , jpj   , icof  ) 
     212      CALL wrk_alloc( jpidta, jpjdta, idata ) 
     213      CALL wrk_alloc( jpk   ,         zcoef ) 
     214      CALL wrk_alloc( jpi   , jpj   , zahm0 ) 
     215      ! 
    220216      IF(lwp) WRITE(numout,*) 
    221217      IF(lwp) WRITE(numout,*) 'ldfdyn_c3d_orca : 3D eddy viscosity coefficient' 
     
    457453         CALL prihre(ahm4(:,:,1),jpi,jpj,1,jpi,1,1,jpj,1,1.e-3,numout) 
    458454      ENDIF 
    459  
    460       IF( iwrk_not_released(2,1) .OR.   & 
    461            wrk_not_released(2,1) .OR.   & 
    462            wrk_not_released(1,1)   ) CALL ctl_stop('ldf_dyn_c3d_orca: failed to release workspace arrays') 
     455      ! 
     456      CALL wrk_dealloc( jpi   , jpj   , icof  ) 
     457      CALL wrk_dealloc( jpidta, jpjdta, idata ) 
     458      CALL wrk_dealloc( jpk   ,         zcoef ) 
     459      CALL wrk_dealloc( jpi   , jpj   , zahm0 ) 
    463460      ! 
    464461   END SUBROUTINE ldf_dyn_c3d_orca 
Note: See TracChangeset for help on using the changeset viewer.