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 8373 for branches/2017/dev_r8183_ICEMODEL/NEMOGCM/NEMO/LIM_SRC_3/limthd_lac.F90 – NEMO

Ignore:
Timestamp:
2017-07-25T19:44:54+02:00 (7 years ago)
Author:
clem
Message:

remove most of wrk_alloc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2017/dev_r8183_ICEMODEL/NEMOGCM/NEMO/LIM_SRC_3/limthd_lac.F90

    r8342 r8373  
    8383      REAL(wp) ::   zv_newfra 
    8484   
    85       INTEGER , POINTER, DIMENSION(:) ::   jcat        ! indexes of categories where new ice grows 
    86       REAL(wp), POINTER, DIMENSION(:) ::   zswinew     ! switch for new ice or not 
    87  
    88       REAL(wp), POINTER, DIMENSION(:) ::   zv_newice   ! volume of accreted ice 
    89       REAL(wp), POINTER, DIMENSION(:) ::   za_newice   ! fractional area of accreted ice 
    90       REAL(wp), POINTER, DIMENSION(:) ::   zh_newice   ! thickness of accreted ice 
    91       REAL(wp), POINTER, DIMENSION(:) ::   ze_newice   ! heat content of accreted ice 
    92       REAL(wp), POINTER, DIMENSION(:) ::   zs_newice   ! salinity of accreted ice 
    93       REAL(wp), POINTER, DIMENSION(:) ::   zo_newice   ! age of accreted ice 
    94       REAL(wp), POINTER, DIMENSION(:) ::   zdv_res     ! residual volume in case of excessive heat budget 
    95       REAL(wp), POINTER, DIMENSION(:) ::   zda_res     ! residual area in case of excessive heat budget 
    96       REAL(wp), POINTER, DIMENSION(:) ::   zat_i_1d    ! total ice fraction     
    97       REAL(wp), POINTER, DIMENSION(:) ::   zv_frazb    ! accretion of frazil ice at the ice bottom 
    98       REAL(wp), POINTER, DIMENSION(:) ::   zvrel_1d    ! relative ice / frazil velocity (1D vector) 
    99  
    100       REAL(wp), POINTER, DIMENSION(:,:) ::   zv_b      ! old volume of ice in category jl 
    101       REAL(wp), POINTER, DIMENSION(:,:) ::   za_b      ! old area of ice in category jl 
    102       REAL(wp), POINTER, DIMENSION(:,:) ::   za_i_1d   ! 1-D version of a_i 
    103       REAL(wp), POINTER, DIMENSION(:,:) ::   zv_i_1d   ! 1-D version of v_i 
    104       REAL(wp), POINTER, DIMENSION(:,:) ::   zsmv_i_1d ! 1-D version of smv_i 
    105  
    106       REAL(wp), POINTER, DIMENSION(:,:,:) ::   ze_i_1d !: 1-D version of e_i 
    107  
    108       REAL(wp), POINTER, DIMENSION(:,:) ::   zvrel     ! relative ice / frazil velocity 
     85      INTEGER , DIMENSION(jpij) ::   jcat        ! indexes of categories where new ice grows 
     86      REAL(wp), DIMENSION(jpij) ::   zswinew     ! switch for new ice or not 
     87 
     88      REAL(wp), DIMENSION(jpij) ::   zv_newice   ! volume of accreted ice 
     89      REAL(wp), DIMENSION(jpij) ::   za_newice   ! fractional area of accreted ice 
     90      REAL(wp), DIMENSION(jpij) ::   zh_newice   ! thickness of accreted ice 
     91      REAL(wp), DIMENSION(jpij) ::   ze_newice   ! heat content of accreted ice 
     92      REAL(wp), DIMENSION(jpij) ::   zs_newice   ! salinity of accreted ice 
     93      REAL(wp), DIMENSION(jpij) ::   zo_newice   ! age of accreted ice 
     94      REAL(wp), DIMENSION(jpij) ::   zdv_res     ! residual volume in case of excessive heat budget 
     95      REAL(wp), DIMENSION(jpij) ::   zda_res     ! residual area in case of excessive heat budget 
     96      REAL(wp), DIMENSION(jpij) ::   zat_i_1d    ! total ice fraction     
     97      REAL(wp), DIMENSION(jpij) ::   zv_frazb    ! accretion of frazil ice at the ice bottom 
     98      REAL(wp), DIMENSION(jpij) ::   zvrel_1d    ! relative ice / frazil velocity (1D vector) 
     99 
     100      REAL(wp), DIMENSION(jpij,jpl) ::   zv_b      ! old volume of ice in category jl 
     101      REAL(wp), DIMENSION(jpij,jpl) ::   za_b      ! old area of ice in category jl 
     102      REAL(wp), DIMENSION(jpij,jpl) ::   za_i_1d   ! 1-D version of a_i 
     103      REAL(wp), DIMENSION(jpij,jpl) ::   zv_i_1d   ! 1-D version of v_i 
     104      REAL(wp), DIMENSION(jpij,jpl) ::   zsmv_i_1d ! 1-D version of smv_i 
     105 
     106      REAL(wp), DIMENSION(jpij,nlay_i,jpl) ::   ze_i_1d !: 1-D version of e_i 
     107 
     108      REAL(wp), DIMENSION(jpi,jpj) ::   zvrel     ! relative ice / frazil velocity 
    109109 
    110110      REAL(wp) :: zcai = 1.4e-3_wp                     ! ice-air drag (clem: should be dependent on coupling/forcing used) 
    111111      !!-----------------------------------------------------------------------! 
    112  
    113       CALL wrk_alloc( jpij, jcat )   ! integer 
    114       CALL wrk_alloc( jpij, zswinew, zv_newice, za_newice, zh_newice, ze_newice, zs_newice, zo_newice ) 
    115       CALL wrk_alloc( jpij, zdv_res, zda_res, zat_i_1d, zv_frazb, zvrel_1d ) 
    116       CALL wrk_alloc( jpij,jpl, zv_b, za_b, za_i_1d, zv_i_1d, zsmv_i_1d ) 
    117       CALL wrk_alloc( jpij,nlay_i,jpl, ze_i_1d ) 
    118       CALL wrk_alloc( jpi,jpj, zvrel ) 
    119112 
    120113      CALL lim_var_agg(1) 
     
    211204         END DO  
    212205         !  
    213          CALL lbc_lnk( zvrel, 'T', 1. ) 
    214          CALL lbc_lnk( hicol, 'T', 1. ) 
     206         CALL lbc_lnk_multi( zvrel, 'T', 1., hicol, 'T', 1.  ) 
    215207 
    216208      ENDIF ! End of computation of frazil ice collection thickness 
     
    234226      END DO 
    235227 
    236       ! debug point to follow 
    237       jiindex_1d = 0 
    238       IF( ln_limctl ) THEN 
    239          DO ji = mi0(iiceprt), mi1(iiceprt) 
    240             DO jj = mj0(jiceprt), mj1(jiceprt) 
    241                IF ( qlead(ji,jj)  <  0._wp ) THEN 
    242                   jiindex_1d = (jj - 1) * jpi + ji 
    243                ENDIF 
    244             END DO 
    245          END DO 
    246       ENDIF 
    247     
    248       IF( ln_limctl ) WRITE(numout,*) 'lim_thd_lac : nidx = ', nidx 
    249  
    250228      !------------------------------ 
    251229      ! Move from 2-D to 1-D vectors 
     
    497475      ENDIF ! nidx > 0 
    498476      ! 
    499       CALL wrk_dealloc( jpij, jcat )   ! integer 
    500       CALL wrk_dealloc( jpij, zswinew, zv_newice, za_newice, zh_newice, ze_newice, zs_newice, zo_newice ) 
    501       CALL wrk_dealloc( jpij, zdv_res, zda_res, zat_i_1d, zv_frazb, zvrel_1d ) 
    502       CALL wrk_dealloc( jpij,jpl, zv_b, za_b, za_i_1d, zv_i_1d, zsmv_i_1d ) 
    503       CALL wrk_dealloc( jpij,nlay_i,jpl, ze_i_1d ) 
    504       CALL wrk_dealloc( jpi,jpj, zvrel ) 
    505       ! 
    506477   END SUBROUTINE lim_thd_lac 
    507478 
Note: See TracChangeset for help on using the changeset viewer.