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 13472 for NEMO/trunk/src/ICE/icestp.F90 – NEMO

Ignore:
Timestamp:
2020-09-16T15:05:19+02:00 (4 years ago)
Author:
smasson
Message:

trunk: commit changes from r4.0-HEAD from 13284 to 13449, see #2523

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/src/ICE/icestp.F90

    r13216 r13472  
    201201         IF( lrst_ice )                 CALL ice_rst_write( kt )      ! -- Ice restart file  
    202202         ! 
    203          IF( ln_icectl )                CALL ice_ctl( kt )            ! -- alerts in case of model crash 
     203         IF( ln_icectl )                CALL ice_ctl( kt )            ! -- Control checks 
    204204         ! 
    205205      ENDIF   ! End sea-ice time step only 
     
    224224      INTEGER, INTENT(in) :: Kbb, Kmm, Kaa 
    225225      ! 
    226       INTEGER :: ji, jj, ierr 
     226      INTEGER ::   ierr 
    227227      !!---------------------------------------------------------------------- 
    228228      IF(lwp) WRITE(numout,*) 
     
    252252      IF( ierr /= 0 )   CALL ctl_stop('STOP', 'ice_init : unable to allocate ice arrays') 
    253253      ! 
    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( .NOT. ln_rstart ) THEN              ! start from rest: sea-ice deduced from sst 
    260          CALL ice_istate_init 
    261          CALL ice_istate( nit000, Kbb, Kmm, Kaa ) 
    262       ELSE                                    ! start from a restart file 
    263          CALL ice_rst_read( Kbb, Kmm, Kaa ) 
    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       ! 
    281254      !                                ! set max concentration in both hemispheres 
    282255      WHERE( gphit(:,:) > 0._wp )   ;   rn_amax_2d(:,:) = rn_amax_n  ! NH 
    283256      ELSEWHERE                     ;   rn_amax_2d(:,:) = rn_amax_s  ! SH 
    284257      END WHERE 
    285  
     258      ! 
     259      CALL ice_itd_init                ! ice thickness distribution initialization 
     260      ! 
     261      CALL ice_thd_init                ! set ice thermodynics parameters (clem: important to call it first for melt ponds) 
     262      ! 
     263      !                                ! Initial sea-ice state 
     264      CALL ice_istate_init 
     265      IF ( ln_rstart .OR. nn_iceini_file == 2 ) THEN 
     266         CALL ice_rst_read( Kbb, Kmm, Kaa )         ! start from a restart file 
     267      ELSE 
     268         CALL ice_istate( nit000, Kbb, Kmm, Kaa )   ! start from rest or read a file 
     269      ENDIF 
     270      CALL ice_var_glo2eqv 
     271      CALL ice_var_agg(1) 
     272      ! 
     273      CALL ice_sbc_init                ! set ice-ocean and ice-atm. coupling parameters 
     274      ! 
     275      CALL ice_dyn_init                ! set ice dynamics parameters 
     276      ! 
     277      CALL ice_update_init             ! ice surface boundary condition 
     278      ! 
     279      CALL ice_alb_init                ! ice surface albedo 
     280      ! 
     281      CALL ice_dia_init                ! initialization for diags 
     282      ! 
     283      fr_i  (:,:)   = at_i(:,:)        ! initialisation of sea-ice fraction 
     284      tn_ice(:,:,:) = t_su(:,:,:)      ! initialisation of surface temp for coupled simu 
     285      ! 
    286286      IF( ln_rstart )   CALL iom_close( numrir )  ! close input ice restart file 
    287287      ! 
     
    366366      v_s_b (:,:,:)   = v_s (:,:,:)     ! snow volume 
    367367      sv_i_b(:,:,:)   = sv_i(:,:,:)     ! salt content 
    368       oa_i_b(:,:,:)   = oa_i(:,:,:)     ! areal age content 
    369368      e_s_b (:,:,:,:) = e_s (:,:,:,:)   ! snow thermal energy 
    370369      e_i_b (:,:,:,:) = e_i (:,:,:,:)   ! ice thermal energy 
     
    375374         h_i_b(:,:,:) = 0._wp 
    376375         h_s_b(:,:,:) = 0._wp 
    377       END WHERE 
    378        
    379       WHERE( a_ip(:,:,:) >= epsi20 ) 
    380          h_ip_b(:,:,:) = v_ip(:,:,:) / a_ip(:,:,:)   ! ice pond thickness 
    381       ELSEWHERE 
    382          h_ip_b(:,:,:) = 0._wp 
    383376      END WHERE 
    384377      ! 
     
    424417      hfx_res(:,:) = 0._wp   ;   hfx_sub(:,:) = 0._wp 
    425418      hfx_spr(:,:) = 0._wp   ;   hfx_dif(:,:) = 0._wp 
    426       hfx_err_rem(:,:) = 0._wp 
    427419      hfx_err_dif(:,:) = 0._wp 
    428420      wfx_err_sub(:,:) = 0._wp 
     
    445437      diag_trp_ei(:,:) = 0._wp   ;   diag_trp_es(:,:) = 0._wp 
    446438      diag_trp_sv(:,:) = 0._wp 
    447  
     439       
    448440   END SUBROUTINE diag_set0 
    449441 
Note: See TracChangeset for help on using the changeset viewer.