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 7910 for branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA – NEMO

Ignore:
Timestamp:
2017-04-13T16:21:08+02:00 (7 years ago)
Author:
timgraham
Message:

All wrk_alloc removed

Location:
branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA
Files:
21 edited

Legend:

Unmodified
Added
Removed
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90

    r7753 r7910  
    3434   USE prtctl         ! Print control 
    3535   USE lib_mpp        ! MPP library 
    36    USE wrk_nemo       ! Memory Allocation 
    3736   USE timing         ! Timing 
    3837   USE sbcwave        ! wave module 
     
    8988      ! 
    9089      INTEGER ::   jk   ! dummy loop index 
    91       REAL(wp), POINTER, DIMENSION(:,:,:) :: zun, zvn, zwn 
    92       REAL(wp), POINTER, DIMENSION(:,:,:) ::   ztrdt, ztrds   ! 3D workspace 
     90      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zun, zvn, zwn 
     91      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   ztrdt, ztrds   ! 3D workspace 
    9392      !!---------------------------------------------------------------------- 
    9493      ! 
    9594      IF( nn_timing == 1 )  CALL timing_start('tra_adv') 
    9695      ! 
    97       CALL wrk_alloc( jpi,jpj,jpk,   zun, zvn, zwn ) 
    9896      ! 
    9997      !                                          ! set time step 
     
    146144      ! 
    147145      IF( l_trdtra )   THEN                    !* Save ta and sa trends 
    148          CALL wrk_alloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    149146         ztrdt(:,:,:) = tsa(:,:,:,jp_tem) 
    150147         ztrds(:,:,:) = tsa(:,:,:,jp_sal) 
     
    175172         CALL trd_tra( kt, 'TRA', jp_tem, jptra_totad, ztrdt ) 
    176173         CALL trd_tra( kt, 'TRA', jp_sal, jptra_totad, ztrds ) 
    177          CALL wrk_dealloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    178174      ENDIF 
    179175      !                                              ! print mean trends (used for debugging) 
     
    183179      IF( nn_timing == 1 )  CALL timing_stop( 'tra_adv' ) 
    184180      ! 
    185       CALL wrk_dealloc( jpi,jpj,jpk,   zun, zvn, zwn ) 
    186181      !                                           
    187182   END SUBROUTINE tra_adv 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_cen.F90

    r7646 r7910  
    2424   USE trc_oce        ! share passive tracers/Ocean variables 
    2525   USE lib_mpp        ! MPP library 
    26    USE wrk_nemo       ! Memory Allocation 
    2726   USE timing         ! Timing 
    2827 
     
    8079      REAL(wp) ::   zC2t_u, zC4t_u   ! local scalars 
    8180      REAL(wp) ::   zC2t_v, zC4t_v   !   -      - 
    82       REAL(wp), POINTER, DIMENSION(:,:,:) ::   zwx, zwy, zwz, ztu, ztv, ztw 
     81      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   zwx, zwy, zwz, ztu, ztv, ztw 
    8382      !!---------------------------------------------------------------------- 
    8483      ! 
    8584      IF( nn_timing == 1 )  CALL timing_start('tra_adv_cen') 
    8685      ! 
    87       CALL wrk_alloc( jpi,jpj,jpk,   zwx, zwy, zwz, ztu, ztv, ztw ) 
    8886      ! 
    8987      IF( kt == kit000 )  THEN 
     
    209207      END DO 
    210208      ! 
    211       CALL wrk_dealloc( jpi,jpj,jpk,   zwx, zwy, zwz, ztu, ztv, ztw ) 
    212209      ! 
    213210      IF( nn_timing == 1 )  CALL timing_stop('tra_adv_cen') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_fct.F90

    r7753 r7910  
    2828   USE lbclnk         ! ocean lateral boundary condition (or mpp link)  
    2929   USE lib_fortran    ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined)   
    30    USE wrk_nemo       ! Memory Allocation 
    3130   USE timing         ! Timing 
    3231 
     
    8887      REAL(wp) ::   zfp_ui, zfp_vj, zfp_wk, zC2t_u, zC4t_u   !   -      - 
    8988      REAL(wp) ::   zfm_ui, zfm_vj, zfm_wk, zC2t_v, zC4t_v   !   -      - 
    90       REAL(wp), POINTER, DIMENSION(:,:,:) ::   zwi, zwx, zwy, zwz, ztu, ztv, zltu, zltv, ztw 
    91       REAL(wp), POINTER, DIMENSION(:,:,:) ::   ztrdx, ztrdy, ztrdz, zptry 
     89      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   zwi, zwx, zwy, zwz, ztu, ztv, zltu, zltv, ztw 
     90      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   ztrdx, ztrdy, ztrdz, zptry 
    9291      REAL(wp), POINTER, DIMENSION(:,:)   :: z2d 
    9392      !!---------------------------------------------------------------------- 
     
    9594      IF( nn_timing == 1 )  CALL timing_start('tra_adv_fct') 
    9695      ! 
    97       CALL wrk_alloc( jpi,jpj,jpk,   zwi, zwx, zwy, zwz, ztu, ztv, zltu, zltv, ztw ) 
    9896      ! 
    9997      IF( kt == kit000 )  THEN 
     
    112110      ! 
    113111      IF( l_trd .OR. l_hst )  THEN 
    114          CALL wrk_alloc( jpi, jpj, jpk, ztrdx, ztrdy, ztrdz ) 
    115112         ztrdx(:,:,:) = 0._wp   ;    ztrdy(:,:,:) = 0._wp   ;   ztrdz(:,:,:) = 0._wp 
    116113      ENDIF 
    117114      ! 
    118115      IF( l_ptr ) THEN   
    119          CALL wrk_alloc( jpi, jpj, jpk, zptry ) 
    120116         zptry(:,:,:) = 0._wp 
    121117      ENDIF 
     
    331327      END DO                     ! end of tracer loop 
    332328      ! 
    333                               CALL wrk_dealloc( jpi,jpj,jpk,    zwi, zwx, zwy, zwz, ztu, ztv, zltu, zltv, ztw ) 
    334       IF( l_trd .OR. l_hst )  CALL wrk_dealloc( jpi, jpj, jpk, ztrdx, ztrdy, ztrdz ) 
    335       IF( l_ptr )             CALL wrk_dealloc( jpi, jpj, jpk, zptry ) 
    336329      ! 
    337330      IF( nn_timing == 1 )  CALL timing_stop('tra_adv_fct') 
     
    376369      REAL(wp) ::   zfp_ui, zfp_vj, zfp_wk   !   -      - 
    377370      REAL(wp) ::   zfm_ui, zfm_vj, zfm_wk   !   -      - 
    378       REAL(wp), POINTER, DIMENSION(:,:  )   ::   zwx_sav , zwy_sav 
    379       REAL(wp), POINTER, DIMENSION(:,:,:)   ::   zwi, zwx, zwy, zwz, zhdiv, zwzts, zwz_sav 
    380       REAL(wp), POINTER, DIMENSION(:,:,:)   ::   ztrdx, ztrdy, ztrdz 
    381       REAL(wp), POINTER, DIMENSION(:,:,:) :: zptry 
    382       REAL(wp), POINTER, DIMENSION(:,:,:,:) ::   ztrs 
     371      REAL(wp), DIMENSION(jpi,jpj)   ::   zwx_sav , zwy_sav 
     372      REAL(wp), DIMENSION(jpi,jpj,jpk)   ::   zwi, zwx, zwy, zwz, zhdiv, zwzts, zwz_sav 
     373      REAL(wp), DIMENSION(jpi,jpj,jpk)   ::   ztrdx, ztrdy, ztrdz 
     374      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zptry 
     375      REAL(wp), DIMENSION(jpi,jpj,jpk,kjpt+1) ::   ztrs 
    383376      !!---------------------------------------------------------------------- 
    384377      ! 
    385378      IF( nn_timing == 1 )  CALL timing_start('tra_adv_fct_zts') 
    386379      ! 
    387       CALL wrk_alloc( jpi,jpj,             zwx_sav, zwy_sav ) 
    388       CALL wrk_alloc( jpi,jpj,jpk,         zwx, zwy, zwz, zwi, zhdiv, zwzts, zwz_sav ) 
    389       CALL wrk_alloc( jpi,jpj,jpk,kjpt+1,  ztrs ) 
    390380      ! 
    391381      IF( kt == kit000 )  THEN 
     
    404394      ! 
    405395      IF( l_trd .OR. l_hst )  THEN 
    406          CALL wrk_alloc( jpi,jpj,jpk,   ztrdx, ztrdy, ztrdz ) 
    407396         ztrdx(:,:,:) = 0._wp  ;    ztrdy(:,:,:) = 0._wp  ;   ztrdz(:,:,:) = 0._wp 
    408397      ENDIF 
    409398      ! 
    410399      IF( l_ptr ) THEN   
    411          CALL wrk_alloc( jpi, jpj,jpk, zptry ) 
    412400         zptry(:,:,:) = 0._wp 
    413401      ENDIF 
     
    621609      END DO 
    622610      ! 
    623                               CALL wrk_alloc( jpi,jpj,             zwx_sav, zwy_sav ) 
    624                               CALL wrk_alloc( jpi,jpj, jpk,        zwx, zwy, zwz, zwi, zhdiv, zwzts, zwz_sav ) 
    625                               CALL wrk_alloc( jpi,jpj,jpk,kjpt+1,  ztrs ) 
    626       IF( l_trd .OR. l_hst )  CALL wrk_dealloc( jpi, jpj, jpk, ztrdx, ztrdy, ztrdz ) 
    627       IF( l_ptr )             CALL wrk_dealloc( jpi, jpj, jpk, zptry ) 
    628611      ! 
    629612      IF( nn_timing == 1 )  CALL timing_stop('tra_adv_fct_zts') 
     
    653636      REAL(wp) ::   zpos, zneg, zbt, za, zb, zc, zbig, zrtrn    ! local scalars 
    654637      REAL(wp) ::   zau, zbu, zcu, zav, zbv, zcv, zup, zdo            !   -      - 
    655       REAL(wp), POINTER, DIMENSION(:,:,:) :: zbetup, zbetdo, zbup, zbdo 
     638      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zbetup, zbetdo, zbup, zbdo 
    656639      !!---------------------------------------------------------------------- 
    657640      ! 
    658641      IF( nn_timing == 1 )  CALL timing_start('nonosc') 
    659642      ! 
    660       CALL wrk_alloc( jpi, jpj, jpk, zbetup, zbetdo, zbup, zbdo ) 
    661643      ! 
    662644      zbig  = 1.e+40_wp 
     
    734716      CALL lbc_lnk( paa, 'U', -1. )   ;   CALL lbc_lnk( pbb, 'V', -1. )   ! lateral boundary condition (changed sign) 
    735717      ! 
    736       CALL wrk_dealloc( jpi, jpj, jpk, zbetup, zbetdo, zbup, zbdo ) 
    737718      ! 
    738719      IF( nn_timing == 1 )  CALL timing_stop('nonosc') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_mle.F90

    r7753 r7910  
    1919   USE iom            ! IOM library 
    2020   USE lib_mpp        ! MPP library 
    21    USE wrk_nemo       ! work arrays 
    2221   USE timing         ! Timing 
    2322 
     
    9594      INTEGER, DIMENSION(3) ::   ilocu      ! 
    9695      INTEGER, DIMENSION(2) ::   ilocs      ! 
    97       REAL(wp), POINTER, DIMENSION(:,:  ) :: zpsim_u, zpsim_v, zmld, zbm, zhu, zhv, zn2, zLf_NH, zLf_MH 
    98       REAL(wp), POINTER, DIMENSION(:,:,:) :: zpsi_uw, zpsi_vw 
    99       INTEGER, POINTER, DIMENSION(:,:) :: inml_mle 
     96      REAL(wp), DIMENSION(jpi,jpj) :: zpsim_u, zpsim_v, zmld, zbm, zhu, zhv, zn2, zLf_NH, zLf_MH 
     97      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zpsi_uw, zpsi_vw 
     98      INTEGER, DIMENSION(jpi,jpj) :: inml_mle 
    10099      !!---------------------------------------------------------------------- 
    101100      ! 
    102101      IF( nn_timing == 1 )  CALL timing_start('tra_adv_mle') 
    103       CALL wrk_alloc( jpi, jpj, zpsim_u, zpsim_v, zmld, zbm, zhu, zhv, zn2, zLf_NH, zLf_MH) 
    104       CALL wrk_alloc( jpi, jpj, jpk, zpsi_uw, zpsi_vw) 
    105       CALL wrk_alloc( jpi, jpj, inml_mle) 
    106102      ! 
    107103      !                                      !==  MLD used for MLE  ==! 
     
    256252         CALL iom_put( "psiv_mle", zpsi_vw )    ! j-mle streamfunction 
    257253      ENDIF 
    258       CALL wrk_dealloc( jpi, jpj, zpsim_u, zpsim_v, zmld, zbm, zhu, zhv, zn2, zLf_NH, zLf_MH) 
    259       CALL wrk_dealloc( jpi, jpj, jpk, zpsi_uw, zpsi_vw) 
    260       CALL wrk_dealloc( jpi, jpj, inml_mle) 
    261254 
    262255      IF( nn_timing == 1 )  CALL timing_stop('tra_adv_mle') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_mus.F90

    r7753 r7910  
    2727   ! 
    2828   USE iom 
    29    USE wrk_nemo       ! Memory Allocation 
    3029   USE timing         ! Timing 
    3130   USE lib_fortran    ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined)   
     
    9089      REAL(wp) ::   zv, z0v, zzwy, z0w   !   -      - 
    9190      REAL(wp) ::   zalpha               !   -      - 
    92       REAL(wp), POINTER, DIMENSION(:,:,:) ::   zslpx, zslpy   ! 3D workspace 
    93       REAL(wp), POINTER, DIMENSION(:,:,:) ::   zwx  , zwy     ! -      -  
     91      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   zslpx, zslpy   ! 3D workspace 
     92      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   zwx  , zwy     ! -      -  
    9493      !!---------------------------------------------------------------------- 
    9594      ! 
    9695      IF( nn_timing == 1 )  CALL timing_start('tra_adv_mus') 
    9796      ! 
    98       CALL wrk_alloc( jpi,jpj,jpk,   zslpx, zslpy, zwx, zwy ) 
    9997      ! 
    10098      IF( kt == kit000 )  THEN 
     
    279277      END DO                     ! end of tracer loop 
    280278      ! 
    281       CALL wrk_dealloc( jpi,jpj,jpk,   zslpx, zslpy, zwx, zwy ) 
    282279      ! 
    283280      IF( nn_timing == 1 )  CALL timing_stop('tra_adv_mus') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_qck.F90

    r7646 r7910  
    2525   USE lbclnk          ! ocean lateral boundary condition (or mpp link) 
    2626   USE in_out_manager  ! I/O manager 
    27    USE wrk_nemo        ! Memory Allocation 
    2827   USE timing          ! Timing 
    2928   USE lib_fortran     ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined)   
     
    138137      INTEGER  ::   ji, jj, jk, jn   ! dummy loop indices 
    139138      REAL(wp) ::   ztra, zbtr, zdir, zdx, zmsk   ! local scalars 
    140       REAL(wp), POINTER, DIMENSION(:,:,:) ::   zwx, zfu, zfc, zfd 
     139      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   zwx, zfu, zfc, zfd 
    141140      !---------------------------------------------------------------------- 
    142141      ! 
    143       CALL wrk_alloc( jpi, jpj, jpk, zwx, zfu, zfc, zfd ) 
    144142      !                                                          ! =========== 
    145143      DO jn = 1, kjpt                                            ! tracer loop 
     
    234232      END DO 
    235233      ! 
    236       CALL wrk_dealloc( jpi, jpj, jpk, zwx, zfu, zfc, zfd ) 
    237234      ! 
    238235   END SUBROUTINE tra_adv_qck_i 
     
    254251      INTEGER  :: ji, jj, jk, jn   ! dummy loop indices 
    255252      REAL(wp) :: ztra, zbtr, zdir, zdx, zmsk   ! local scalars 
    256       REAL(wp), POINTER, DIMENSION(:,:,:) :: zwy, zfu, zfc, zfd 
     253      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zwy, zfu, zfc, zfd 
    257254      !---------------------------------------------------------------------- 
    258255      ! 
    259       CALL wrk_alloc( jpi, jpj, jpk, zwy, zfu, zfc, zfd ) 
    260256      ! 
    261257      !                                                          ! =========== 
     
    359355      END DO 
    360356      ! 
    361       CALL wrk_dealloc( jpi, jpj, jpk, zwy, zfu, zfc, zfd ) 
    362357      ! 
    363358   END SUBROUTINE tra_adv_qck_j 
     
    377372      ! 
    378373      INTEGER  ::   ji, jj, jk, jn   ! dummy loop indices 
    379       REAL(wp), POINTER, DIMENSION(:,:,:) :: zwz 
    380       !!---------------------------------------------------------------------- 
    381       ! 
    382       CALL wrk_alloc( jpi,jpj,jpk,   zwz ) 
     374      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zwz 
     375      !!---------------------------------------------------------------------- 
     376      ! 
    383377      ! 
    384378      zwz(:,:, 1 ) = 0._wp       ! surface & bottom values set to zero for all tracers 
     
    421415      END DO 
    422416      ! 
    423       CALL wrk_dealloc( jpi,jpj,jpk,   zwz ) 
    424417      ! 
    425418   END SUBROUTINE tra_adv_cen2_k 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traadv_ubs.F90

    r7646 r7910  
    2626   USE lbclnk         ! ocean lateral boundary condition (or mpp link) 
    2727   USE in_out_manager ! I/O manager 
    28    USE wrk_nemo       ! Memory Allocation 
    2928   USE timing         ! Timing 
    3029   USE lib_fortran    ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined)   
     
    101100      REAL(wp) ::   zfp_ui, zfm_ui, zcenut, ztak, zfp_wk, zfm_wk   !   -      - 
    102101      REAL(wp) ::   zfp_vj, zfm_vj, zcenvt, zeeu, zeev, z_hdivn    !   -      - 
    103       REAL(wp), POINTER, DIMENSION(:,:,:) :: ztu, ztv, zltu, zltv, zti, ztw 
     102      REAL(wp), DIMENSION(jpi,jpj,jpk) :: ztu, ztv, zltu, zltv, zti, ztw 
    104103      !!---------------------------------------------------------------------- 
    105104      ! 
    106105      IF( nn_timing == 1 )  CALL timing_start('tra_adv_ubs') 
    107106      ! 
    108       CALL wrk_alloc( jpi,jpj,jpk,   ztu, ztv, zltu, zltv, zti, ztw ) 
    109107      ! 
    110108      IF( kt == kit000 )  THEN 
     
    285283      END DO 
    286284      ! 
    287       CALL wrk_dealloc( jpi,jpj,jpk,   ztu, ztv, zltu, zltv, zti, ztw ) 
    288285      ! 
    289286      IF( nn_timing == 1 )  CALL timing_stop('tra_adv_ubs') 
     
    313310      INTEGER  ::   ikm1         ! local integer 
    314311      REAL(wp) ::   zpos, zneg, zbt, za, zb, zc, zbig, zrtrn   ! local scalars 
    315       REAL(wp), POINTER, DIMENSION(:,:,:) :: zbetup, zbetdo 
     312      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zbetup, zbetdo 
    316313      !!---------------------------------------------------------------------- 
    317314      ! 
    318315      IF( nn_timing == 1 )  CALL timing_start('nonosc_z') 
    319316      ! 
    320       CALL wrk_alloc( jpi,jpj,jpk,   zbetup, zbetdo ) 
    321317      ! 
    322318      zbig  = 1.e+40_wp 
     
    387383      END DO 
    388384      ! 
    389       CALL wrk_dealloc( jpi,jpj,jpk,   zbetup, zbetdo ) 
    390385      ! 
    391386      IF( nn_timing == 1 )  CALL timing_stop('nonosc_z') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/trabbc.F90

    r7753 r7910  
    2727   USE lib_mpp        ! distributed memory computing library 
    2828   USE prtctl         ! Print control 
    29    USE wrk_nemo       ! Memory Allocation 
    3029   USE timing         ! Timing 
    3130 
     
    7776      ! 
    7877      INTEGER  ::   ji, jj    ! dummy loop indices 
    79       REAL(wp), POINTER, DIMENSION(:,:,:) ::   ztrdt 
     78      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   ztrdt 
    8079      !!---------------------------------------------------------------------- 
    8180      ! 
     
    8382      ! 
    8483      IF( l_trdtra )   THEN         ! Save the input temperature trend 
    85          CALL wrk_alloc( jpi,jpj,jpk,   ztrdt ) 
    8684         ztrdt(:,:,:) = tsa(:,:,:,jp_tem) 
    8785      ENDIF 
     
    9896         ztrdt(:,:,:) = tsa(:,:,:,jp_tem) - ztrdt(:,:,:) 
    9997         CALL trd_tra( kt, 'TRA', jp_tem, jptra_bbc, ztrdt ) 
    100          CALL wrk_dealloc( jpi,jpj,jpk,   ztrdt ) 
    10198      ENDIF 
    10299      ! 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/trabbl.F90

    r7753 r7910  
    3636   USE lbclnk         ! ocean lateral boundary conditions 
    3737   USE prtctl         ! Print control 
    38    USE wrk_nemo       ! Memory Allocation 
    3938   USE timing         ! Timing 
    4039   USE lib_fortran    ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined)   
     
    106105      INTEGER, INTENT( in ) ::   kt   ! ocean time-step 
    107106      ! 
    108       REAL(wp), POINTER, DIMENSION(:,:,:) ::  ztrdt, ztrds 
     107      REAL(wp), DIMENSION(jpi,jpj,jpk) ::  ztrdt, ztrds 
    109108      !!---------------------------------------------------------------------- 
    110109      ! 
     
    112111      ! 
    113112      IF( l_trdtra )   THEN                         !* Save the input trends 
    114          CALL wrk_alloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    115113         ztrdt(:,:,:) = tsa(:,:,:,jp_tem) 
    116114         ztrds(:,:,:) = tsa(:,:,:,jp_sal) 
     
    150148         CALL trd_tra( kt, 'TRA', jp_tem, jptra_bbl, ztrdt ) 
    151149         CALL trd_tra( kt, 'TRA', jp_sal, jptra_bbl, ztrds ) 
    152          CALL wrk_dealloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    153150      ENDIF 
    154151      ! 
     
    186183      INTEGER  ::   ik           ! local integers 
    187184      REAL(wp) ::   zbtr         ! local scalars 
    188       REAL(wp), POINTER, DIMENSION(:,:) :: zptb 
     185      REAL(wp), DIMENSION(jpi,jpj) :: zptb 
    189186      !!---------------------------------------------------------------------- 
    190187      ! 
    191188      IF( nn_timing == 1 )  CALL timing_start('tra_bbl_dif') 
    192189      ! 
    193       CALL wrk_alloc( jpi, jpj, zptb ) 
    194190      ! 
    195191      DO jn = 1, kjpt                                     ! tracer loop 
     
    216212      END DO                                                ! end tracer 
    217213      !                                                     ! =========== 
    218       CALL wrk_dealloc( jpi, jpj, zptb ) 
    219214      ! 
    220215      IF( nn_timing == 1 )  CALL timing_stop('tra_bbl_dif') 
     
    497492      INTEGER ::   ii0, ii1, ij0, ij1   ! local integer 
    498493      INTEGER ::   ios                  !   -      - 
    499       REAL(wp), POINTER, DIMENSION(:,:) :: zmbk 
     494      REAL(wp), DIMENSION(jpi,jpj) :: zmbk 
    500495      ! 
    501496      NAMELIST/nambbl/ nn_bbl_ldf, nn_bbl_adv, rn_ahtbbl, rn_gambbl 
     
    540535      END DO 
    541536      ! converte into REAL to use lbc_lnk ; impose a min value of 1 as a zero can be set in lbclnk 
    542       CALL wrk_alloc( jpi, jpj, zmbk ) 
    543537      zmbk(:,:) = REAL( mbku_d(:,:), wp )   ;   CALL lbc_lnk(zmbk,'U',1.)   ;   mbku_d(:,:) = MAX( INT( zmbk(:,:) ), 1 ) 
    544538      zmbk(:,:) = REAL( mbkv_d(:,:), wp )   ;   CALL lbc_lnk(zmbk,'V',1.)   ;   mbkv_d(:,:) = MAX( INT( zmbk(:,:) ), 1 ) 
    545       CALL wrk_dealloc( jpi, jpj, zmbk ) 
    546539 
    547540      !                                 !* sign of grad(H) at u- and v-points 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/tradmp.F90

    r7753 r7910  
    3535   USE lib_mpp        ! MPP library 
    3636   USE prtctl         ! Print control 
    37    USE wrk_nemo       ! Memory allocation 
    3837   USE timing         ! Timing 
    3938   USE iom 
     
    9493      ! 
    9594      INTEGER ::   ji, jj, jk, jn   ! dummy loop indices 
    96       REAL(wp), POINTER, DIMENSION(:,:,:,:) ::  zts_dta, ztrdts 
     95      REAL(wp), DIMENSION(jpi,jpj,jpk,jpts) ::  zts_dta, ztrdts 
    9796      !!---------------------------------------------------------------------- 
    9897      ! 
    9998      IF( nn_timing == 1 )   CALL timing_start('tra_dmp') 
    10099      ! 
    101       CALL wrk_alloc( jpi,jpj,jpk,jpts,   zts_dta ) 
    102100      IF( l_trdtra )   THEN                    !* Save ta and sa trends 
    103          CALL wrk_alloc( jpi,jpj,jpk,jpts,   ztrdts )  
    104101         ztrdts(:,:,:,:) = tsa(:,:,:,:)  
    105102      ENDIF 
     
    154151         CALL trd_tra( kt, 'TRA', jp_tem, jptra_dmp, ztrdts(:,:,:,jp_tem) ) 
    155152         CALL trd_tra( kt, 'TRA', jp_sal, jptra_dmp, ztrdts(:,:,:,jp_sal) ) 
    156          CALL wrk_dealloc( jpi,jpj,jpk,jpts,   ztrdts )  
    157153      ENDIF 
    158154      !                           ! Control print 
     
    160156         &                       tab3d_2=tsa(:,:,:,jp_sal), clinfo2=       ' Sa: ', mask2=tmask, clinfo3='tra' ) 
    161157      ! 
    162       CALL wrk_dealloc( jpi,jpj,jpk,jpts,   zts_dta ) 
    163158      ! 
    164159      IF( nn_timing == 1 )   CALL timing_stop('tra_dmp') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traldf.F90

    r7765 r7910  
    3030   USE lib_mpp        ! distribued memory computing library 
    3131   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
    32    USE wrk_nemo       ! Memory allocation 
    3332   USE timing         ! Timing 
    3433 
     
    5857      INTEGER, INTENT( in ) ::   kt   ! ocean time-step index 
    5958      !! 
    60       REAL(wp), POINTER, DIMENSION(:,:,:) ::  ztrdt, ztrds 
     59      REAL(wp), DIMENSION(jpi,jpj,jpk) ::  ztrdt, ztrds 
    6160      !!---------------------------------------------------------------------- 
    6261      ! 
     
    6463      ! 
    6564      IF( l_trdtra )   THEN                    !* Save ta and sa trends 
    66          CALL wrk_alloc( jpi,jpj,jpk,   ztrdt, ztrds )  
    6765         ztrdt(:,:,:) = tsa(:,:,:,jp_tem)  
    6866         ztrds(:,:,:) = tsa(:,:,:,jp_sal) 
     
    8583         CALL trd_tra( kt, 'TRA', jp_tem, jptra_ldf, ztrdt ) 
    8684         CALL trd_tra( kt, 'TRA', jp_sal, jptra_ldf, ztrds ) 
    87          CALL wrk_dealloc( jpi,jpj,jpk,   ztrdt, ztrds )  
    8885      ENDIF 
    8986      !                                        !* print mean trends (used for debugging) 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_iso.F90

    r7753 r7910  
    3030   USE phycst         ! physical constants 
    3131   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
    32    USE wrk_nemo       ! Memory Allocation 
    3332   USE timing         ! Timing 
    3433 
     
    111110      REAL(wp) ::  zmskv, zahv_w, zabe2, zcof2, zcoef4   !   -      - 
    112111      REAL(wp) ::  zcoef0, ze3w_2, zsign, z2dt, z1_2dt   !   -      - 
    113       REAL(wp), POINTER, DIMENSION(:,:)   ::   zdkt, zdk1t, z2d 
    114       REAL(wp), POINTER, DIMENSION(:,:,:) ::   zdit, zdjt, zftu, zftv, ztfw  
     112      REAL(wp), DIMENSION(jpi,jpj)   ::   zdkt, zdk1t, z2d 
     113      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   zdit, zdjt, zftu, zftv, ztfw  
    115114      !!---------------------------------------------------------------------- 
    116115      ! 
    117116      IF( nn_timing == 1 )  CALL timing_start('tra_ldf_iso') 
    118117      ! 
    119       CALL wrk_alloc( jpi,jpj,       zdkt, zdk1t, z2d )  
    120       CALL wrk_alloc( jpi,jpj,jpk,   zdit, zdjt , zftu, zftv, ztfw  )  
    121118      ! 
    122119      IF( kt == kit000 )  THEN 
     
    388385      !                                                           ! =============== 
    389386      ! 
    390       CALL wrk_dealloc( jpi, jpj,      zdkt, zdk1t, z2d )  
    391       CALL wrk_dealloc( jpi, jpj, jpk, zdit, zdjt , zftu, zftv, ztfw  )  
    392387      ! 
    393388      IF( nn_timing == 1 )  CALL timing_stop('tra_ldf_iso') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_lap_blp.F90

    r7646 r7910  
    2525   USE lib_mpp        ! distribued memory computing library 
    2626   USE timing         ! Timing 
    27    USE wrk_nemo       ! Memory allocation 
    2827   USE iom 
    2928 
     
    8786      INTEGER  ::   ji, jj, jk, jn   ! dummy loop indices 
    8887      REAL(wp) ::   zsign            ! local scalars 
    89       REAL(wp), POINTER, DIMENSION(:,:,:) ::  ztu, ztv, zaheeu, zaheev 
     88      REAL(wp), DIMENSION(jpi,jpj,jpk) ::  ztu, ztv, zaheeu, zaheev 
    9089      !!---------------------------------------------------------------------- 
    9190      ! 
     
    9897      ENDIF 
    9998      ! 
    100       CALL wrk_alloc( jpi,jpj,jpk,   ztu, ztv, zaheeu, zaheev )  
    10199      ! 
    102100      l_hst = .FALSE. 
     
    169167      !                             ! ================== 
    170168      ! 
    171       CALL wrk_dealloc( jpi,jpj,jpk,   ztu, ztv, zaheeu, zaheev )  
    172169      ! 
    173170      IF( nn_timing == 1 )  CALL timing_stop('tra_ldf_lap') 
     
    203200      ! 
    204201      INTEGER ::   ji, jj, jk, jn   ! dummy loop indices 
    205       REAL(wp), POINTER, DIMENSION(:,:,:,:) :: zlap         ! laplacian at t-point 
    206       REAL(wp), POINTER, DIMENSION(:,:,:)   :: zglu, zglv   ! bottom GRADh of the laplacian (u- and v-points) 
    207       REAL(wp), POINTER, DIMENSION(:,:,:)   :: zgui, zgvi   ! top    GRADh of the laplacian (u- and v-points) 
     202      REAL(wp), DIMENSION(jpi,jpj,jpk,kjpt) :: zlap         ! laplacian at t-point 
     203      REAL(wp), DIMENSION(jpi,jpj,kjpt)   :: zglu, zglv   ! bottom GRADh of the laplacian (u- and v-points) 
     204      REAL(wp), DIMENSION(jpi,jpj,kjpt)   :: zgui, zgvi   ! top    GRADh of the laplacian (u- and v-points) 
    208205      !!--------------------------------------------------------------------- 
    209206      ! 
    210207      IF( nn_timing == 1 )  CALL timing_start('tra_ldf_blp') 
    211208      ! 
    212       CALL wrk_alloc( jpi,jpj,jpk,kjpt,   zlap )  
    213       CALL wrk_alloc( jpi,jpj,    kjpt,   zglu, zglv, zgui, zgvi )  
    214209      ! 
    215210      IF( kt == kit000 .AND. lwp )  THEN 
     
    253248      END SELECT 
    254249      ! 
    255       CALL wrk_dealloc( jpi,jpj,jpk,kjpt,   zlap )  
    256       CALL wrk_dealloc( jpi,jpj    ,kjpt,   zglu, zglv, zgui, zgvi )  
    257250      ! 
    258251      IF( nn_timing == 1 )  CALL timing_stop('tra_ldf_blp') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traldf_triad.F90

    r7646 r7910  
    2727   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
    2828   USE lib_mpp        ! MPP library 
    29    USE wrk_nemo       ! Memory Allocation 
    3029   USE timing         ! Timing 
    3130 
     
    9493      REAL(wp) ::   ze1ur, ze2vr, ze3wr, zdxt, zdyt, zdzt 
    9594      REAL(wp) ::   zah, zah_slp, zaei_slp 
    96       REAL(wp), POINTER, DIMENSION(:,:  ) :: z2d                                            ! 2D workspace 
    97       REAL(wp), POINTER, DIMENSION(:,:,:) :: zdit, zdjt, zftu, zftv, ztfw, zpsi_uw, zpsi_vw   ! 3D     - 
     95      REAL(wp), DIMENSION(jpi,jpj) :: z2d                                            ! 2D workspace 
     96      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zdit, zdjt, zftu, zftv, ztfw, zpsi_uw, zpsi_vw   ! 3D     - 
    9897      !!---------------------------------------------------------------------- 
    9998      ! 
    10099      IF( nn_timing == 1 )  CALL timing_start('tra_ldf_triad') 
    101100      ! 
    102       CALL wrk_alloc( jpi,jpj,       z2d )  
    103       CALL wrk_alloc( jpi,jpj,jpk,   zdit, zdjt, zftu, zftv, ztfw, zpsi_uw, zpsi_vw  )  
    104101      ! 
    105102      IF( .NOT.ALLOCATED(zdkt3d) )  THEN 
     
    435432      !                                                           ! =============== 
    436433      ! 
    437       CALL wrk_dealloc( jpi,jpj,       z2d )  
    438       CALL wrk_dealloc( jpi,jpj,jpk,   zdit, zdjt, zftu, zftv, ztfw, zpsi_uw, zpsi_vw  )  
    439434      ! 
    440435      IF( nn_timing == 1 )  CALL timing_stop('tra_ldf_triad') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/tranpc.F90

    r6140 r7910  
    2626   USE in_out_manager ! I/O manager 
    2727   USE lib_mpp        ! MPP library 
    28    USE wrk_nemo       ! Memory Allocation 
    2928   USE timing         ! Timing 
    3029 
     
    6867      REAL(wp) ::   zsa, zbeta, zsum_sali, zsum_beta, zbw, zrw, z1_r2dt 
    6968      REAL(wp), PARAMETER :: zn2_zero = 1.e-14_wp       ! acceptance criteria for neutrality (N2==0) 
    70       REAL(wp), POINTER, DIMENSION(:)       ::   zvn2   ! vertical profile of N2 at 1 given point... 
    71       REAL(wp), POINTER, DIMENSION(:,:)     ::   zvts   ! vertical profile of T and S at 1 given point... 
    72       REAL(wp), POINTER, DIMENSION(:,:)     ::   zvab   ! vertical profile of alpha and beta 
    73       REAL(wp), POINTER, DIMENSION(:,:,:)   ::   zn2    ! N^2  
    74       REAL(wp), POINTER, DIMENSION(:,:,:,:) ::   zab    ! alpha and beta 
    75       REAL(wp), POINTER, DIMENSION(:,:,:)   ::   ztrdt, ztrds   ! 3D workspace 
     69      REAL(wp), DIMENSION(jpk)       ::   zvn2   ! vertical profile of N2 at 1 given point... 
     70      REAL(wp), DIMENSION(jpk,2)     ::   zvts   ! vertical profile of T and S at 1 given point... 
     71      REAL(wp), DIMENSION(jpk,2)     ::   zvab   ! vertical profile of alpha and beta 
     72      REAL(wp), DIMENSION(jpi,jpj,jpk)   ::   zn2    ! N^2  
     73      REAL(wp), DIMENSION(jpi,jpj,jpk,2) ::   zab    ! alpha and beta 
     74      REAL(wp), DIMENSION(jpi,jpj,jpk)   ::   ztrdt, ztrds   ! 3D workspace 
    7675      ! 
    7776      LOGICAL, PARAMETER :: l_LB_debug = .FALSE. ! set to true if you want to follow what is 
     
    8483      IF( MOD( kt, nn_npc ) == 0 ) THEN 
    8584         ! 
    86          CALL wrk_alloc( jpi, jpj, jpk, zn2 )    ! N2 
    87          CALL wrk_alloc( jpi, jpj, jpk, 2, zab ) ! Alpha and Beta 
    88          CALL wrk_alloc( jpk, 2, zvts, zvab )    ! 1D column vector at point ji,jj 
    89          CALL wrk_alloc( jpk, zvn2 )             ! 1D column vector at point ji,jj 
    9085 
    9186         IF( l_trdtra )   THEN                    !* Save initial after fields 
    92             CALL wrk_alloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    9387            ztrdt(:,:,:) = tsa(:,:,:,jp_tem)  
    9488            ztrds(:,:,:) = tsa(:,:,:,jp_sal) 
     
    313307            CALL trd_tra( kt, 'TRA', jp_tem, jptra_npc, ztrdt ) 
    314308            CALL trd_tra( kt, 'TRA', jp_sal, jptra_npc, ztrds ) 
    315             CALL wrk_dealloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    316309         ENDIF 
    317310         ! 
     
    323316         ENDIF 
    324317         ! 
    325          CALL wrk_dealloc(jpi, jpj, jpk, zn2 ) 
    326          CALL wrk_dealloc(jpi, jpj, jpk, 2, zab ) 
    327          CALL wrk_dealloc(jpk, zvn2 ) 
    328          CALL wrk_dealloc(jpk, 2, zvts, zvab ) 
    329318         ! 
    330319      ENDIF   ! IF( MOD( kt, nn_npc ) == 0 ) THEN 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/tranxt.F90

    r7753 r7910  
    4343   USE lbclnk          ! ocean lateral boundary conditions (or mpp link) 
    4444   USE prtctl          ! Print control 
    45    USE wrk_nemo        ! Memory allocation 
    4645   USE timing          ! Timing 
    4746#if defined key_agrif 
     
    9190      INTEGER  ::   ji, jj, jk, jn   ! dummy loop indices 
    9291      REAL(wp) ::   zfact            ! local scalars 
    93       REAL(wp), POINTER, DIMENSION(:,:,:) ::  ztrdt, ztrds 
     92      REAL(wp), DIMENSION(jpi,jpj,jpk) ::  ztrdt, ztrds 
    9493      !!---------------------------------------------------------------------- 
    9594      ! 
     
    120119      ! trends computation initialisation 
    121120      IF( l_trdtra )   THEN                     
    122          CALL wrk_alloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    123121         ztrdt(:,:,jk) = 0._wp 
    124122         ztrds(:,:,jk) = 0._wp 
     
    170168         CALL trd_tra( kt, 'TRA', jp_tem, jptra_atf, ztrdt ) 
    171169         CALL trd_tra( kt, 'TRA', jp_sal, jptra_atf, ztrds ) 
    172          CALL wrk_dealloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    173170      END IF 
    174171      ! 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/traqsr.F90

    r7753 r7910  
    3434   USE lib_mpp        ! MPP library 
    3535   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
    36    USE wrk_nemo       ! Memory Allocation 
    3736   USE timing         ! Timing 
    3837 
     
    113112      REAL(wp) ::   zCb, zCmax, zze, zpsi, zpsimax, zdelpsi, zCtot, zCze 
    114113      REAL(wp) ::   zlogc, zlogc2, zlogc3  
    115       REAL(wp), POINTER, DIMENSION(:,:)   :: zekb, zekg, zekr 
    116       REAL(wp), POINTER, DIMENSION(:,:,:) :: ze0, ze1, ze2, ze3, zea, ztrdt 
    117       REAL(wp), POINTER, DIMENSION(:,:,:) :: zetot, zchl3d 
     114      REAL(wp), DIMENSION(jpi,jpj)   :: zekb, zekg, zekr 
     115      REAL(wp), DIMENSION(jpi,jpj,jpk) :: ze0, ze1, ze2, ze3, zea, ztrdt 
     116      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zetot, zchl3d 
    118117      !!---------------------------------------------------------------------- 
    119118      ! 
     
    127126      ! 
    128127      IF( l_trdtra ) THEN      ! trends diagnostic: save the input temperature trend 
    129          CALL wrk_alloc( jpi,jpj,jpk,   ztrdt )  
    130128         ztrdt(:,:,:) = tsa(:,:,:,jp_tem) 
    131129      ENDIF 
     
    161159      CASE( np_RGB , np_RGBc )         !==  R-G-B fluxes  ==! 
    162160         ! 
    163          CALL wrk_alloc( jpi,jpj,       zekb, zekg, zekr        )  
    164          CALL wrk_alloc( jpi,jpj,jpk,   ze0, ze1, ze2, ze3, zea, zchl3d )  
    165161         ! 
    166162         IF( nqsr == np_RGBc ) THEN          !*  Variable Chlorophyll 
     
    240236         END DO 
    241237         ! 
    242          CALL wrk_dealloc( jpi,jpj,        zekb, zekg, zekr        )  
    243          CALL wrk_dealloc( jpi,jpj,jpk,   ze0, ze1, ze2, ze3, zea, zchl3d )  
    244238         ! 
    245239      CASE( np_2BD  )            !==  2-bands fluxes  ==! 
     
    282276      ! 
    283277      IF( iom_use('qsr3d') ) THEN      ! output the shortwave Radiation distribution 
    284          CALL wrk_alloc( jpi,jpj,jpk,   zetot ) 
    285278         ! 
    286279         zetot(:,:,nksr+1:jpk) = 0._wp     ! below ~400m set to zero 
     
    290283         CALL iom_put( 'qsr3d', zetot )   ! 3D distribution of shortwave Radiation 
    291284         ! 
    292          CALL wrk_dealloc( jpi,jpj,jpk,   zetot )  
    293285      ENDIF 
    294286      ! 
     
    301293         ztrdt(:,:,:) = tsa(:,:,:,jp_tem) - ztrdt(:,:,:) 
    302294         CALL trd_tra( kt, 'TRA', jp_tem, jptra_qsr, ztrdt ) 
    303          CALL wrk_dealloc( jpi,jpj,jpk,   ztrdt )  
    304295      ENDIF 
    305296      !                       ! print mean trends (used for debugging) 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/trasbc.F90

    r7788 r7910  
    3232   USE iom            ! xIOS server 
    3333   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
    34    USE wrk_nemo       ! Memory Allocation 
    3534   USE timing         ! Timing 
    3635 
     
    7574      INTEGER  ::   ikt, ikb              ! local integers 
    7675      REAL(wp) ::   zfact, z1_e3t, zdep   ! local scalar 
    77       REAL(wp), POINTER, DIMENSION(:,:,:) ::  ztrdt, ztrds 
     76      REAL(wp), DIMENSION(jpi,jpj,jpk) ::  ztrdt, ztrds 
    7877      !!---------------------------------------------------------------------- 
    7978      ! 
     
    8786      ! 
    8887      IF( l_trdtra ) THEN                    !* Save ta and sa trends 
    89          CALL wrk_alloc( jpi, jpj, jpk, ztrdt, ztrds )  
    9088         ztrdt(:,:,:) = tsa(:,:,:,jp_tem) 
    9189         ztrds(:,:,:) = tsa(:,:,:,jp_sal) 
     
    232230         CALL trd_tra( kt, 'TRA', jp_tem, jptra_nsr, ztrdt ) 
    233231         CALL trd_tra( kt, 'TRA', jp_sal, jptra_nsr, ztrds ) 
    234          CALL wrk_dealloc( jpi, jpj, jpk, ztrdt, ztrds )  
    235232      ENDIF 
    236233      ! 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/trazdf.F90

    r7753 r7910  
    2929   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
    3030   USE lib_mpp        ! MPP library 
    31    USE wrk_nemo       ! Memory allocation 
    3231   USE timing         ! Timing 
    3332 
     
    5958      ! 
    6059      INTEGER  ::   jk                   ! Dummy loop indices 
    61       REAL(wp), POINTER, DIMENSION(:,:,:) ::   ztrdt, ztrds   ! 3D workspace 
     60      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   ztrdt, ztrds   ! 3D workspace 
    6261      !!--------------------------------------------------------------------- 
    6362      ! 
     
    7170      ! 
    7271      IF( l_trdtra )   THEN                    !* Save ta and sa trends 
    73          CALL wrk_alloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    7472         ztrdt(:,:,:) = tsa(:,:,:,jp_tem) 
    7573         ztrds(:,:,:) = tsa(:,:,:,jp_sal) 
     
    9896         CALL trd_tra( kt, 'TRA', jp_tem, jptra_zdf, ztrdt ) 
    9997         CALL trd_tra( kt, 'TRA', jp_sal, jptra_zdf, ztrds ) 
    100          CALL wrk_dealloc( jpi, jpj, jpk, ztrdt, ztrds ) 
    10198      ENDIF 
    10299      !                                          ! print mean trends (used for debugging) 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/trazdf_exp.F90

    r6140 r7910  
    3232   USE in_out_manager ! I/O manager 
    3333   USE lib_mpp        ! MPP library 
    34    USE wrk_nemo       ! Memory Allocation 
    3534   USE timing         ! Timing 
    3635 
     
    8483      REAL(wp) ::  z1_ksts, ze3tr       ! local scalars 
    8584      REAL(wp) ::  ztra, ze3tb    !   -      - 
    86       REAL(wp), POINTER, DIMENSION(:,:,:) ::  ztb, zwf 
     85      REAL(wp), DIMENSION(jpi,jpj,jpk) ::  ztb, zwf 
    8786      !!--------------------------------------------------------------------- 
    8887      ! 
    8988      IF( nn_timing == 1 )  CALL timing_start('tra_zdf_exp') 
    9089      ! 
    91       CALL wrk_alloc( jpi,jpj,jpk,   ztb, zwf )  
    9290      ! 
    9391      IF( kt == kit000 )  THEN 
     
    144142      END DO                     ! end of tracer loop 
    145143      ! 
    146       CALL wrk_dealloc( jpi,jpj,jpk,   ztb, zwf )  
    147144      ! 
    148145      IF( nn_timing == 1 )  CALL timing_stop('tra_zdf_exp') 
  • branches/2017/dev_r7881_no_wrk_alloc/NEMOGCM/NEMO/OPA_SRC/TRA/trazdf_imp.F90

    r7753 r7910  
    3535   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
    3636   USE lib_mpp        ! MPP library 
    37    USE wrk_nemo       ! Memory Allocation 
    3837   USE timing         ! Timing 
    3938 
     
    8382      INTEGER  ::  ji, jj, jk, jn   ! dummy loop indices 
    8483      REAL(wp) ::  zrhs             ! local scalars 
    85       REAL(wp), POINTER, DIMENSION(:,:,:) ::  zwi, zwt, zwd, zws 
     84      REAL(wp), DIMENSION(jpi,jpj,jpk) ::  zwi, zwt, zwd, zws 
    8685      !!--------------------------------------------------------------------- 
    8786      ! 
    8887      IF( nn_timing == 1 )  CALL timing_start('tra_zdf_imp') 
    8988      ! 
    90       CALL wrk_alloc( jpi,jpj,jpk,   zwi, zwt, zwd, zws )  
    9189      ! 
    9290      IF( kt == kit000 )  THEN 
     
    208206      !                                               ! ================= ! 
    209207      ! 
    210       CALL wrk_dealloc( jpi,jpj,jpk,   zwi, zwt, zwd, zws )  
    211208      ! 
    212209      IF( nn_timing == 1 )  CALL timing_stop('tra_zdf_imp') 
Note: See TracChangeset for help on using the changeset viewer.