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 2590 for branches/dev_r2586_dynamic_mem/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn_c3d.h90 – NEMO

Ignore:
Timestamp:
2011-02-18T13:49:27+01:00 (13 years ago)
Author:
trackstand2
Message:

Merge branch 'dynamic_memory' into master-svn-dyn

File:
1 edited

Legend:

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

    r2528 r2590  
    2727      !!---------------------------------------------------------------------- 
    2828      USE ldftra_oce, ONLY : aht0 
     29      USE wrk_nemo, ONLY: wrk_use, wrk_release 
     30      USE wrk_nemo, ONLY: zcoef => wrk_1d_2 
    2931      !! 
    3032      LOGICAL, INTENT (in) :: ld_print   ! If true, output arrays on numout 
     
    4042         zetmax, zefmax, & 
    4143         zeumax, zevmax    
    42       REAL(wp), DIMENSION(jpk) ::   zcoef   ! temporary workspace 
    43       !!---------------------------------------------------------------------- 
     44      !!---------------------------------------------------------------------- 
     45 
     46      IF(.not. wrk_use(1,2))THEN 
     47         CALL ctl_stop('ldf_dyn_c3d: ERROR: requested workspace array unavailable.') 
     48         RETURN 
     49      END IF 
    4450 
    4551      IF(lwp) WRITE(numout,*) 
     
    182188      ENDIF 
    183189 
     190      IF(.not. wrk_release(1,2))THEN 
     191         CALL ctl_stop('ldf_dyn_c3d: ERROR: failed to release workspace array.') 
     192      END IF 
     193 
    184194   END SUBROUTINE ldf_dyn_c3d 
    185195 
     
    194204      !!---------------------------------------------------------------------- 
    195205      USE ldftra_oce, ONLY : aht0 
     206      USE wrk_nemo, ONLY: wrk_use, wrk_release, iwrk_use, iwrk_release 
     207      USE wrk_nemo, ONLY:  icof => iwrk_2d_1 
     208      USE wrk_nemo, ONLY: zahm0 =>  wrk_2d_1 
     209      USE wrk_nemo, ONLY: zcoef =>  wrk_1d_1 
    196210      !! 
    197211      LOGICAL, INTENT (in) :: ld_print   ! If true, output arrays on numout 
     
    203217      INTEGER ::   ifreq, il1, il2, ij, ii 
    204218      INTEGER, DIMENSION(jpidta, jpjdta) ::   idata 
    205       INTEGER, DIMENSION(jpi   , jpj   ) ::   icof 
    206219 
    207220      REAL(wp) ::   & 
    208221         zahmeq, zcoff, zcoft, zmsk,   & ! ??? 
    209222         zemax, zemin, zeref, zahmm 
    210       REAL(wp), DIMENSION(jpi,jpj) ::   zahm0 
    211       REAL(wp), DIMENSION(jpk) ::   zcoef 
    212223 
    213224      CHARACTER (len=15) ::   clexp 
    214225      !!---------------------------------------------------------------------- 
     226 
     227      IF( (.not. iwrk_use(2,1)) .OR. (.not. wrk_use(2,1)) .OR. & 
     228          (.not. wrk_use(1,1)))THEN 
     229         CALL ctl_stop('ldf_dyn_c3d_orca: ERROR: requested workspace arrays are unavailable.') 
     230         RETURN 
     231      END IF 
    215232 
    216233      IF(lwp) WRITE(numout,*) 
     
    457474      ENDIF 
    458475 
     476      IF( (.not. iwrk_release(2,1)) .OR. (.not. wrk_release(2,1)) .OR. & 
     477          (.not. wrk_release(1,1)))THEN 
     478         CALL ctl_stop('ldf_dyn_c3d_orca: ERROR: failed to release workspace arrays.') 
     479      END IF 
     480 
    459481   END SUBROUTINE ldf_dyn_c3d_orca 
Note: See TracChangeset for help on using the changeset viewer.