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 13571 for NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icestp.F90 – NEMO

Ignore:
Timestamp:
2020-10-06T18:17:44+02:00 (4 years ago)
Author:
mocavero
Message:

Align branch with trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/ICE/icestp.F90

    r13216 r13571  
    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 diag_set0                   ! set diag of mass, heat and salt fluxes to 0: needed for Agrif child grids 
     260      ! 
     261      CALL ice_itd_init                ! ice thickness distribution initialization 
     262      ! 
     263      CALL ice_thd_init                ! set ice thermodynics parameters (clem: important to call it first for melt ponds) 
     264      ! 
     265      CALL ice_sbc_init                ! set ice-ocean and ice-atm. coupling parameters 
     266      ! 
     267      CALL ice_istate_init             ! Initial sea-ice state 
     268      IF ( ln_rstart .OR. nn_iceini_file == 2 ) THEN 
     269         CALL ice_rst_read( Kbb, Kmm, Kaa )         ! start from a restart file 
     270      ELSE 
     271         CALL ice_istate( nit000, Kbb, Kmm, Kaa )   ! start from rest or read a file 
     272      ENDIF 
     273      CALL ice_var_glo2eqv 
     274      CALL ice_var_agg(1) 
     275      ! 
     276      CALL ice_dyn_init                ! set ice dynamics parameters 
     277      ! 
     278      CALL ice_update_init             ! ice surface boundary condition 
     279      ! 
     280      CALL ice_alb_init                ! ice surface albedo 
     281      ! 
     282      CALL ice_dia_init                ! initialization for diags 
     283      ! 
     284      fr_i  (:,:)   = at_i(:,:)        ! initialisation of sea-ice fraction 
     285      tn_ice(:,:,:) = t_su(:,:,:)      ! initialisation of surface temp for coupled simu 
     286      ! 
    286287      IF( ln_rstart )   CALL iom_close( numrir )  ! close input ice restart file 
    287288      ! 
     
    366367      v_s_b (:,:,:)   = v_s (:,:,:)     ! snow volume 
    367368      sv_i_b(:,:,:)   = sv_i(:,:,:)     ! salt content 
    368       oa_i_b(:,:,:)   = oa_i(:,:,:)     ! areal age content 
    369369      e_s_b (:,:,:,:) = e_s (:,:,:,:)   ! snow thermal energy 
    370370      e_i_b (:,:,:,:) = e_i (:,:,:,:)   ! ice thermal energy 
     
    375375         h_i_b(:,:,:) = 0._wp 
    376376         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 
    383377      END WHERE 
    384378      ! 
     
    424418      hfx_res(:,:) = 0._wp   ;   hfx_sub(:,:) = 0._wp 
    425419      hfx_spr(:,:) = 0._wp   ;   hfx_dif(:,:) = 0._wp 
    426       hfx_err_rem(:,:) = 0._wp 
    427420      hfx_err_dif(:,:) = 0._wp 
    428421      wfx_err_sub(:,:) = 0._wp 
     
    445438      diag_trp_ei(:,:) = 0._wp   ;   diag_trp_es(:,:) = 0._wp 
    446439      diag_trp_sv(:,:) = 0._wp 
    447  
     440       
    448441   END SUBROUTINE diag_set0 
    449442 
Note: See TracChangeset for help on using the changeset viewer.