Changeset 11986


Ignore:
Timestamp:
2019-11-27T15:43:33+01:00 (9 months ago)
Author:
mathiot
Message:

ENHANCE-02_ISF_domcfg: changes needed after Dave's review

Location:
NEMO/branches/2019/ENHANCE-02_ISF_domcfg
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/ENHANCE-02_ISF_domcfg/namelist_ref

    r11308 r11986  
    243243&namctl        !   Control prints                                       (default: OFF) 
    244244!----------------------------------------------------------------------- 
    245    ln_ctl = .TRUE.                 ! Toggle all report printing on/off (T/F); Ignored if sn_cfctl%l_config is T 
     245   ln_ctl = .FALSE.                 ! Toggle all report printing on/off (T/F); Ignored if sn_cfctl%l_config is T 
    246246     sn_cfctl%l_config = .TRUE.     ! IF .true. then control which reports are written with the following 
    247247       sn_cfctl%l_runstat = .FALSE. ! switches and which areas produce reports with the proc integer settings. 
  • NEMO/branches/2019/ENHANCE-02_ISF_domcfg/src/domain.F90

    r11308 r11986  
    2828   USE domclo          ! domain: set closed sea mask 
    2929   ! 
     30   USE lib_mpp         ! 
    3031   USE in_out_manager  ! I/O manager 
    3132   USE iom             !  
     
    8081      CALL dom_zgr                  ! Vertical mesh and bathymetry 
    8182      ! 
    82       IF ( ln_domclo .OR. nmsh > 0 ) CALL dom_msk                  ! compute mask (needed by dom_clo 
     83      CALL dom_msk                  ! compute mask (needed by write_cfg) 
    8384      ! 
    8485      IF ( ln_domclo ) CALL dom_clo ! Closed seas and lake 
     86      ! 
     87      CALL dom_ctl                  ! print extrema of masked scale factors 
    8588      !  
    8689      CALL cfg_write                ! create the configuration file 
     
    256259      !!---------------------------------------------------------------------- 
    257260      ! 
    258 #undef CHECK_DOM 
    259 #ifdef CHECK_DOM 
    260261      IF(lk_mpp) THEN 
    261          CALL mpp_minloc( e1t(:,:), tmask_i(:,:), ze1min, iimi1,ijmi1 ) 
    262          CALL mpp_minloc( e2t(:,:), tmask_i(:,:), ze2min, iimi2,ijmi2 ) 
    263          CALL mpp_maxloc( e1t(:,:), tmask_i(:,:), ze1max, iima1,ijma1 ) 
    264          CALL mpp_maxloc( e2t(:,:), tmask_i(:,:), ze2max, iima2,ijma2 ) 
     262         CALL mpp_minloc( 'dom_ctl', e1t(:,:), tmask_i(:,:), ze1min, iloc ) 
     263         iimi1 = iloc(1) ; ijmi1 = iloc(2) 
     264         CALL mpp_minloc( 'dom_ctl', e2t(:,:), tmask_i(:,:), ze2min, iloc ) 
     265         iimi2 = iloc(1) ; ijmi2 = iloc(2) 
     266         CALL mpp_maxloc( 'dom_ctl', e1t(:,:), tmask_i(:,:), ze1max, iloc ) 
     267         iima1 = iloc(1) ; ijma1 = iloc(2) 
     268         CALL mpp_maxloc( 'dom_ctl', e2t(:,:), tmask_i(:,:), ze2max, iloc ) 
     269         iima2 = iloc(1) ; ijma2 = iloc(2) 
    265270      ELSE 
    266271         ze1min = MINVAL( e1t(:,:), mask = tmask_i(:,:) == 1._wp )     
     
    291296         WRITE(numout,"(14x,'e2t mini: ',1f10.2,' at i = ',i5,' j= ',i5)") ze2min, iimi2, ijmi2 
    292297      ENDIF 
    293 #endif 
    294298      ! 
    295299   END SUBROUTINE dom_ctl 
     
    409413      CALL iom_rstput( 0, 0, inum, 'bottom_level' , REAL( mbkt, wp )*ssmask , ktype = jp_i4 )   ! nb of ocean T-points 
    410414      CALL iom_rstput( 0, 0, inum, 'top_level'    , REAL( mikt, wp )*ssmask , ktype = jp_i4 )   ! nb of ocean T-points (ISF) 
    411       DO jj = 1,jpj 
    412          DO ji = 1,jpi 
    413             z2d (ji,jj) = SUM ( e3t_0(ji,jj, 1:mbkt(ji,jj) ) ) * ssmask(ji,jj)  
    414          END DO 
    415       END DO 
    416       CALL iom_rstput( 0, 0, inum, 'bathy_metry_e3'   , z2d , ktype = jp_r4 ) 
    417       DO jj = 1,jpj 
    418          DO ji = 1,jpi 
    419             z2d (ji,jj) = SUM ( e3t_0(ji,jj, 1:mikt(ji,jj)-1 ) ) * ssmask(ji,jj)  
    420          END DO 
    421       END DO 
    422       CALL iom_rstput( 0, 0, inum, 'isf_draft_e3'   , z2d , ktype = jp_r4 ) 
    423       CALL iom_rstput( 0, 0, inum, 'isf_draft'   , risfdep , ktype = jp_r4 ) 
    424       CALL iom_rstput( 0, 0, inum, 'bathy_metry'   , bathy , ktype = jp_r4 ) 
    425       CALL iom_rstput( 0, 0, inum, 'hw',bathy-risfdep, ktype = jp_r4 ) 
    426       CALL iom_rstput( 0, 0, inum, 'mhw',mbkt*ssmask-mikt*ssmask, ktype = jp_i4 ) 
     415      CALL iom_rstput( 0, 0, inum, 'isf_draft'    , risfdep , ktype = jp_r8 ) 
     416      CALL iom_rstput( 0, 0, inum, 'bathy_metry'  , bathy   , ktype = jp_r8 ) 
    427417      ! 
    428418      !                              !== closed sea ==! 
  • NEMO/branches/2019/ENHANCE-02_ISF_domcfg/src/domwri.F90

    r11201 r11986  
    154154      CALL iom_rstput( 0, 0, inum, 'ff_t', ff_t, ktype = jp_r8 ) 
    155155       
    156       ! note that mbkt is set to 1 over land ==> use surface tmask 
     156      ! note that mbkt and mikt is set to 1 over land ==> use surface tmask 
    157157      zprt(:,:) = ssmask(:,:) * REAL( mbkt(:,:) , wp ) 
    158       CALL iom_rstput( 0, 0, inum, 'mbathy', zprt, ktype = jp_i4 )     !    ! nb of ocean T-points 
     158      CALL iom_rstput( 0, 0, inum, 'mbathy', zprt, ktype = jp_i4 )                              !    ! nb of ocean T-points 
     159      CALL iom_rstput( 0, 0, inum, 'bathy_metry', bathy(:,:)   * ssmask(:,:), ktype = jp_r8 )   !    ! bathymetry 
    159160      zprt(:,:) = ssmask(:,:) * REAL( mikt(:,:) , wp ) 
    160       CALL iom_rstput( 0, 0, inum, 'misf', zprt, ktype = jp_i4 )       !    ! nb of ocean T-points 
    161       zprt(:,:) = ssmask(:,:) * REAL( risfdep(:,:) , wp ) 
    162       CALL iom_rstput( 0, 0, inum, 'isfdraft', zprt, ktype = jp_r8 )   !    ! nb of ocean T-points 
    163       !                                                         ! vertical mesh 
     161      CALL iom_rstput( 0, 0, inum, 'misf', zprt, ktype = jp_i4 )                                !    ! first wet level 
     162      CALL iom_rstput( 0, 0, inum, 'isfdraft'   , risfdep(:,:) * ssmask(:,:), ktype = jp_r8 )   !    ! ice shelf draft 
     163      zprt(:,:) = ssmask(:,:) * REAL( mbkt(:,:) - mikt(:,:) + 1, wp ) 
     164      CALL iom_rstput( 0, 0, inum, 'mhw',zprt, ktype = jp_i4 ) 
     165      CALL iom_rstput( 0, 0, inum, 'hw' ,(bathy-risfdep)*ssmask, ktype = jp_r8 ) 
     166 
     167      !                  ! vertical mesh 
    164168      CALL iom_rstput( 0, 0, inum, 'e3t_0', e3t_0, ktype = jp_r8  )    !    ! scale factors 
    165169      CALL iom_rstput( 0, 0, inum, 'e3u_0', e3u_0, ktype = jp_r8  ) 
Note: See TracChangeset for help on using the changeset viewer.