- Timestamp:
- 2012-11-22T18:52:43+01:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2012/dev_NOC_2012_rev3555/NEMOGCM/NEMO/LIM_SRC_2/limdmp_2.F90
r3625 r3635 11 11 !! 'key_lim2' LIM 2.0 sea-ice model 12 12 !!---------------------------------------------------------------------- 13 !! lim_dmp_2 13 !! lim_dmp_2 : ice model damping 14 14 !!---------------------------------------------------------------------- 15 USE ice_2 15 USE ice_2 ! ice variables 16 16 USE sbc_oce, ONLY : nn_fsbc ! for fldread 17 USE dom_oce 18 USE fldread 19 USE in_out_manager 20 USE lib_mpp 17 USE dom_oce ! for mi0; mi1 etc ... 18 USE fldread ! read input fields 19 USE in_out_manager ! I/O manager 20 USE lib_mpp ! MPP library 21 21 USE lib_fortran ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined) 22 22 … … 26 26 PUBLIC lim_dmp_2 ! called by sbc_ice_lim2 27 27 28 REAL(wp), DIMENSION(:,:,:), ALLOCATABLE :: resto_ice ! restoring coeff. on ICE [s-1] 29 30 INTEGER, PARAMETER :: jp_hicif = 1 , jp_frld = 2 31 TYPE(FLD), ALLOCATABLE, DIMENSION(:) :: sf_icedmp ! structure of ice damping input 28 INTEGER , PARAMETER :: jp_hicif = 1 , jp_frld = 2 29 REAL(wp) , ALLOCATABLE, DIMENSION(:,:,:) :: resto_ice ! restoring coeff. on ICE [s-1] 30 TYPE(FLD), ALLOCATABLE, DIMENSION(:) :: sf_icedmp ! structure of ice damping input 32 31 33 32 !! * Substitution … … 44 43 !! *** ROUTINE lim_dmp_2 *** 45 44 !! 46 !! ** purpose : ice model damping : restoring ice thickness and fraction leads45 !! ** purpose : restore ice thickness and lead fraction 47 46 !! 48 !! ** method : the key_tradmp must be used to compute resto(:,:,1) coef. 47 !! ** method : restore ice thickness and lead fraction using a restoring 48 !! coefficient defined by the user in lim_dmp_init 49 !! 50 !! ** Action : - update hicif and frld 51 !! 49 52 !!--------------------------------------------------------------------- 50 53 INTEGER, INTENT(in) :: kt ! ocean time-step … … 54 57 !!--------------------------------------------------------------------- 55 58 ! 56 IF (kt == nit000)THEN59 IF( kt == nit000 ) THEN 57 60 IF(lwp) WRITE(numout,*) 58 61 IF(lwp) WRITE(numout,*) 'lim_dmp_2 : Ice thickness and ice concentration restoring' … … 72 75 & hicif(:,:) - rdt_ice * resto_ice(:,:,1) * ( hicif(:,:) - sf_icedmp(jp_hicif)%fnow(:,:,1) ) ) 73 76 !CDIR COLLAPSE 74 hicif(:,:) = MAX( 0._wp, MIN( 1._wp, & ! 0<= frld<=1 values which blow the run up77 frld (:,:) = MAX( 0._wp, MIN( 1._wp, & ! 0<= frld<=1 values which blow the run up 75 78 & frld (:,:) - rdt_ice * resto_ice(:,:,1) * ( frld (:,:) - sf_icedmp(jp_frld )%fnow(:,:,1) ) ) ) 76 79 ! … … 84 87 !! *** ROUTINE lim_dmp_init *** 85 88 !! 86 !! ** Purpose : Initialization for the ice thickness and concentration 87 !! restoring 88 !! restoring will be used. It is used to mimic ice open 89 !! boundaries. 89 !! ** Purpose : set the coefficient for the ice thickness and lead fraction restoring 90 90 !! 91 !! ** Method : ????? 91 !! ** Method : restoring is used to mimic ice open boundaries. 92 !! the restoring coef. (a 2D array) has to be defined by the user. 93 !! here is given as an example a restoring along north and south boundaries 92 94 !! 93 95 !! ** Action : define resto_ice(:,:,1)
Note: See TracChangeset
for help on using the changeset viewer.