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 13284 for NEMO/releases/r4.0/r4.0-HEAD/src/ICE/icestp.F90 – NEMO

Ignore:
Timestamp:
2020-07-09T17:12:23+02:00 (4 years ago)
Author:
smasson
Message:

4.0-HEAD: merge 4.0-HEAD_r12713_clem_dan_fixcpl into 4.0-HEAD

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/releases/r4.0/r4.0-HEAD/src/ICE/icestp.F90

    r11536 r13284  
    202202         IF( lrst_ice )                 CALL ice_rst_write( kt )      ! -- Ice restart file  
    203203         ! 
    204          IF( ln_icectl )                CALL ice_ctl( kt )            ! -- alerts in case of model crash 
     204         IF( ln_icectl )                CALL ice_ctl( kt )            ! -- Control checks 
    205205         ! 
    206206      ENDIF   ! End sea-ice time step only 
     
    223223      !! ** purpose :   Initialize sea-ice parameters 
    224224      !!---------------------------------------------------------------------- 
    225       INTEGER :: ji, jj, ierr 
     225      INTEGER :: jl, ierr 
    226226      !!---------------------------------------------------------------------- 
    227227      IF(lwp) WRITE(numout,*) 
     
    247247      IF( ierr /= 0 )   CALL ctl_stop('STOP', 'ice_init : unable to allocate ice arrays') 
    248248      ! 
    249       CALL ice_itd_init                ! ice thickness distribution initialization 
    250       ! 
    251       CALL ice_thd_init                ! set ice thermodynics parameters (clem: important to call it first for melt ponds) 
    252       ! 
    253       !                                ! Initial sea-ice state 
    254       IF( .NOT. ln_rstart ) THEN              ! start from rest: sea-ice deduced from sst 
    255          CALL ice_istate_init 
    256          CALL ice_istate( nit000 ) 
    257       ELSE                                    ! start from a restart file 
    258          CALL ice_rst_read 
    259       ENDIF 
    260       CALL ice_var_glo2eqv 
    261       CALL ice_var_agg(1) 
    262       ! 
    263       CALL ice_sbc_init                ! set ice-ocean and ice-atm. coupling parameters 
    264       ! 
    265       CALL ice_dyn_init                ! set ice dynamics parameters 
    266       ! 
    267       CALL ice_update_init             ! ice surface boundary condition 
    268       ! 
    269       CALL ice_alb_init                ! ice surface albedo 
    270       ! 
    271       CALL ice_dia_init                ! initialization for diags 
    272       ! 
    273       fr_i  (:,:)   = at_i(:,:)        ! initialisation of sea-ice fraction 
    274       tn_ice(:,:,:) = t_su(:,:,:)      ! initialisation of surface temp for coupled simu 
    275       ! 
    276249      !                                ! set max concentration in both hemispheres 
    277250      WHERE( gphit(:,:) > 0._wp )   ;   rn_amax_2d(:,:) = rn_amax_n  ! NH 
    278251      ELSEWHERE                     ;   rn_amax_2d(:,:) = rn_amax_s  ! SH 
    279252      END WHERE 
    280  
     253      ! 
     254      CALL ice_itd_init                ! ice thickness distribution initialization 
     255      ! 
     256      CALL ice_thd_init                ! set ice thermodynics parameters (clem: important to call it first for melt ponds) 
     257      ! 
     258      !                                ! Initial sea-ice state 
     259      IF ( ln_rstart .OR. nn_iceini_file == 2 ) THEN 
     260         CALL ice_rst_read                      ! start from a restart file 
     261      ELSE 
     262         CALL ice_istate_init 
     263         CALL ice_istate( nit000 )              ! start from rest or read a file 
     264      ENDIF 
     265      CALL ice_var_glo2eqv 
     266      CALL ice_var_agg(1) 
     267      ! 
     268      CALL ice_sbc_init                ! set ice-ocean and ice-atm. coupling parameters 
     269      ! 
     270      CALL ice_dyn_init                ! set ice dynamics parameters 
     271      ! 
     272      CALL ice_update_init             ! ice surface boundary condition 
     273      ! 
     274      CALL ice_alb_init                ! ice surface albedo 
     275      ! 
     276      CALL ice_dia_init                ! initialization for diags 
     277      ! 
     278      fr_i  (:,:)   = at_i(:,:)        ! initialisation of sea-ice fraction 
     279      tn_ice(:,:,:) = t_su(:,:,:)      ! initialisation of surface temp for coupled simu 
     280      ! 
    281281      IF( ln_rstart )   CALL iom_close( numrir )  ! close input ice restart file 
    282282      ! 
     
    363363      v_s_b (:,:,:)   = v_s (:,:,:)     ! snow volume 
    364364      sv_i_b(:,:,:)   = sv_i(:,:,:)     ! salt content 
    365       oa_i_b(:,:,:)   = oa_i(:,:,:)     ! areal age content 
    366365      e_s_b (:,:,:,:) = e_s (:,:,:,:)   ! snow thermal energy 
    367366      e_i_b (:,:,:,:) = e_i (:,:,:,:)   ! ice thermal energy 
     
    372371         h_i_b(:,:,:) = 0._wp 
    373372         h_s_b(:,:,:) = 0._wp 
    374       END WHERE 
    375        
    376       WHERE( a_ip(:,:,:) >= epsi20 ) 
    377          h_ip_b(:,:,:) = v_ip(:,:,:) / a_ip(:,:,:)   ! ice pond thickness 
    378       ELSEWHERE 
    379          h_ip_b(:,:,:) = 0._wp 
    380373      END WHERE 
    381374      ! 
     
    421414      hfx_res(:,:) = 0._wp   ;   hfx_sub(:,:) = 0._wp 
    422415      hfx_spr(:,:) = 0._wp   ;   hfx_dif(:,:) = 0._wp 
    423       hfx_err_rem(:,:) = 0._wp 
    424416      hfx_err_dif(:,:) = 0._wp 
    425417      wfx_err_sub(:,:) = 0._wp 
     
    442434      diag_trp_ei(:,:) = 0._wp   ;   diag_trp_es(:,:) = 0._wp 
    443435      diag_trp_sv(:,:) = 0._wp 
    444  
     436       
    445437   END SUBROUTINE diag_set0 
    446438 
Note: See TracChangeset for help on using the changeset viewer.