Changeset 6863


Ignore:
Timestamp:
2016-08-12T15:16:26+02:00 (4 years ago)
Author:
lovato
Message:

#1729 - trunk: Reorganize bdyini content and clean up namelists

Location:
branches/2016/dev_r6522_SIMPLIF_3/NEMOGCM
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • branches/2016/dev_r6522_SIMPLIF_3/NEMOGCM/CONFIG/C1D_PAPA/EXP00/namelist_cfg

    r6489 r6863  
    178178/ 
    179179!----------------------------------------------------------------------- 
    180 &nambdy        !  unstructured open boundaries                          ("key_bdy") 
    181 !----------------------------------------------------------------------- 
    182 / 
    183 !----------------------------------------------------------------------- 
    184 &nambdy_dta      !  open boundaries - external data           ("key_bdy") 
     180&nambdy        !  unstructured open boundaries                           
     181!----------------------------------------------------------------------- 
     182/ 
     183!----------------------------------------------------------------------- 
     184&nambdy_dta      !  open boundaries - external data            
    185185!----------------------------------------------------------------------- 
    186186/ 
  • branches/2016/dev_r6522_SIMPLIF_3/NEMOGCM/CONFIG/GYRE/EXP00/namelist_cfg

    r6489 r6863  
    158158/ 
    159159!----------------------------------------------------------------------- 
    160 &nambdy        !  unstructured open boundaries                          ("key_bdy") 
    161 !----------------------------------------------------------------------- 
    162 / 
    163 !----------------------------------------------------------------------- 
    164 &nambdy_dta      !  open boundaries - external data           ("key_bdy") 
     160&nambdy        !  unstructured open boundaries                           
     161!----------------------------------------------------------------------- 
     162/ 
     163!----------------------------------------------------------------------- 
     164&nambdy_dta      !  open boundaries - external data            
    165165!----------------------------------------------------------------------- 
    166166/ 
  • branches/2016/dev_r6522_SIMPLIF_3/NEMOGCM/CONFIG/GYRE_BFM/EXP00/namelist_cfg

    r6489 r6863  
    163163/ 
    164164!----------------------------------------------------------------------- 
    165 &nambdy        !  unstructured open boundaries                          ("key_bdy") 
    166 !----------------------------------------------------------------------- 
    167 / 
    168 !----------------------------------------------------------------------- 
    169 &nambdy_dta      !  open boundaries - external data           ("key_bdy") 
     165&nambdy        !  unstructured open boundaries                           
     166!----------------------------------------------------------------------- 
     167/ 
     168!----------------------------------------------------------------------- 
     169&nambdy_dta      !  open boundaries - external data            
    170170!----------------------------------------------------------------------- 
    171171/ 
  • branches/2016/dev_r6522_SIMPLIF_3/NEMOGCM/CONFIG/GYRE_XIOS/EXP00/namelist_cfg

    r6489 r6863  
    156156/ 
    157157!----------------------------------------------------------------------- 
    158 &nambdy        !  unstructured open boundaries                          ("key_bdy") 
    159 !----------------------------------------------------------------------- 
    160 / 
    161 !----------------------------------------------------------------------- 
    162 &nambdy_dta      !  open boundaries - external data           ("key_bdy") 
     158&nambdy        !  unstructured open boundaries                           
     159!----------------------------------------------------------------------- 
     160/ 
     161!----------------------------------------------------------------------- 
     162&nambdy_dta      !  open boundaries - external data            
    163163!----------------------------------------------------------------------- 
    164164/ 
  • branches/2016/dev_r6522_SIMPLIF_3/NEMOGCM/CONFIG/ORCA2_LIM_CFC_C14b/EXP00/namelist_cfg

    r6489 r6863  
    142142/ 
    143143!----------------------------------------------------------------------- 
    144 &nambdy        !  unstructured open boundaries                          ("key_bdy") 
    145 !----------------------------------------------------------------------- 
    146 / 
    147 !----------------------------------------------------------------------- 
    148 &nambdy_dta      !  open boundaries - external data           ("key_bdy") 
     144&nambdy        !  unstructured open boundaries                           
     145!----------------------------------------------------------------------- 
     146/ 
     147!----------------------------------------------------------------------- 
     148&nambdy_dta      !  open boundaries - external data            
    149149!----------------------------------------------------------------------- 
    150150/ 
  • branches/2016/dev_r6522_SIMPLIF_3/NEMOGCM/CONFIG/SHARED/namelist_ref

    r6862 r6863  
    589589!!   namagrif      agrif nested grid ( read by child model only )       ("key_agrif") 
    590590!!   nam_tide      Tidal forcing  
    591 !!   nambdy        Unstructured open boundaries                         ("key_bdy") 
    592 !!   nambdy_dta    Unstructured open boundaries - external data         ("key_bdy") 
    593 !!   nambdy_tide   tidal forcing at open boundaries                     ("key_bdy_tides") 
     591!!   nambdy        Unstructured open boundaries                          
     592!!   nambdy_dta    Unstructured open boundaries - external data          
     593!!   nambdy_tide   tidal forcing at open boundaries                      
    594594!!====================================================================== 
    595595! 
     
    619619/ 
    620620!----------------------------------------------------------------------- 
    621 &nambdy        !  unstructured open boundaries                          ("key_bdy") 
     621&nambdy        !  unstructured open boundaries                           
    622622!----------------------------------------------------------------------- 
    623623    ln_bdy         = .false.              !  Use unstructured open boundaries 
     
    654654/ 
    655655!----------------------------------------------------------------------- 
    656 &nambdy_dta    !  open boundaries - external data                       ("key_bdy") 
     656&nambdy_dta    !  open boundaries - external data                        
    657657!----------------------------------------------------------------------- 
    658658!              !  file name      ! frequency (hours) ! variable  ! time interp.!  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
  • branches/2016/dev_r6522_SIMPLIF_3/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90

    r6862 r6863  
    5252   !!---------------------------------------------------------------------- 
    5353CONTAINS 
    54     
     54 
    5555   SUBROUTINE bdy_init 
    5656      !!---------------------------------------------------------------------- 
    5757      !!                 ***  ROUTINE bdy_init  *** 
     58      !! 
     59      !! ** Purpose :   Initialization of the dynamics and tracer fields with 
     60      !!              unstructured open boundaries. 
     61      !! 
     62      !! ** Method  :   Read initialization arrays (mask, indices) to identify 
     63      !!              an unstructured open boundary 
     64      !! 
     65      !! ** Input   :  bdy_init.nc, input file for unstructured open boundaries 
     66      !!---------------------------------------------------------------------- 
     67      NAMELIST/nambdy/ ln_bdy, nb_bdy, ln_coords_file, cn_coords_file,         & 
     68         &             ln_mask_file, cn_mask_file, cn_dyn2d, nn_dyn2d_dta,     & 
     69         &             cn_dyn3d, nn_dyn3d_dta, cn_tra, nn_tra_dta,             & 
     70         &             ln_tra_dmp, ln_dyn3d_dmp, rn_time_dmp, rn_time_dmp_out, & 
     71         &             cn_ice_lim, nn_ice_lim_dta,                             & 
     72         &             rn_ice_tem, rn_ice_sal, rn_ice_age,                     & 
     73         &             ln_vol, nn_volctl, nn_rimwidth 
     74         ! 
     75      INTEGER  ::   ios                 ! Local integer output status for namelist read 
     76      !!---------------------------------------------------------------------- 
     77      ! 
     78      IF( nn_timing == 1 )   CALL timing_start('bdy_init') 
     79 
     80      ! ------------------------ 
     81      ! Read namelist parameters 
     82      ! ------------------------ 
     83      REWIND( numnam_ref )              ! Namelist nambdy in reference namelist :Unstructured open boundaries 
     84      READ  ( numnam_ref, nambdy, IOSTAT = ios, ERR = 901) 
     85901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'nambdy in reference namelist', lwp ) 
     86      ! 
     87      REWIND( numnam_cfg )              ! Namelist nambdy in configuration namelist :Unstructured open boundaries 
     88      READ  ( numnam_cfg, nambdy, IOSTAT = ios, ERR = 902 ) 
     89902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'nambdy in configuration namelist', lwp ) 
     90      IF(lwm) WRITE ( numond, nambdy ) 
     91 
     92      ! ----------------------------------------- 
     93      ! unstructured open boundaries use control 
     94      ! ----------------------------------------- 
     95      IF ( ln_bdy ) THEN 
     96         IF(lwp) WRITE(numout,*) 
     97         IF(lwp) WRITE(numout,*) 'bdy_init : initialization of open boundaries' 
     98         IF(lwp) WRITE(numout,*) '~~~~~~~~' 
     99         ! 
     100         ! Open boundaries definition (arrays and masks) 
     101         CALL bdy_segs 
     102         ! 
     103         ! Open boundaries initialisation of external data arrays 
     104         CALL bdy_dta_init 
     105         ! 
     106         ! Open boundaries initialisation of tidal harmonic forcing 
     107         IF( lk_tide ) CALL bdytide_init 
     108         ! 
     109      ELSE 
     110         IF(lwp) WRITE(numout,*) 
     111         IF(lwp) WRITE(numout,*) 'bdy_init : open boundaries not used (ln_bdy = F)' 
     112         IF(lwp) WRITE(numout,*) '~~~~~~~~' 
     113         ! 
     114      ENDIF 
     115      ! 
     116      IF( nn_timing == 1 )   CALL timing_stop('bdy_init') 
     117      ! 
     118   END SUBROUTINE bdy_init 
     119    
     120   SUBROUTINE bdy_segs 
     121      !!---------------------------------------------------------------------- 
     122      !!                 ***  ROUTINE bdy_init  *** 
    58123      !!          
    59       !! ** Purpose :   Initialization of the dynamics and tracer fields with  
    60       !!              unstructured open boundaries. 
     124      !! ** Purpose :   Definition of unstructured open boundaries. 
    61125      !! 
    62126      !! ** Method  :   Read initialization arrays (mask, indices) to identify  
     
    89153      REAL(wp), POINTER, DIMENSION(:,:)       ::   zfmask  ! temporary fmask array excluding coastal boundary condition (shlat) 
    90154      !! 
    91       CHARACTER(LEN=80),DIMENSION(jpbgrd)  ::   clfile     ! Namelist variables 
    92155      CHARACTER(LEN=1)                     ::   ctypebdy   !     -        -  
    93156      INTEGER                              ::   nbdyind, nbdybeg, nbdyend 
    94157      !! 
    95       NAMELIST/nambdy/ ln_bdy, nb_bdy, ln_coords_file, cn_coords_file,         & 
    96          &             ln_mask_file, cn_mask_file, cn_dyn2d, nn_dyn2d_dta,     & 
    97          &             cn_dyn3d, nn_dyn3d_dta, cn_tra, nn_tra_dta,             &   
    98          &             ln_tra_dmp, ln_dyn3d_dmp, rn_time_dmp, rn_time_dmp_out, & 
    99          &             cn_ice_lim, nn_ice_lim_dta,                             & 
    100          &             rn_ice_tem, rn_ice_sal, rn_ice_age,                     & 
    101          &             ln_vol, nn_volctl, nn_rimwidth 
    102          ! 
    103158      NAMELIST/nambdy_index/ ctypebdy, nbdyind, nbdybeg, nbdyend 
    104159      INTEGER  ::   ios                 ! Local integer output status for namelist read 
    105160      !!---------------------------------------------------------------------- 
    106161      ! 
    107       IF( nn_timing == 1 )   CALL timing_start('bdy_init') 
     162      IF( nn_timing == 1 )   CALL timing_start('bdy_segs') 
    108163      ! 
    109164      cgrid = (/'t','u','v'/) 
    110        
    111       ! ------------------------ 
    112       ! Read namelist parameters 
    113       ! ------------------------ 
    114       REWIND( numnam_ref )              ! Namelist nambdy in reference namelist :Unstructured open boundaries   
    115       READ  ( numnam_ref, nambdy, IOSTAT = ios, ERR = 901) 
    116 901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'nambdy in reference namelist', lwp ) 
    117       ! 
    118       REWIND( numnam_cfg )              ! Namelist nambdy in configuration namelist :Unstructured open boundaries 
    119       READ  ( numnam_cfg, nambdy, IOSTAT = ios, ERR = 902 ) 
    120 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'nambdy in configuration namelist', lwp ) 
    121       IF(lwm) WRITE ( numond, nambdy ) 
    122165 
    123166      ! ----------------------------------------- 
    124167      ! Check and write out namelist parameters 
    125168      ! ----------------------------------------- 
    126       !                                   ! control prints 
    127       IF ( ln_bdy ) THEN 
    128          IF(lwp) WRITE(numout,*) 
    129          IF(lwp) WRITE(numout,*) 'bdy_init : initialization of open boundaries' 
    130          IF(lwp) WRITE(numout,*) '~~~~~~~~' 
    131       ELSE 
    132          IF(lwp) WRITE(numout,*) 
    133          IF(lwp) WRITE(numout,*) 'bdy_init : open boundaries not used (ln_bdy = F)' 
    134          IF(lwp) WRITE(numout,*) '~~~~~~~~' 
    135          IF( nn_timing == 1 )   CALL timing_stop('bdy_init') 
    136          return 
    137       ENDIF 
    138  
    139       IF( jperio /= 0 )   CALL ctl_stop( 'bdy_init: Cyclic or symmetric,',   & 
     169      IF( jperio /= 0 )   CALL ctl_stop( 'bdy_segs: Cyclic or symmetric,',   & 
    140170         &                               ' and general open boundary condition are not compatible' ) 
    141171 
     
    844874               IF(lwp) THEN         ! Since all procs read global data only need to do this check on one proc... 
    845875                  IF( nbrdta(ib,igrd,ib_bdy) < nbrdta(ibm1,igrd,ib_bdy) ) THEN 
    846                      CALL ctl_stop('bdy_init : ERROR : boundary data in file must be defined ', & 
     876                     CALL ctl_stop('bdy_segs : ERROR : boundary data in file must be defined ', & 
    847877                          &        ' in order of distance from edge nbr A utility for re-ordering ', & 
    848878                          &        ' boundary coordinates and data files exists in the TOOLS/OBC directory') 
     
    13051335      CALL wrk_dealloc(jpi,jpj,   zfmask )  
    13061336      ! 
    1307       ! Open boundaries initialisation of external data arrays 
    1308       CALL bdy_dta_init 
    1309       ! 
    1310       ! Open boundaries initialisation of tidal harmonic forcing 
    1311       IF( lk_tide ) CALL bdytide_init 
    1312  
    1313       ! 
    1314       IF( nn_timing == 1 )   CALL timing_stop('bdy_init') 
    1315       ! 
    1316    END SUBROUTINE bdy_init 
    1317  
     1337      IF( nn_timing == 1 )   CALL timing_stop('bdy_segs') 
     1338      ! 
     1339   END SUBROUTINE bdy_segs 
    13181340 
    13191341   SUBROUTINE bdy_ctl_seg 
Note: See TracChangeset for help on using the changeset viewer.