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

Ignore:
Timestamp:
2011-03-15T16:27:46+01:00 (13 years ago)
Author:
gm
Message:

dynamic mem: #785 ; homogeneization of the coding style associated with dyn allocation

File:
1 edited

Legend:

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

    r2633 r2690  
    2626      !!       ??? explanation of the default is missing 
    2727      !!---------------------------------------------------------------------- 
    28       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 
    31       !! 
    32       LOGICAL, INTENT (in) :: ld_print   ! If true, output arrays on numout 
    33       !! 
    34       INTEGER  ::   ji, jj, jk      ! dummy loop indices 
    35       REAL(wp) ::   & 
    36          zr = 0.2 ,   &  ! maximum of the reduction factor at the bottom ocean 
    37          !               ! ( 0 < zr < 1 ) 
    38          zh = 500.,   &  ! depth of at which start the reduction ( > dept(1) ) 
    39          zd_max   ,   &  ! maximum grid spacing over the global domain 
    40          za00, zc, zd    ! temporary scalars 
    41       REAL(wp) ::        & 
    42          zetmax, zefmax, & 
    43          zeumax, zevmax    
    44       !!---------------------------------------------------------------------- 
    45  
    46       IF(wrk_in_use(1,2))THEN 
    47          CALL ctl_stop('ldf_dyn_c3d: ERROR: requested workspace array unavailable.') 
    48          RETURN 
    49       END IF 
     28      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 
     31      !! 
     32      LOGICAL, INTENT (in) ::   ld_print   ! If true, output arrays on numout 
     33      !! 
     34      INTEGER  ::   ji, jj, jk   ! dummy loop indices 
     35      REAL(wp) ::   zr = 0.2     ! maximum of the reduction factor at the bottom ocean ( 0 < zr < 1 ) 
     36      REAL(wp) ::   zh = 500.    ! depth of at which start the reduction ( > dept(1) ) 
     37      REAL(wp) ::   zd_max       ! maximum grid spacing over the global domain 
     38      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 
    5044 
    5145      IF(lwp) WRITE(numout,*) 
     
    187181         ENDIF 
    188182      ENDIF 
    189  
    190       IF(wrk_not_released(1,2))THEN 
    191          CALL ctl_stop('ldf_dyn_c3d: ERROR: failed to release workspace array.') 
    192       END IF 
    193  
     183      ! 
     184      IF( wrk_not_released(1,2) )   CALL ctl_stop('ldf_dyn_c3d: failed to release workspace array') 
     185      ! 
    194186   END SUBROUTINE ldf_dyn_c3d 
    195187 
     
    203195      !! ** Method  :   blah blah blah .... 
    204196      !!---------------------------------------------------------------------- 
    205       USE ldftra_oce, ONLY : aht0 
    206       USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released, iwrk_in_use, iwrk_not_released 
    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 
    210       !! 
    211       LOGICAL, INTENT (in) :: ld_print   ! If true, output arrays on numout 
     197      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 
     202      !! 
     203      LOGICAL, INTENT(in) ::  ld_print   ! If true, output arrays on numout 
    212204      !! 
    213205      INTEGER ::   ji, jj, jk, jn      ! dummy loop indices 
    214       INTEGER ::   ii0, ii1, ij0, ij1  ! temporary integers 
    215       INTEGER ::   inum                ! temporary logical unit 
    216       INTEGER ::   iim, ijm 
     206      INTEGER ::   ii0, ii1, ij0, ij1  ! local integers 
     207      INTEGER ::   inum, iim, ijm      !  
    217208      INTEGER ::   ifreq, il1, il2, ij, ii 
    218209      INTEGER, DIMENSION(jpidta, jpjdta) ::   idata 
    219210 
    220       REAL(wp) ::   & 
    221          zahmeq, zcoff, zcoft, zmsk,   & ! ??? 
    222          zemax, zemin, zeref, zahmm 
    223  
     211      REAL(wp) ::   zahmeq, zcoff, zcoft, zmsk   ! local scalars 
     212      REAL(wp) ::   zemax , zemin, zeref, zahmm 
    224213      CHARACTER (len=15) ::   clexp 
    225214      !!---------------------------------------------------------------------- 
    226215 
    227       IF( iwrk_in_use(2,1) .OR. wrk_in_use(2,1) .OR. wrk_in_use(1,1) )THEN 
    228          CALL ctl_stop('ldf_dyn_c3d_orca: ERROR: requested workspace arrays are unavailable.') 
    229          RETURN 
    230       END IF 
     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 
    231219 
    232220      IF(lwp) WRITE(numout,*) 
    233221      IF(lwp) WRITE(numout,*) 'ldfdyn_c3d_orca : 3D eddy viscosity coefficient' 
    234222      IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~~' 
    235       IF(lwp) WRITE(numout,*) 
    236       IF(lwp) WRITE(numout,*) '        orca R1, R2 or R4 ocean model' 
    237       IF(lwp) WRITE(numout,*) '  reduced in the surface Eq. strip ' 
    238       IF(lwp) WRITE(numout,*) 
     223      IF(lwp) WRITE(numout,*) '        orca R1, R2 or R4 configuration: reduced in the surface Eq. strip ' 
    239224 
    240225      ! Read 2d integer array to specify western boundary increase in the 
     
    473458      ENDIF 
    474459 
    475       IF( iwrk_not_released(2,1) .OR. wrk_not_released(2,1) .OR. & 
    476            wrk_not_released(1,1) )THEN 
    477          CALL ctl_stop('ldf_dyn_c3d_orca: ERROR: failed to release workspace arrays.') 
    478       END IF 
    479  
     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') 
     463      ! 
    480464   END SUBROUTINE ldf_dyn_c3d_orca 
Note: See TracChangeset for help on using the changeset viewer.