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 7200 for branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM – NEMO

Ignore:
Timestamp:
2016-11-06T17:31:33+01:00 (8 years ago)
Author:
gm
Message:

#1692 - branch SIMPLIF_2_usrdef: add depth_e3 module + management of ORCA family + domain_cfg filename (in&out) given in namelist

Location:
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM
Files:
1 added
6 edited

Legend:

Unmodified
Added
Removed
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90

    r7188 r7200  
    2222   !!   dom_nam       : read and contral domain namelists 
    2323   !!   dom_ctl       : control print for the ocean domain 
    24    !!   cfg_write     : create the "domain_cfg.nc" file containing all required configuration information    
     24   !!   domain_cfg    : read the global domain size in domain configuration file 
     25   !!   cfg_write     : create the domain configuration file 
    2526   !!---------------------------------------------------------------------- 
    2627   USE oce            ! ocean variables 
     
    4849   PRIVATE 
    4950 
    50    PUBLIC   dom_init   ! called by opa.F90 
     51   PUBLIC   dom_init     ! called by nemogcm.F90 
     52   PUBLIC   domain_cfg   ! called by nemogcm.F90 
    5153 
    5254   !!------------------------------------------------------------------------- 
     
    110112         END SELECT 
    111113         WRITE(numout,*)     '      Ocean model configuration used:' 
    112          WRITE(numout,*)     '              cp_cfg = ', cp_cfg 
    113          WRITE(numout,*)     '              jp_cfg = ', jp_cfg 
     114         WRITE(numout,*)     '              cn_cfg = ', cn_cfg 
     115         WRITE(numout,*)     '              nn_cfg = ', nn_cfg 
    114116      ENDIF 
    115117      ! 
     
    123125      CALL dom_glo                     ! global domain versus local domain 
    124126      CALL dom_nam                     ! read namelist ( namrun, namdom ) 
    125       CALL dom_clo( cp_cfg, jp_cfg )   ! Closed seas and lake 
     127      CALL dom_clo( cn_cfg, nn_cfg )   ! Closed seas and lake 
    126128      CALL dom_hgr                     ! Horizontal mesh 
    127129      CALL dom_zgr( ik_top, ik_bot )   ! Vertical mesh and bathymetry 
     
    287289      INTEGER  ::   ios                 ! Local integer output status for namelist read 
    288290      !!---------------------------------------------------------------------- 
    289  
     291      ! 
    290292      REWIND( numnam_ref )              ! Namelist namrun in reference namelist : Parameters of the run 
    291293      READ  ( numnam_ref, namrun, IOSTAT = ios, ERR = 901) 
    292294901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namrun in reference namelist', lwp ) 
    293  
     295      ! 
    294296      REWIND( numnam_cfg )              ! Namelist namrun in configuration namelist : Parameters of the run 
    295297      READ  ( numnam_cfg, namrun, IOSTAT = ios, ERR = 902 ) 
     
    380382      READ  ( numnam_ref, namdom, IOSTAT = ios, ERR = 903) 
    381383903   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in reference namelist', lwp ) 
    382    
    383384      ! 
    384385      REWIND( numnam_cfg )              ! Namelist namdom in configuration namelist : space & time domain (bathymetry, mesh, timestep) 
     
    414415      READ  ( numnam_ref, namnc4, IOSTAT = ios, ERR = 907) 
    415416907   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namnc4 in reference namelist', lwp ) 
    416  
     417      ! 
    417418      REWIND( numnam_cfg )              ! Namelist namnc4 in configuration namelist : NETCDF 
    418419      READ  ( numnam_cfg, namnc4, IOSTAT = ios, ERR = 908 ) 
     
    492493 
    493494 
     495   SUBROUTINE domain_cfg( ldtxt, ldnam, cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 
     496      !!---------------------------------------------------------------------- 
     497      !!                     ***  ROUTINE dom_nam  *** 
     498      !!                     
     499      !! ** Purpose :   read the domain size in domain configuration file 
     500      !! 
     501      !! ** Method  :    
     502      !! 
     503      !!---------------------------------------------------------------------- 
     504      CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
     505      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
     506      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     507      INTEGER                       , INTENT(out) ::   kpi, kpj, kpk   ! global domain sizes  
     508      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
     509      ! 
     510      INTEGER ::   inum, ii   ! local integer 
     511      REAL(wp) ::   zorca_res                     ! local scalars 
     512      REAL(wp) ::   ziglo, zjglo, zkglo, zperio   !   -      - 
     513      !!---------------------------------------------------------------------- 
     514      ! 
     515      ii = 1 
     516      WRITE(ldtxt(ii),*) '           '                                                    ;   ii = ii+1 
     517      WRITE(ldtxt(ii),*) 'domain_cfg : domain size read in', TRIM( cn_domcfg ), ' file'   ;   ii = ii+1 
     518      WRITE(ldtxt(ii),*) '~~~~~~~~~~ '                                                    ;   ii = ii+1 
     519      ! 
     520      CALL iom_open( cn_domcfg, inum ) 
     521      ! 
     522      !                                   !- ORCA family specificity 
     523      IF(  iom_varid( inum, 'ORCA'           , ldstop = .FALSE. ) > 0  .AND.  & 
     524         & iom_varid( inum, 'ORCA_resolution', ldstop = .FALSE. ) > 0    ) THEN 
     525         ! 
     526         cd_cfg = 'ORCA' 
     527         CALL iom_get( inum, 'ORCA_resolution', zorca_res )   ;   kk_cfg = INT( zorca_res ) 
     528         ! 
     529         WRITE(ldtxt(ii),*) '       '                                                    ;   ii = ii+1 
     530         WRITE(ldtxt(ii),*) '       ==>>>   ORCA configuration '                         ;   ii = ii+1 
     531         WRITE(ldtxt(ii),*) '       '                                                    ;   ii = ii+1 
     532         ! 
     533      ELSE                                !- cd_cfg & k_cfg are not used 
     534         cd_cfg = 'UNKNOWN' 
     535         kk_cfg = -9999999 
     536      ENDIF 
     537      ! 
     538      CALL iom_get( inum, 'jpiglo', ziglo  )   ;   jpiglo = INT( ziglo ) 
     539      CALL iom_get( inum, 'jpjglo', zjglo  )   ;   jpjglo = INT( zjglo ) 
     540      CALL iom_get( inum, 'jpkglo', zkglo  )   ;   jpkglo = INT( zkglo ) 
     541      CALL iom_get( inum, 'jperio', zperio )   ;   jperio = INT( zperio ) 
     542      CALL iom_close( inum ) 
     543      ! 
     544      WRITE(ldtxt(ii),*) '   cn_cfg = ', TRIM(cd_cfg), '   nn_cfg = ', kk_cfg             ;   ii = ii+1 
     545      WRITE(ldtxt(ii),*) '   jpiglo = ', jpiglo                                           ;   ii = ii+1 
     546      WRITE(ldtxt(ii),*) '   jpjglo = ', jpjglo      , '   jpkglo = ', jpkglo             ;   ii = ii +1 
     547      WRITE(ldtxt(ii),*) '   jpkglo = ', jpkglo                                           ;   ii = ii +1 
     548      WRITE(ldtxt(ii),*) '   type of global domain lateral boundary   jperio = ', jperio  ;   ii = ii +1 
     549      !         
     550   END SUBROUTINE domain_cfg 
     551    
     552    
    494553   SUBROUTINE cfg_write 
    495554      !!---------------------------------------------------------------------- 
    496555      !!                  ***  ROUTINE cfg_write  *** 
    497556      !!                    
    498       !! ** Purpose :   Create the "domain_cfg" file, a NetCDF file which  
     557      !! ** Purpose :   Create the "cn_domcfg_out" file, a NetCDF file which  
    499558      !!              contains all the ocean domain informations required to  
    500559      !!              define an ocean configuration. 
     
    503562      !!              ocean configuration. 
    504563      !! 
    505       !! ** output file :   domain_cfg.nc : domain size, characteristics, horizontal mesh, 
    506       !!                              Coriolis parameter, depth and vertical scale factors 
     564      !! ** output file :   domcfg_out.nc : domain size, characteristics, horizontal  
     565      !!                       mesh, Coriolis parameter, and vertical scale factors 
     566      !!                    NB: also contain ORCA family information 
    507567      !!---------------------------------------------------------------------- 
    508568      INTEGER           ::   ji, jj, jk   ! dummy loop indices 
    509569      INTEGER           ::   izco, izps, isco, icav 
    510       INTEGER           ::   inum     ! temprary units for 'domain_cfg.nc' file 
     570      INTEGER           ::   inum     ! local units 
    511571      CHARACTER(len=21) ::   clnam    ! filename (mesh and mask informations) 
    512572      REAL(wp), DIMENSION(jpi,jpj) ::   z2d   ! workspace 
     
    514574      ! 
    515575      IF(lwp) WRITE(numout,*) 
    516       IF(lwp) WRITE(numout,*) 'cfg_write : create the "domain_cfg.nc" file containing all required configuration information' 
     576      IF(lwp) WRITE(numout,*) 'cfg_write : create the domain configuration file (', TRIM(cn_domcfg_out),'.nc)' 
    517577      IF(lwp) WRITE(numout,*) '~~~~~~~~~' 
    518578      ! 
    519579      !                       ! ============================= ! 
    520       !                       !  create 'domain_cfg.nc' file  ! 
     580      !                       !  create 'domcfg_out.nc' file  ! 
    521581      !                       ! ============================= ! 
    522582      !          
    523       clnam = 'domain_cfg'  ! filename (configuration information) 
     583      clnam = 'domcfg_out'  ! filename (configuration information) 
    524584      CALL iom_open( TRIM(clnam), inum, ldwrt = .TRUE., kiolib = jprstlib ) 
    525585       
     586      ! 
     587      !                             !==  ORCA family specificities  ==! 
     588      IF( cn_cfg == "ORCA" ) THEN 
     589         CALL iom_rstput( 0, 0, inum, 'ORCA'      , 1._wp            , ktype = jp_i4 ) 
     590         CALL iom_rstput( 0, 0, inum, 'ORCA_index', REAL( nn_cfg, wp), ktype = jp_i4 )          
     591      ENDIF 
     592      ! 
    526593      !                             !==  global domain size  ==! 
    527594      ! 
     
    574641      !                             !==  vertical mesh  ==! 
    575642      !                                                      
    576       CALL iom_rstput( 0, 0, inum, 'e3t_1d'  , e3t_1d  , ktype = jp_r8 )   ! reference 1D-coordinate 
    577       CALL iom_rstput( 0, 0, inum, 'e3w_1d'  , e3w_1d  , ktype = jp_r8 ) 
    578       ! 
    579       CALL iom_rstput( 0, 0, inum, 'e3t_0'   , e3t_0   , ktype = jp_r8 )   ! vertical scale factors 
    580       CALL iom_rstput( 0, 0, inum, 'e3u_0'   , e3u_0   , ktype = jp_r8 ) 
    581       CALL iom_rstput( 0, 0, inum, 'e3v_0'   , e3v_0   , ktype = jp_r8 ) 
    582       CALL iom_rstput( 0, 0, inum, 'e3f_0'   , e3f_0   , ktype = jp_r8 ) 
    583       CALL iom_rstput( 0, 0, inum, 'e3w_0'   , e3w_0   , ktype = jp_r8 ) 
    584       CALL iom_rstput( 0, 0, inum, 'e3uw_0'  , e3uw_0  , ktype = jp_r8 ) 
    585       CALL iom_rstput( 0, 0, inum, 'e3vw_0'  , e3vw_0  , ktype = jp_r8 ) 
     643      CALL iom_rstput( 0, 0, inum, 'e3t_1d'  , e3t_1d , ktype = jp_r8 )   ! reference 1D-coordinate 
     644      CALL iom_rstput( 0, 0, inum, 'e3w_1d'  , e3w_1d , ktype = jp_r8 ) 
     645      ! 
     646      CALL iom_rstput( 0, 0, inum, 'e3t_0'   , e3t_0  , ktype = jp_r8 )   ! vertical scale factors 
     647      CALL iom_rstput( 0, 0, inum, 'e3u_0'   , e3u_0  , ktype = jp_r8 ) 
     648      CALL iom_rstput( 0, 0, inum, 'e3v_0'   , e3v_0  , ktype = jp_r8 ) 
     649      CALL iom_rstput( 0, 0, inum, 'e3f_0'   , e3f_0  , ktype = jp_r8 ) 
     650      CALL iom_rstput( 0, 0, inum, 'e3w_0'   , e3w_0  , ktype = jp_r8 ) 
     651      CALL iom_rstput( 0, 0, inum, 'e3uw_0'  , e3uw_0 , ktype = jp_r8 ) 
     652      CALL iom_rstput( 0, 0, inum, 'e3vw_0'  , e3vw_0 , ktype = jp_r8 ) 
    586653      !                                          
    587654      !                             !==  wet top and bottom level  ==!   (caution: multiplied by ssmask) 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/domhgr.F90

    r6894 r7200  
    2121   !!---------------------------------------------------------------------- 
    2222   !!   dom_hgr       : initialize the horizontal mesh  
    23    !!   hgr_read      : read "coordinate" NetCDF file  
     23   !!   hgr_read      : read horizontal information in the domain configuration file  
    2424   !!---------------------------------------------------------------------- 
    2525   USE dom_oce        ! ocean space and time domain 
     
    9191      IF( ln_read_cfg ) THEN        !==  read in mesh_mask.nc file  ==! 
    9292         IF(lwp) WRITE(numout,*) 
    93          IF(lwp) WRITE(numout,*) '          read horizontal mesh in "domain_cfg" file' 
     93         IF(lwp) WRITE(numout,*) '          read horizontal mesh in ', TRIM( cn_domcfg ), ' file' 
    9494         ! 
    9595         CALL hgr_read   ( glamt , glamu , glamv , glamf ,   &    ! geographic position (required) 
     
    121121      ELSE 
    122122         IF( ln_read_cfg ) THEN 
    123             IF(lwp) WRITE(numout,*) '          Coriolis parameter have been read in "domain_cfg" file' 
     123            IF(lwp) WRITE(numout,*) '          Coriolis parameter have been read in ', TRIM( cn_domcfg ), ' file' 
    124124         ELSE 
    125125            IF(lwp) WRITE(numout,*) '          Coriolis parameter have been set in usr_def_hgr routine' 
     
    186186      ENDIF 
    187187      ! 
    188       CALL iom_open( 'domain_cfg', inum ) 
     188      CALL iom_open( cn_domcfg, inum ) 
    189189      ! 
    190190      CALL iom_get( inum, jpdom_data, 'glamt', plamt, lrowattr=ln_use_jattr ) 
     
    210210      IF(  iom_varid( inum, 'ff_f', ldstop = .FALSE. ) > 0  .AND.  & 
    211211         & iom_varid( inum, 'ff_t', ldstop = .FALSE. ) > 0    ) THEN 
    212          IF(lwp) WRITE(numout,*) '           Coriolis factor at f- and t-points read in domain_cfg file' 
     212         IF(lwp) WRITE(numout,*) '           Coriolis factor at f- and t-points read in ', TRIM( cn_domcfg ), ' file' 
    213213         CALL iom_get( inum, jpdom_data, 'ff_f'  , pff_f  , lrowattr=ln_use_jattr ) 
    214214         CALL iom_get( inum, jpdom_data, 'ff_t'  , pff_t  , lrowattr=ln_use_jattr ) 
     
    219219      ! 
    220220      IF( iom_varid( inum, 'e1e2u', ldstop = .FALSE. ) > 0 ) THEN 
    221          IF(lwp) WRITE(numout,*) '           e1e2u & e1e2v read in domain_cfg file' 
     221         IF(lwp) WRITE(numout,*) '           e1e2u & e1e2v read in ', TRIM( cn_domcfg ), ' file' 
    222222         CALL iom_get( inum, jpdom_data, 'e1e2u'  , pe1e2u  , lrowattr=ln_use_jattr ) 
    223223         CALL iom_get( inum, jpdom_data, 'e1e2v'  , pe1e2v  , lrowattr=ln_use_jattr ) 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90

    r7111 r7200  
    140140         END DO   
    141141      END DO   
    142 !SF  add here lbc_lnk: bug not still understood : cause now domain_cfg is read ! 
     142!SF  add here lbc_lnk: bug not still understood : cause now domain configuration is read ! 
     143!!gm I don't understand why...   
    143144   CALL lbc_lnk( tmask  , 'T', 1._wp )      ! Lateral boundary conditions 
    144145 
     
    263264      ! --------------------------------  
    264265      ! 
    265       CALL usr_def_fmask( cp_cfg, jp_cfg, fmask ) 
     266      CALL usr_def_fmask( cn_cfg, nn_cfg, fmask ) 
    266267      ! 
    267268      ! 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90

    r6667 r7200  
    232232               END DO 
    233233            END DO 
    234             IF( cp_cfg == "orca" .AND. jp_cfg == 3 ) THEN   ! ORCA2: Suppress ztilde in the Foxe Basin for ORCA2 
     234            IF( cn_cfg == "orca" .AND. nn_cfg == 3 ) THEN   ! ORCA2: Suppress ztilde in the Foxe Basin for ORCA2 
    235235               ii0 = 103   ;   ii1 = 111        
    236236               ij0 = 128   ;   ij1 = 135   ;    
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90

    r7189 r7200  
    2323   !!---------------------------------------------------------------------- 
    2424   !!   dom_zgr       : read or set the ocean vertical coordinate system 
    25    !!   zgr_read      : read the vertical domain coordinate and mask in domain_cfg file 
     25   !!   zgr_read      : read the vertical information in the domain configuration file 
    2626   !!   zgr_top_bot   : ocean top and bottom level for t-, u, and v-points with 1 as minimum value 
    2727   !!--------------------------------------------------------------------- 
     
    8989      IF( ln_read_cfg ) THEN        !==  read in mesh_mask.nc file  ==! 
    9090         IF(lwp) WRITE(numout,*) 
    91          IF(lwp) WRITE(numout,*) '          Read vertical mesh in "domain_cfg" file' 
     91         IF(lwp) WRITE(numout,*) '          Read vertical mesh in ', TRIM( cn_domcfg ), ' file' 
    9292         ! 
    9393         CALL zgr_read   ( ln_zco  , ln_zps  , ln_sco, ln_isfcav,   &  
     
    120120      IF(lwp) THEN                     ! Control print 
    121121         WRITE(numout,*) 
    122          WRITE(numout,*) '   Type of vertical coordinate (read in domain_cfg.nc or set through user defined routines) :' 
     122         WRITE(numout,*) '   Type of vertical coordinate (read in ', TRIM( cn_domcfg ), ' file or set in userdef_nam) :' 
    123123         WRITE(numout,*) '      z-coordinate - full steps      ln_zco    = ', ln_zco 
    124124         WRITE(numout,*) '      z-coordinate - partial steps   ln_zps    = ', ln_zps 
     
    178178      !!              ***  ROUTINE zgr_read  *** 
    179179      !! 
    180       !! ** Purpose :   Read the vertical information in a domain_cfg.nc file 
     180      !! ** Purpose :   Read the vertical information in the domain configuration file 
    181181      !! 
    182182      !!---------------------------------------------------------------------- 
     
    198198      IF(lwp) THEN 
    199199         WRITE(numout,*) 
    200          WRITE(numout,*) '   zgr_read : read the vertical coordinates in "domain_cfg.nc" file' 
    201          WRITE(numout,*) '   ~~~~~~~~      jpiglo = ', jpiglo, ' jpjglo = ', jpjglo, ' jpkglo = ', jpkglo 
    202       ENDIF 
    203       ! 
    204       CALL iom_open( 'domain_cfg', inum ) 
    205       ! 
    206       !                                   ! type of vertical coordinate 
     200         WRITE(numout,*) '   zgr_read : read the vertical coordinates in ', TRIM( cn_domcfg ), ' file' 
     201         WRITE(numout,*) '   ~~~~~~~~' 
     202      ENDIF 
     203      ! 
     204      CALL iom_open( cn_domcfg, inum ) 
     205      ! 
     206      !                          !* type of vertical coordinate 
    207207      CALL iom_get( inum, 'ln_zco'   , z_zco ) 
    208208      CALL iom_get( inum, 'ln_zps'   , z_zps ) 
     
    212212      IF( z_sco == 0._wp ) THEN   ;   ld_sco = .false.   ;   ELSE   ;   ld_sco = .true.   ;   ENDIF 
    213213      ! 
    214       !                                   ! ocean cavities under iceshelves 
     214      !                          !* ocean cavities under iceshelves 
    215215      CALL iom_get( inum, 'ln_isfcav', z_cav ) 
    216216      IF( z_cav == 0._wp ) THEN   ;   ld_isfcav = .false.   ;   ELSE   ;   ld_isfcav = .true.   ;   ENDIF 
    217217      ! 
    218       !                                   ! 1D vertical scale factors (reference coordinate) 
    219       CALL iom_get( inum, jpdom_unknown, 'e3t_1d'  , pe3t_1d  ) 
     218      !                          !* vertical scale factors 
     219      CALL iom_get( inum, jpdom_unknown, 'e3t_1d'  , pe3t_1d  )                     ! 1D reference coordinate 
    220220      CALL iom_get( inum, jpdom_unknown, 'e3w_1d'  , pe3w_1d  ) 
    221221      ! 
    222       !                                   ! 3D vertical scale factors 
    223       CALL iom_get( inum, jpdom_data, 'e3t_0'  , pe3t  , lrowattr=ln_use_jattr ) 
     222      CALL iom_get( inum, jpdom_data, 'e3t_0'  , pe3t  , lrowattr=ln_use_jattr )    ! 3D coordinate 
    224223      CALL iom_get( inum, jpdom_data, 'e3u_0'  , pe3u  , lrowattr=ln_use_jattr ) 
    225224      CALL iom_get( inum, jpdom_data, 'e3v_0'  , pe3v  , lrowattr=ln_use_jattr ) 
     
    229228      CALL iom_get( inum, jpdom_data, 'e3vw_0' , pe3vw , lrowattr=ln_use_jattr ) 
    230229      ! 
    231       !                                   ! 1D & 3D depths 
    232       ! 
    233       !                                         ! old depth definition (obsolescent feature) 
     230      !                          !* depths 
     231      !                                   !- old depth definition (obsolescent feature) 
    234232      IF(  iom_varid( inum, 'gdept_1d', ldstop = .FALSE. ) > 0  .AND.  & 
    235233         & iom_varid( inum, 'gdepw_1d', ldstop = .FALSE. ) > 0  .AND.  & 
     
    237235         & iom_varid( inum, 'gdepw_0' , ldstop = .FALSE. ) > 0    ) THEN 
    238236         CALL ctl_warn( 'zgr_read : old definition of depths and scale factors used ', &  
    239             &                      'depths at t- and w-points read in domain_cfg file') 
     237            &           '           depths at t- and w-points read in the domain configuration file') 
    240238         CALL iom_get( inum, jpdom_unknown, 'gdept_1d', pdept_1d )    
    241239         CALL iom_get( inum, jpdom_unknown, 'gdepw_1d', pdepw_1d ) 
     
    243241         CALL iom_get( inum, jpdom_data   , 'gdepw_0' , pdepw , lrowattr=ln_use_jattr ) 
    244242         ! 
    245       ELSE                                      ! depths computed from e3. scale factors 
    246          ! 
     243      ELSE                                !- depths computed from e3. scale factors 
    247244         CALL e3_to_depth( pe3t_1d, pe3w_1d, pdept_1d, pdepw_1d )    ! 1D reference depth 
     245         CALL e3_to_depth( pe3t   , pe3w   , pdept   , pdepw    )    ! 3D depths 
    248246         IF(lwp) THEN 
    249247            WRITE(numout,*) 
     
    252250            WRITE(numout, "(10x, i4, 4f9.2)" ) ( jk, pdept_1d(jk), pdepw_1d(jk), pe3t_1d(jk), pe3w_1d(jk), jk = 1, jpk ) 
    253251         ENDIF 
    254          !                                       
    255          CALL e3_to_depth( pe3t   , pe3w   , pdept   , pdepw    )    ! 3D depths 
    256          ! 
    257       ENDIF 
    258       ! 
    259       !                                   ! ocean top and bottom level 
    260       CALL iom_get( inum, jpdom_data, 'bottom_level' , z2d  , lrowattr=ln_use_jattr )  ! nb of ocean T-points 
     252      ENDIF 
     253      ! 
     254      !                          !* ocean top and bottom level 
     255      CALL iom_get( inum, jpdom_data, 'top_level'    , z2d  , lrowattr=ln_use_jattr )   ! 1st wet T-points (ISF) 
     256      k_top(:,:) = INT( z2d(:,:) ) 
     257      CALL iom_get( inum, jpdom_data, 'bottom_level' , z2d  , lrowattr=ln_use_jattr )   ! last wet T-points 
    261258      k_bot(:,:) = INT( z2d(:,:) ) 
    262       CALL iom_get( inum, jpdom_data, 'top_level'    , z2d  , lrowattr=ln_use_jattr )   ! nb of ocean T-points (ISF) 
    263       k_top(:,:) = INT( z2d(:,:) ) 
    264259      ! 
    265260      CALL iom_close( inum ) 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/dtatsd.F90

    r6580 r7200  
    155155      ! 
    156156      ! 
     157!!gm  This should be removed from the code   ===>>>>  T & S files has to be changed 
     158      ! 
    157159      !                                   !==   ORCA_R2 configuration and T & S damping   ==!  
    158       IF( cp_cfg == "orca" .AND. jp_cfg == 2 .AND. ln_tsd_tradmp ) THEN    ! some hand made alterations 
     160      IF( cn_cfg == "orca" .AND. nn_cfg == 2 .AND. ln_tsd_tradmp ) THEN    ! some hand made alterations 
    159161         ! 
    160162         ij0 = 101   ;   ij1 = 109                       ! Reduced T & S in the Alboran Sea 
     
    178180         sf_tsd(jp_tem)%fnow( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 14:20 ) = 6.0_wp 
    179181      ENDIF 
     182!!gm end 
    180183      ! 
    181184      ptsd(:,:,:,jp_tem) = sf_tsd(jp_tem)%fnow(:,:,:)    ! NO mask 
Note: See TracChangeset for help on using the changeset viewer.