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/LIM_SRC_2/limthd_2.F90 – 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/LIM_SRC_2/limthd_2.F90

    r2715 r3294  
    2222   USE in_out_manager  ! I/O manager 
    2323   USE lib_mpp 
     24   USE wrk_nemo        ! work arrays 
    2425   USE iom             ! IOM library 
    2526   USE ice_2           ! LIM sea-ice variables 
     
    7576      !! References :   Goosse et al. 1996, Bul. Soc. Roy. Sc. Liege, 65, 87-90 
    7677      !!--------------------------------------------------------------------- 
    77       USE wrk_nemo, ONLY: wrk_in_use, wrk_not_released 
    78       USE wrk_nemo, ONLY: ztmp    => wrk_2d_1, & ! 2D workspace 
    79                           zqlbsbq => wrk_2d_2, & ! link with lead energy budget qldif 
    80                           zlicegr => wrk_2d_3    ! link with lateral ice growth  
    81       USE wrk_nemo, ONLY: zmsk => wrk_3d_4       ! 3D workspace 
    82       USE wrk_nemo, ONLY: zdvosif => wrk_2d_4, & !: Variation of volume at surface 
    83                           zdvobif => wrk_2d_5, & !: Variation of ice volume at the bottom ice     (outputs only) 
    84                           zdvolif => wrk_2d_6, & !: Total variation of ice volume                 (outputs only) 
    85                           zdvonif => wrk_2d_7, & !: Surface accretion Snow to Ice transformation  (outputs only) 
    86                           zdvomif => wrk_2d_8, & !: Bottom variation of ice volume due to melting (outputs only) 
    87                           zu_imasstr =>wrk_2d_9, & !: Sea-ice transport along i-axis at U-point     (outputs only)  
    88                           zv_imasstr =>wrk_2d_10   !: Sea-ice transport along j-axis at V-point     (outputs only)  
    89       !! 
    9078      INTEGER, INTENT(in) ::   kt     ! number of iteration 
    9179      !! 
     
    11098      REAL(wp) ::   zrhoij, zrhoijm1     ! temporary scalars 
    11199      REAL(wp) ::   zztmp                ! temporary scalars within a loop 
    112 !!$      REAL(wp), DIMENSION(jpi,jpj) ::   firic         !: IR flux over the ice            (outputs only) 
    113 !!$      REAL(wp), DIMENSION(jpi,jpj) ::   fcsic         !: Sensible heat flux over the ice (outputs only) 
    114 !!$      REAL(wp), DIMENSION(jpi,jpj) ::   fleic         !: Latent heat flux over the ice   (outputs only) 
    115 !!$      REAL(wp), DIMENSION(jpi,jpj) ::   qlatic        !: latent flux                     (outputs only) 
     100      REAL(wp), POINTER, DIMENSION(:,:)     ::   ztmp      ! 2D workspace 
     101      REAL(wp), POINTER, DIMENSION(:,:)     ::   zqlbsbq   ! link with lead energy budget qldif 
     102      REAL(wp), POINTER, DIMENSION(:,:)     ::   zlicegr   ! link with lateral ice growth  
     103!!$      REAL(wp), DIMENSION(:,:) ::   firic         ! IR flux over the ice            (outputs only) 
     104!!$      REAL(wp), DIMENSION(:,:) ::   fcsic         ! Sensible heat flux over the ice (outputs only) 
     105!!$      REAL(wp), DIMENSION(:,:) ::   fleic         ! Latent heat flux over the ice   (outputs only) 
     106!!$      REAL(wp), DIMENSION(:,:) ::   qlatic        ! latent flux                     (outputs only) 
     107      REAL(wp), POINTER, DIMENSION(:,:) ::   zdvosif       ! Variation of volume at surface                (outputs only) 
     108      REAL(wp), POINTER, DIMENSION(:,:) ::   zdvobif       ! Variation of ice volume at the bottom ice     (outputs only) 
     109      REAL(wp), POINTER, DIMENSION(:,:) ::   zdvolif       ! Total variation of ice volume                 (outputs only) 
     110      REAL(wp), POINTER, DIMENSION(:,:) ::   zdvonif       ! Surface accretion Snow to Ice transformation  (outputs only) 
     111      REAL(wp), POINTER, DIMENSION(:,:) ::   zdvomif       ! Bottom variation of ice volume due to melting (outputs only) 
     112      REAL(wp), POINTER, DIMENSION(:,:) ::   zu_imasstr    ! Sea-ice transport along i-axis at U-point     (outputs only)  
     113      REAL(wp), POINTER, DIMENSION(:,:) ::   zv_imasstr    ! Sea-ice transport along j-axis at V-point     (outputs only)  
     114      REAL(wp), POINTER, DIMENSION(:,:,:) ::   zmsk        ! 3D workspace 
    116115      !!------------------------------------------------------------------- 
    117116 
    118       IF( wrk_in_use(2, 1,2,3,4,5,6,7,8,9,10)   .OR.  & 
    119           wrk_in_use(3, 4)                    ) THEN 
    120          CALL ctl_stop('lim_thd_2 : requested workspace arrays unavailable')   ;   RETURN 
    121       ENDIF 
     117      CALL wrk_alloc( jpi, jpj, ztmp, zqlbsbq, zlicegr, zdvosif, zdvobif, zdvolif, zdvonif, zdvomif, zu_imasstr, zv_imasstr ) 
     118      CALL wrk_alloc( jpi, jpj, jpk, zmsk ) 
    122119 
    123120      IF( kt == nit000 )   CALL lim_thd_init_2  ! Initialization (first time-step only) 
     
    520517      ENDIF 
    521518       ! 
    522       IF( wrk_not_released(2, 1,2,3,4,5,6,7,8,9,10)   .OR.  & 
    523           wrk_not_released(3, 4)                    ) THEN 
    524          CALL ctl_stop('lim_thd_2 : failed to release workspace arrays') 
    525       ENDIF 
     519      CALL wrk_dealloc( jpi, jpj, ztmp, zqlbsbq, zlicegr, zdvosif, zdvobif, zdvolif, zdvonif, zdvomif, zu_imasstr, zv_imasstr ) 
     520      CALL wrk_dealloc( jpi, jpj, jpk, zmsk ) 
    526521      ! 
    527522    END SUBROUTINE lim_thd_2 
Note: See TracChangeset for help on using the changeset viewer.