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 1857 for branches/DEV_r1837_mass_heat_salt_fluxes/NEMO/LIM_SRC_2/limistate_2.F90 – NEMO

Ignore:
Timestamp:
2010-05-03T13:59:46+02:00 (14 years ago)
Author:
gm
Message:

ticket:#665 Reverting previous commit and going back to revision 1850

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/DEV_r1837_mass_heat_salt_fluxes/NEMO/LIM_SRC_2/limistate_2.F90

    r1855 r1857  
    44   !!              Initialisation of diagnostics ice variables 
    55   !!====================================================================== 
    6    !! History :   1.0  !  2001-04  (C. Ethe, G. Madec)  Original code 
    7    !!             2.0  !  2003-08  (G. Madec)  add lim_istate_init 
    8    !!              -   !  2004-04  (S. Theetten) initialization from a file 
    9    !!              -   !  2006-07  (S. Masson)  IOM to read the restart 
    10    !!              -   !  2007-10  (G. Madec)  surface module 
     6   !! History :   1.0  !  01-04  (C. Ethe, G. Madec)  Original code 
     7   !!             2.0  !  03-08  (G. Madec)  add lim_istate_init 
     8   !!                  !  04-04  (S. Theetten) initialization from a file 
     9   !!                  !  06-07  (S. Masson)  IOM to read the restart 
     10   !!                  !  07-10  (G. Madec)  surface module 
    1111   !!-------------------------------------------------------------------- 
    1212#if defined key_lim2 
     
    1414   !!   'key_lim2' :                                  LIM 2.0 sea-ice model 
    1515   !!---------------------------------------------------------------------- 
     16   !!---------------------------------------------------------------------- 
    1617   !!   lim_istate_2      :  Initialisation of diagnostics ice variables 
    1718   !!   lim_istate_init_2 :  initialization of ice state and namelist read 
    1819   !!---------------------------------------------------------------------- 
    19    USE oce              ! ocean variables 
    20    USE ice_2            ! LIM-2 variables 
    21    USE par_ice_2        ! LIM-2 ice parameters 
    22    USE dom_ice_2        ! LIM-2 domain 
    23    USE phycst           ! physical constants 
    24    USE eosbn2           ! equation of state 
    25    USE lbclnk           !  
    26    USE iom              ! 
    27    USE in_out_manager   ! 
     20   USE phycst 
     21   USE par_ice_2       ! ice parameters 
     22   USE dom_ice_2 
     23   USE eosbn2          ! equation of state 
     24   USE lbclnk 
     25   USE oce 
     26   USE ice_2 
     27   USE iom 
     28   USE in_out_manager 
    2829 
    2930   IMPLICIT NONE 
    3031   PRIVATE 
    3132 
    32    PUBLIC   lim_istate_2   ! routine called by lim_init_2.F90 
    33  
    34    !                                 !!! ** init namelist (namiceini) ** 
    35    LOGICAL  ::   ln_limini = .FALSE.  ! Ice initialization state 
     33   PUBLIC lim_istate_2      ! routine called by lim_init_2.F90 
     34 
     35!!! ** init namelist (namiceini) ** 
     36   LOGICAL  ::   ln_limini = .FALSE.  !: Ice initialization state 
    3637   REAL(wp) ::   ttest     = 2.0      ! threshold water temperature for initial sea ice 
    3738   REAL(wp) ::   hninn     = 0.5      ! initial snow thickness in the north 
     
    4445   REAL(wp) ::   zero      = 0.e0     ! constant value = 0 
    4546   REAL(wp) ::   zone      = 1.e0     ! constant value = 1 
    46     
    47    !!---------------------------------------------------------------------- 
    48    !! NEMO/LIM 3.3,  UCL-LOCEAN-IPSL (2010)  
     47   !!---------------------------------------------------------------------- 
     48   !!   LIM 2.0,  UCL-LOCEAN-IPSL (2006)  
    4949   !! $Id$ 
    5050   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) 
     
    6262      !!                or from arbitrary sea-ice conditions 
    6363      !!-------------------------------------------------------------------- 
    64       INTEGER  ::   ji, jj, jk   ! dummy loop indices 
    65       REAL(wp) ::   zidto        ! temporary scalar 
     64      INTEGER  ::   ji, jj, jk                ! dummy loop indices 
     65      REAL(wp) ::   zidto                     ! temporary scalar 
    6666      !-------------------------------------------------------------------- 
    6767  
     
    6969 
    7070      IF( .NOT. ln_limini ) THEN   
    71          ! 
     71          
    7272         tfu(:,:) = tfreez( sn(:,:,1) ) * tmask(:,:,1)       ! freezing/melting point of sea water [Celcius] 
    73          ! 
     73 
    7474         DO jj = 1, jpj 
    7575            DO ji = 1, jpi 
     
    126126 
    127127      !-- lateral boundary conditions 
    128       CALL lbc_lnk( hicif, 'T', 1. )   ;   CALL lbc_lnk( frld , 'T', 1. ) 
     128      CALL lbc_lnk( hicif, 'T', 1. ) 
     129      CALL lbc_lnk( frld , 'T', 1. ) 
    129130 
    130131      ! C A U T I O N  frld = 1 over land and lbc_lnk put zero along  
     
    139140      CALL lbc_lnk( fsbbq  , 'T', 1. ) 
    140141      CALL lbc_lnk( qstoif , 'T', 1. ) 
    141       ! 
     142 
    142143   END SUBROUTINE lim_istate_2 
    143144 
     
    150151      !! 
    151152      !! ** Method  :   Read the namiceini namelist and check the parameter  
    152       !!              values called at the first timestep (nit000) 
     153      !!       values called at the first timestep (nit000) 
    153154      !! 
    154155      !! ** input   :   Namelist namiceini 
    155156      !!------------------------------------------------------------------- 
    156       INTEGER ::   ji,jj      ! dummy loop indices 
    157       INTEGER ::   inum_ice   ! temporary integer 
    158       !! 
     157      INTEGER :: inum_ice 
     158      INTEGER :: ji,jj 
     159 
    159160      NAMELIST/namiceini/ ln_limini, ttest, hninn, hginn, alinn, & 
    160          &                                  hnins, hgins, alins 
     161         &                hnins, hgins, alins 
    161162      !!------------------------------------------------------------------- 
    162163      ! 
     
    164165      READ   ( numnam_ice , namiceini ) 
    165166      ! 
    166       IF(lwp) THEN                        ! control print 
     167      IF(lwp) THEN 
    167168         WRITE(numout,*) 
    168169         WRITE(numout,*) 'lim_istate_init_2 : ice parameters inititialisation ' 
     
    178179      ENDIF 
    179180 
    180       IF( ln_limini ) THEN                ! Ice initialization using input file 
     181      IF( ln_limini ) THEN                      ! Ice initialization using input file 
    181182         ! 
    182183         CALL iom_open( 'Ice_initialization.nc', inum_ice ) 
     
    185186            IF(lwp) WRITE(numout,*) 
    186187            IF(lwp) WRITE(numout,*) '                  ice state initialization with : Ice_initialization.nc' 
    187             ! 
     188             
    188189            CALL iom_get( inum_ice, jpdom_data, 'hicif', hicif )       
    189190            CALL iom_get( inum_ice, jpdom_data, 'hsnif', hsnif )       
     
    191192            CALL iom_get( inum_ice, jpdom_data, 'ts'   , sist  ) 
    192193            CALL iom_get( inum_ice, jpdom_unknown, 'tbif', tbif(1:nlci,1:nlcj,:),   & 
    193                        kstart = (/ mig(1),mjg(1),1 /), kcount = (/ nlci,nlcj,jplayersp1 /) ) 
     194                 &        kstart = (/ mig(1),mjg(1),1 /), kcount = (/ nlci,nlcj,jplayersp1 /) ) 
    194195            ! put some values in the extra-halo... 
    195196            DO jj = nlcj+1, jpj   ;   tbif(1:nlci,jj,:) = tbif(1:nlci,nlej,:)   ;   END DO 
    196197            DO ji = nlci+1, jpi   ;   tbif(ji    ,: ,:) = tbif(nlei  ,:   ,:)   ;   END DO 
    197             ! 
     198 
    198199            CALL iom_close( inum_ice) 
    199200            ! 
     
    207208   !!   Default option :         Empty module      NO LIM 2.0 sea-ice model 
    208209   !!---------------------------------------------------------------------- 
     210CONTAINS 
     211   SUBROUTINE lim_istate_2        ! Empty routine 
     212   END SUBROUTINE lim_istate_2 
    209213#endif 
    210214 
Note: See TracChangeset for help on using the changeset viewer.