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.
iceini_2.F90 in branches/DEV_r1837_mass_heat_salt_fluxes/NEMO/LIM_SRC_2 – NEMO

source: branches/DEV_r1837_mass_heat_salt_fluxes/NEMO/LIM_SRC_2/iceini_2.F90 @ 3147

Last change on this file since 3147 was 1859, checked in by gm, 14 years ago

ticket:#665 step 2 & 3: heat content in qns & new forcing terms

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 4.4 KB
RevLine 
[821]1MODULE iceini_2
[3]2   !!======================================================================
3   !!                       ***  MODULE iceini   ***
[821]4   !!   Sea-ice model : LIM 2.0 Sea ice model Initialization
[3]5   !!======================================================================
[1857]6   !! History :   1.0  !  02-08  (G. Madec)  F90: Free form and modules
7   !!             2.0  !  03-08  (C. Ethe)  add ice_run
[508]8   !!----------------------------------------------------------------------
[821]9#if defined key_lim2
[3]10   !!----------------------------------------------------------------------
[821]11   !!   'key_lim2' :                                  LIM 2.0 sea-ice model
[3]12   !!----------------------------------------------------------------------
[1859]13   !!   ice_init_2     : LIM-2 sea-ice model initialization
[508]14   !!----------------------------------------------------------------------
[1859]15   USE dom_oce         ! ocean domain
16   USE dom_ice_2       ! LIM-2 : ice domain
17   USE sbc_oce         ! ocean surface boundary condition
18   USE sbc_ice         ! ice   surface boundary condition
19   USE phycst          ! physical constant
20   USE ice_2           ! LIM-2 variables
21   USE limmsh_2        ! LIM-2 mesh
22   USE limistate_2     ! LIM-2 inital state
23   USE limrst_2        ! LIM-2 restart
24   USE in_out_manager  ! I/O manager
[508]25     
[3]26   IMPLICIT NONE
27   PRIVATE
28
[1859]29   PUBLIC   ice_init_2   ! called by sbcice_lim_2.F90
[3]30
31   !!----------------------------------------------------------------------
[1859]32   !! NEMO/LIM 3.3,  UCL-LOCEAN-IPSL (2010)
[1156]33   !! $Id$
[1859]34   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
[3]35   !!----------------------------------------------------------------------
36
37CONTAINS
38
[821]39   SUBROUTINE ice_init_2
[3]40      !!----------------------------------------------------------------------
[821]41      !!                  ***  ROUTINE ice_init_2  ***
[3]42      !!
[1859]43      !! ** purpose :   LIM-2 sea-ice model initialisation
44      !!
45      !! ** input   :   namelist_ice file
46      !!                namelist namicerun (inside namelist_ice file)
[3]47      !!----------------------------------------------------------------------
[1859]48      NAMELIST/namicerun/ cn_icerst_in, cn_icerst_out, ln_limdyn, ln_limdmp, acrit, hsndif, hicdif
49      !!-------------------------------------------------------------------
[1857]50      !
[1859]51      !                                    ! Open the ice namelist file
52      CALL ctl_opn( numnam_ice, 'namelist_ice', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp )   
[1857]53      !
[1859]54      REWIND ( numnam_ice )                ! Read Namelist namicerun
[3]55      READ   ( numnam_ice , namicerun )
[1859]56      !
57      IF(lwp) THEN                         ! control print
[3]58         WRITE(numout,*)
59         WRITE(numout,*) 'ice_run : ice share parameters for dynamics/advection/thermo of sea-ice'
60         WRITE(numout,*) ' ~~~~~~'
[76]61         WRITE(numout,*) '   switch for ice dynamics (1) or not (0)      ln_limdyn   = ', ln_limdyn
[675]62         WRITE(numout,*) '   Ice damping                                 ln_limdmp   = ', ln_limdmp
[76]63         WRITE(numout,*) '   minimum fraction for leads in the NH (SH)  acrit(1/2)   = ', acrit(:)
[3]64         WRITE(numout,*) '   computation of temp. in snow (=0) or not (=9999) hsndif = ', hsndif
65         WRITE(numout,*) '   computation of temp. in ice  (=0) or not (=9999) hicdif = ', hicdif
66      ENDIF
[1859]67      !         
68      rdt_ice    = nn_fsbc * rdttra(1)     ! set ice time step to surface tracer time step
69      r1_rdt_ice = 1.e0 / rdt_ice
[508]70      !
[1859]71      CALL lim_msh_2                       ! ice mesh initialization
72      !
73      !                                    ! Initial sea-ice state
74      IF( .NOT.ln_rstart ) THEN   ;   CALL lim_istate_2        ! start from rest: sea-ice deduced from sst
75      ELSE                        ;   CALL lim_rst_read_2      ! start from a restart file
76      ENDIF
77      !
78      tn_ice(:,:,1) = sist(:,:)            ! set initial ice temperature 
79      !
80      fr_i  (:,:) = 1.0 - frld(:,:)        ! set initial ice fraction   
81      !
82   END SUBROUTINE ice_init_2
[3]83
84#else
85   !!----------------------------------------------------------------------
[821]86   !!   Default option :        Empty module       NO LIM 2.0 sea-ice model
[3]87   !!----------------------------------------------------------------------
[1857]88CONTAINS
89   SUBROUTINE ice_init_2      ! Empty routine
90   END SUBROUTINE ice_init_2
[3]91#endif
92
93   !!======================================================================
[821]94END MODULE iceini_2
Note: See TracBrowser for help on using the repository browser.