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 6982 for branches – NEMO

Changeset 6982 for branches


Ignore:
Timestamp:
2016-10-04T15:01:17+02:00 (7 years ago)
Author:
flavoni
Message:

update SETTE, SAS, AMM12 and namelists to run simplif-2 branch

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

Legend:

Unmodified
Added
Removed
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/CONFIG/AMM12/EXP00/namelist_cfg

    r6667 r6982  
    2020&namcfg        !   parameters of the configuration 
    2121!----------------------------------------------------------------------- 
    22    ln_read_cfg = .false.   !  (=T) read the domain configuration in 'domain_cfg.nc" file 
     22   ln_read_cfg = .true.   !  (=T) read the domain configuration in 'domain_cfg.nc" file 
    2323   !                       !  (=F) user defined configuration  ==>>>  see usrdef(_...) modules 
    2424   ln_write_cfg= .false.   !  (=T) create the domain configuration file 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/namelist_cfg

    r6624 r6982  
    99   cn_exp      =  "ORCA2"  !  experience name 
    1010   nn_it000    =       1   !  first time step 
    11    nn_itend    =     300   !  last  time step (std 5475) 
    12 / 
    13 !----------------------------------------------------------------------- 
    14 &namcfg        !   parameters of the configuration 
    15 !----------------------------------------------------------------------- 
    16    cp_cfg      =  "orca"               !  name of the configuration 
    17    jp_cfg      =       2               !  resolution of the configuration 
     11   nn_itend    =    5475   !  last  time step (std 5475) 
     12/ 
     13!----------------------------------------------------------------------- 
     14&namcfg     !   parameters of the configuration 
     15!----------------------------------------------------------------------- 
     16   ln_read_cfg = .true.   !  (=T) read the domain configuration in 'domain_cfg.nc" file 
     17   !                       !  (=F) user defined configuration  ==>>>  see usrdef(_...) modules 
     18   ln_write_cfg= .false.    !  (=T) create the domain configuration file 
     19   ! 
     20   cp_cfg      =  "orca"   !  name of the configuration 
     21   jp_cfg      =       2   !  resolution of the configuration 
     22   ln_use_jattr = .false.  !  use (T) the file attribute: open_ocean_jstart, if present 
     23   !                       !  in netcdf input files, as the start j-row for reading 
    1824/ 
    1925!----------------------------------------------------------------------- 
     
    2127!----------------------------------------------------------------------- 
    2228   ln_zps      = .true.    !  z-coordinate - partial steps 
    23    ln_linssh   = .true.    !  linear free surface 
    2429/ 
    2530!----------------------------------------------------------------------- 
    2631&namdom        !   space and time domain (bathymetry, mesh, timestep) 
    2732!----------------------------------------------------------------------- 
    28    ppsur       =   -4762.96143546300   !  ORCA r4, r2 and r05 coefficients 
    29    ppa0        =     255.58049070440   ! (default coefficients) 
    30    ppa1        =     245.58132232490   ! 
    31    ppkth       =      21.43336197938   ! 
    32    ppacr       =       3.0             ! 
    33    ppdzmin     =  999999.              !  Minimum vertical spacing 
    34    pphmax      =  999999.              !  Maximum depth 
    35    ldbletanh   =  .FALSE.              !  Use/do not use double tanf function for vertical coordinates 
    36    ppa2        =  999999.              !  Double tanh function parameters 
    37    ppkth2      =  999999.              ! 
    38    ppacr2      =  999999.              ! 
     33   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
     34   ! 
     35   nn_msh      =    0      !  create (>0) a mesh file or not (=0) 
     36   ! 
    3937/ 
    4038!----------------------------------------------------------------------- 
     
    119117   ln_traldf_lev   =  .false.  !  iso-level 
    120118   ln_traldf_hor   =  .false.  !  horizontal (geopotential) 
    121    ln_traldf_iso   =  .true.   !  iso-neutral (standard operator) 
    122    ln_traldf_triad =  .false.  !  iso-neutral (triad    operator) 
     119   ln_traldf_iso   =  .true.   !  iso-neutral (Standard operator) 
     120   ln_traldf_triad =  .false.  !  iso-neutral (Triads   operator) 
    123121   ! 
    124122   !                       !  iso-neutral options:         
     
    132130   nn_aht_ijk_t    = 20        !  space/time variation of eddy coef 
    133131   !                                !   =-20 (=-30)    read in eddy_diffusivity_2D.nc (..._3D.nc) file 
    134    !                                !   =  0           constant 
    135    !                                !   = 10 F(k)      =ldf_c1d 
    136    !                                !   = 20 F(i,j)    =ldf_c2d 
     132   !                                !   =  0           constant  
     133   !                                !   = 10 F(k)      =ldf_c1d  
     134   !                                !   = 20 F(i,j)    =ldf_c2d  
    137135   !                                !   = 21 F(i,j,t)  =Treguier et al. JPO 1997 formulation 
    138136   !                                !   = 30 F(i,j,k)  =ldf_c2d + ldf_c1d 
     
    149147   nn_aei_ijk_t  = 21      ! space/time variation of the eiv coeficient 
    150148   !                                !   =-20 (=-30)    read in eddy_induced_velocity_2D.nc (..._3D.nc) file 
    151    !                                !   =  0           constant 
    152    !                                !   = 10 F(k)      =ldf_c1d 
    153    !                                !   = 20 F(i,j)    =ldf_c2d 
     149   !                                !   =  0           constant  
     150   !                                !   = 10 F(k)      =ldf_c1d  
     151   !                                !   = 20 F(i,j)    =ldf_c2d  
    154152   !                                !   = 21 F(i,j,t)  =Treguier et al. JPO 1997 formulation 
    155153   !                                !   = 30 F(i,j,k)  =ldf_c2d + ldf_c1d 
    156154/ 
    157155!----------------------------------------------------------------------- 
    158 &namtra_dmp    !   tracer: T & S newtonian damping 
    159 !----------------------------------------------------------------------- 
    160 / 
     156&namtra_dmp    !   tracer: T & S newtonian damping                      (default: NO) 
     157!----------------------------------------------------------------------- 
    161158!----------------------------------------------------------------------- 
    162159&namdyn_adv    !   formulation of the momentum advection 
     
    177174/ 
    178175!----------------------------------------------------------------------- 
    179 &namdyn_spg    !   Surface pressure gradient 
    180 !----------------------------------------------------------------------- 
    181    ln_dynspg_ts = .true.   !  Split-explicit free surface 
     176&namdyn_spg    !   surface pressure gradient 
     177!----------------------------------------------------------------------- 
     178   ln_dynspg_ts  = .true.  !  split-explicit free surface 
    182179/ 
    183180!----------------------------------------------------------------------- 
     
    204201   rn_ahm_b      =      0.     !  background eddy viscosity for ldf_iso [m2/s] 
    205202   rn_bhm_0      = 1.e+12      !  horizontal bilaplacian eddy viscosity [m4/s] 
     203   ! 
     204   ! Caution in 20 and 30 cases the coefficient have to be given for a 1 degree grid (~111km) 
    206205/ 
    207206!----------------------------------------------------------------------- 
     
    234233/ 
    235234!----------------------------------------------------------------------- 
    236 &namhsb       !  Heat and salt budgets 
    237 !----------------------------------------------------------------------- 
    238 / 
    239 !----------------------------------------------------------------------- 
    240 &namobs       !  observation usage 
     235&namhsb       !  Heat and salt budgets                                  (default F) 
     236!----------------------------------------------------------------------- 
     237/ 
     238!----------------------------------------------------------------------- 
     239&namobs       !  observation usage                                      ('key_diaobs') 
    241240!----------------------------------------------------------------------- 
    242241/ 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/CONFIG/ORCA2_LIM3/EXP00/namelist_cfg

    r6974 r6982  
    1616   ln_read_cfg = .true.   !  (=T) read the domain configuration in 'domain_cfg.nc" file 
    1717   !                       !  (=F) user defined configuration  ==>>>  see usrdef(_...) modules 
    18    ln_write_cfg= .true.    !  (=T) create the domain configuration file 
     18   ln_write_cfg= .false.    !  (=T) create the domain configuration file 
    1919   ! 
    2020   cp_cfg      =  "orca"   !  name of the configuration 
     
    3333   ln_linssh   = .false.   !  =T  linear free surface  ==>>  model level are fixed in time 
    3434   ! 
    35    nn_msh      =    1      !  create (>0) a mesh file or not (=0) 
     35   nn_msh      =    0      !  create (>0) a mesh file or not (=0) 
    3636   ! 
    3737/ 
     
    156156&namtra_dmp    !   tracer: T & S newtonian damping                      (default: NO) 
    157157!----------------------------------------------------------------------- 
    158    ln_tradmp   =  .false.   !  add a damping termn (T) or not (F) 
    159 / 
    160158!----------------------------------------------------------------------- 
    161159&namdyn_adv    !   formulation of the momentum advection 
     
    174172&namdyn_hpg    !   Hydrostatic pressure gradient option 
    175173!----------------------------------------------------------------------- 
    176    ln_hpg_sco  = .true.    !  s-coordinate (standard jacobian formulation) 
    177    ln_hpg_zps  = .false.   !  z-coordinate - partial steps (interpolation) 
    178174/ 
    179175!----------------------------------------------------------------------- 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/SAO_SRC/nemogcm.F90

    r6596 r6982  
    2828   !!             -   ! 2010-10  (C. Ethe, G. Madec) reorganisation of initialisation phase 
    2929   !!            3.3.1! 2011-01  (A. R. Porter, STFC Daresbury) dynamical allocation 
    30    !!            3.4  ! 2011-11  (C. Harris) decomposition changes for running with CICE 
    31    !!                 ! 2012-05  (C. Calone, J. Simeon, G. Madec, C. Ethe) Add grid coarsening  
     30   !!            3.4  ! 2011-10  (A. C. Coward, NOCS & J. Donners, PRACE) add nemo_northcomms 
     31   !!             -   ! 2011-11  (C. Harris) decomposition changes for running with CICE 
     32   !!            3.6  ! 2012-05  (C. Calone, J. Simeon, G. Madec, C. Ethe) Add grid coarsening  
     33   !!             -   ! 2013-06  (I. Epicoco, S. Mocavero, CMCC) nemo_northcomms: setup avoiding MPI communication  
     34   !!             -   ! 2014-12  (G. Madec) remove KPP scheme and cross-land advection (cla) 
    3235   !!---------------------------------------------------------------------- 
    3336 
     
    4144   !!   factorise      : calculate the factors of the no. of MPI processes 
    4245   !!---------------------------------------------------------------------- 
    43    USE step_oce        ! module used in the ocean time stepping module 
    44    USE domcfg          ! domain configuration               (dom_cfg routine) 
    45    USE mppini          ! shared/distributed memory setting (mpp_init routine) 
    46    USE domain          ! domain initialization             (dom_init routine) 
     46   USE step_oce       ! module used in the ocean time stepping module (step.F90) 
     47   USE domcfg         ! domain configuration               (dom_cfg routine) 
     48   USE mppini         ! shared/distributed memory setting (mpp_init routine) 
     49   USE domain         ! domain initialization             (dom_init routine) 
    4750#if defined key_nemocice_decomp 
    4851   USE ice_domain_size, only: nx_global, ny_global 
     
    5659   USE lib_mpp         ! distributed memory computing 
    5760#if defined key_iomput 
    58    USE xios 
     61   USE xios           ! xIOserver 
    5962#endif 
    6063   USE lbcnfd, ONLY: isendto, nsndto, nfsloop, nfeloop ! Setup of north fold exchanges  
     
    7477 
    7578   !!---------------------------------------------------------------------- 
    76    !! NEMO/OPA 4.0 , NEMO Consortium (2011) 
     79   !! NEMO/OPA 4.0 , NEMO Consortium (2016) 
    7780   !! $Id$ 
    7881   !! Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt) 
     
    124127      NAMELIST/namctl/ ln_ctl, nn_print, nn_ictls, nn_ictle,   & 
    125128         &             nn_isplt, nn_jsplt, nn_jctls, nn_jctle,   & 
    126          &             nn_bench, nn_timing 
    127       NAMELIST/namcfg/ cp_cfg, cp_cfz, jp_cfg,   & 
    128          &             jperio, ln_use_jattr 
     129         &             nn_timing, nn_diacfl 
     130      NAMELIST/namcfg/ ln_read_cfg, ln_write_cfg, cp_cfg, jp_cfg, ln_use_jattr 
    129131      !!---------------------------------------------------------------------- 
    130132      ! 
     
    153155904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfg in configuration namelist', .TRUE. )    
    154156 
    155 ! Force values for AGRIF zoom (cf. agrif_user.F90) 
     157!!gm      WRITE(clbug(3),*) ' after namelist namcfg read    nstop', nstop 
     158 
     159      !                             !--------------------------! 
     160      !                             !  Set global domain size  !   (control print return in cltxt2) 
     161      !                             !--------------------------! 
     162      IF( ln_read_cfg ) THEN              ! Read sizes in configuration "mesh_mask" file 
     163         CALL iom_open( 'domain_cfg', inum ) 
     164         CALL iom_get( inum, 'jpiglo', ziglo  )   ;   jpiglo = INT( ziglo ) 
     165         CALL iom_get( inum, 'jpjglo', zjglo  )   ;   jpjglo = INT( zjglo ) 
     166         CALL iom_get( inum, 'jpkglo', zkglo  )   ;   jpkglo = INT( zkglo ) 
     167         CALL iom_get( inum, 'jperio', zperio )   ;   jperio = INT( zperio ) 
     168         CALL iom_close( inum ) 
     169         WRITE(cltxt2(1),*)        
     170         WRITE(cltxt2(2),*) 'domain_cfg : domain size read in "domain_cfg" file : jp(i,j,k)glo = ', jpiglo, jpjglo, jpkglo         
     171         WRITE(cltxt2(3),*) '~~~~~~~~~~   lateral boudary type of the global domain      jperio= ', jperio 
     172         !         
     173      ELSE                                ! user-defined namelist 
     174         CALL usr_def_nam( cltxt2, clnam, jpiglo, jpjglo, jpkglo, jperio ) 
     175      ENDIF 
     176      jpk    = jpkglo 
     177      ! 
    156178#if defined key_agrif 
    157    IF( .NOT. Agrif_Root() ) THEN 
    158       jpiglo  = nbcellsx + 2 + 2*nbghostcells 
    159       jpjglo  = nbcellsy + 2 + 2*nbghostcells 
    160       jpi     = ( jpiglo-2*jpreci + (jpni-1+0) ) / jpni + 2*jpreci 
    161       jpj     = ( jpjglo-2*jprecj + (jpnj-1+0) ) / jpnj + 2*jprecj 
    162       jpidta  = jpiglo 
    163       jpjdta  = jpjglo 
    164       nperio  = 0 
    165       jperio  = 0 
    166       ln_use_jattr = .false. 
    167    ENDIF 
     179      IF( .NOT. Agrif_Root() ) THEN       ! AGRIF children: specific setting (cf. agrif_user.F90) 
     180         jpiglo  = nbcellsx + 2 + 2*nbghostcells 
     181         jpjglo  = nbcellsy + 2 + 2*nbghostcells 
     182         jpi     = ( jpiglo-2*jpreci + (jpni-1+0) ) / jpni + 2*jpreci 
     183         jpj     = ( jpjglo-2*jprecj + (jpnj-1+0) ) / jpnj + 2*jprecj 
     184         nperio  = 0 
     185         jperio  = 0 
     186         ln_use_jattr = .false. 
     187      ENDIF 
    168188#endif 
    169189      ! 
     
    208228         WRITE( numond, namctl ) 
    209229         WRITE( numond, namcfg ) 
     230         IF( .NOT.ln_read_cfg ) THEN 
     231            DO ji = 1, SIZE(clnam) 
     232               IF( TRIM(clnam (ji)) /= '' )   WRITE(numond, * ) clnam(ji)    ! namusr_def print 
     233            END DO 
     234         ENDIF 
    210235      ENDIF 
    211236 
    212237      ! If dimensions of processor grid weren't specified in the namelist file 
    213238      ! then we calculate them here now that we have our communicator size 
    214       IF( (jpni < 1) .OR. (jpnj < 1) )THEN 
     239      IF( jpni < 1 .OR. jpnj < 1 ) THEN 
    215240#if   defined key_mpp_mpi 
    216241         IF( Agrif_Root() ) CALL nemo_partition(mppsize) 
     
    220245         jpnij = jpni*jpnj 
    221246#endif 
    222       END IF 
     247      ENDIF 
    223248 
    224249      ! Calculate domain dimensions given calculated jpni and jpnj 
     
    234259#endif 
    235260      ENDIF 
    236          jpk = jpkdta                                             ! third dim 
    237          jpim1 = jpi-1                                            ! inner domain indices 
    238          jpjm1 = jpj-1                                            !   "           " 
    239          jpkm1 = jpk-1                                            !   "           " 
    240          jpij  = jpi*jpj                                          !  jpi x j 
     261 
     262!!gm ???    why here  it has already been done in line 301 ! 
     263      jpk = jpkglo                                             ! third dim 
     264!!gm end 
     265      jpim1 = jpi-1                                            ! inner domain indices 
     266      jpjm1 = jpj-1                                            !   "           " 
     267      jpkm1 = jpk-1                                            !   "           " 
     268      jpij  = jpi*jpj                                          !  jpi x j 
    241269 
    242270      IF(lwp) THEN                            ! open listing units 
     
    244272         CALL ctl_opn( numout, 'ocean.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE., narea ) 
    245273         ! 
     274 
     275         DO ji = 1, SIZE(clbug) 
     276            IF( TRIM(clbug (ji)) /= '' )   WRITE(numout,*) clbug(ji)      ! bug print  
     277         END DO 
     278         WRITE(numout,*) 
     279 
     280 
     281 
     282 
    246283         WRITE(numout,*) 
    247284         WRITE(numout,*) '   CNRS - NERC - Met OFFICE - MERCATOR-ocean - INGV - CMCC' 
     
    311348         WRITE(numout,*) '      number of proc. following i     nn_isplt   = ', nn_isplt 
    312349         WRITE(numout,*) '      number of proc. following j     nn_jsplt   = ', nn_jsplt 
    313          WRITE(numout,*) '      benchmark parameter (0/1)       nn_bench   = ', nn_bench 
    314350         WRITE(numout,*) '      timing activated    (0/1)       nn_timing  = ', nn_timing 
    315351      ENDIF 
     
    322358      isplt     = nn_isplt 
    323359      jsplt     = nn_jsplt 
    324       nbench    = nn_bench 
    325360 
    326361      IF(lwp) THEN                  ! control print 
     
    329364         WRITE(numout,*) '~~~~~~~ ' 
    330365         WRITE(numout,*) '   Namelist namcfg' 
    331          WRITE(numout,*) '      configuration name              cp_cfg      = ', TRIM(cp_cfg) 
    332          WRITE(numout,*) '      configuration zoom name         cp_cfz      = ', TRIM(cp_cfz) 
    333          WRITE(numout,*) '      configuration resolution        jp_cfg      = ', jp_cfg 
    334          WRITE(numout,*) '      lateral cond. type (between 0 and 6) jperio = ', jperio    
     366         WRITE(numout,*) '      read configuration definition files          ln_read_cfg = ', ln_read_cfg 
     367         WRITE(numout,*) '      configuration name                               cp_cfg  = ', TRIM(cp_cfg) 
     368         WRITE(numout,*) '      configuration resolution                         jp_cfg  = ', jp_cfg 
    335369         WRITE(numout,*) '      use file attribute if exists as i/p j-start ln_use_jattr = ', ln_use_jattr 
    336370      ENDIF 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/SAS_SRC/nemogcm.F90

    r6596 r6982  
    66   !! History :  OPA  ! 1990-10  (C. Levy, G. Madec)  Original code 
    77   !!            7.0  ! 1991-11  (M. Imbard, C. Levy, G. Madec) 
    8    !!            7.1  ! 1993-03  (M. Imbard, C. Levy, G. Madec, O. Marti, M. Guyon, A. Lazar,  
    9    !!                             P. Delecluse, C. Perigaud, G. Caniaux, B. Colot, C. Maes) release 7.1  
     8   !!            7.1  ! 1993-03  (M. Imbard, C. Levy, G. Madec, O. Marti, M. Guyon, A. Lazar, 
     9   !!                             P. Delecluse, C. Perigaud, G. Caniaux, B. Colot, C. Maes) release 7.1 
    1010   !!             -   ! 1992-06  (L.Terray)  coupling implementation 
    11    !!             -   ! 1993-11  (M.A. Filiberti) IGLOO sea-ice  
    12    !!            8.0  ! 1996-03  (M. Imbard, C. Levy, G. Madec, O. Marti, M. Guyon, A. Lazar,  
     11   !!             -   ! 1993-11  (M.A. Filiberti) IGLOO sea-ice 
     12   !!            8.0  ! 1996-03  (M. Imbard, C. Levy, G. Madec, O. Marti, M. Guyon, A. Lazar, 
    1313   !!                             P. Delecluse, L.Terray, M.A. Filiberti, J. Vialar, A.M. Treguier, M. Levy) release 8.0 
    1414   !!            8.1  ! 1997-06  (M. Imbard, G. Madec) 
    15    !!            8.2  ! 1999-11  (M. Imbard, H. Goosse)  LIM sea-ice model  
    16    !!                 ! 1999-12  (V. Thierry, A-M. Treguier, M. Imbard, M-A. Foujols)  OPEN-MP  
     15   !!            8.2  ! 1999-11  (M. Imbard, H. Goosse)  LIM sea-ice model 
     16   !!                 ! 1999-12  (V. Thierry, A-M. Treguier, M. Imbard, M-A. Foujols)  OPEN-MP 
    1717   !!                 ! 2000-07  (J-M Molines, M. Imbard)  Open Boundary Conditions  (CLIPPER) 
    1818   !!   NEMO     1.0  ! 2002-08  (G. Madec)  F90: Free form and modules 
     
    2525   !!             -   ! 2007-07  (J. Chanut, A. Sellar) Unstructured open boundaries (BDY) 
    2626   !!            3.2  ! 2009-08  (S. Masson)  open/write in the listing file in mpp 
    27    !!            3.3  ! 2010-05  (K. Mogensen, A. Weaver, M. Martin, D. Lea) Assimilation interface  
     27   !!            3.3  ! 2010-05  (K. Mogensen, A. Weaver, M. Martin, D. Lea) Assimilation interface 
    2828   !!             -   ! 2010-10  (C. Ethe, G. Madec) reorganisation of initialisation phase 
    2929   !!            3.3.1! 2011-01  (A. R. Porter, STFC Daresbury) dynamical allocation 
    30    !!            3.4  ! 2011-11  (C. Harris) decomposition changes for running with CICE 
     30   !!            3.4  ! 2011-10  (A. C. Coward, NOCS & J. Donners, PRACE) add nemo_northcomms 
     31   !!             -   ! 2011-11  (C. Harris) decomposition changes for running with CICE 
     32   !!            3.6  ! 2012-05  (C. Calone, J. Simeon, G. Madec, C. Ethe) Add grid coarsening  
     33   !!             -   ! 2013-06  (I. Epicoco, S. Mocavero, CMCC) nemo_northcomms: setup avoiding MPI communication  
     34   !!             -   ! 2014-12  (G. Madec) remove KPP scheme and cross-land advection (cla) 
    3135   !!---------------------------------------------------------------------- 
    3236 
     
    6468#endif 
    6569   USE bdy_par 
     70   USE usrdef_nam     ! user defined configuration 
    6671 
    6772   IMPLICIT NONE 
     
    7479 
    7580   !!---------------------------------------------------------------------- 
    76    !! NEMO/OPA 4.0 , NEMO Consortium (2011) 
     81   !! NEMO/OPA 4.0 , NEMO Consortium (2016) 
    7782   !! $Id$ 
    7883   !! Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt) 
     
    8489      !!                     ***  ROUTINE nemo_gcm  *** 
    8590      !! 
    86       !! ** Purpose :   NEMO solves the primitive equations on an orthogonal  
     91      !! ** Purpose :   NEMO solves the primitive equations on an orthogonal 
    8792      !!              curvilinear mesh on the sphere. 
    8893      !! 
     
    124129      !                            !-----------------------! 
    125130      istp = nit000 
    126          
     131#if defined key_agrif 
     132      CALL Agrif_Regrid() 
     133#endif 
     134 
    127135      DO WHILE ( istp <= nitend .AND. nstop == 0 ) 
    128136#if defined key_agrif 
    129          CALL Agrif_Step( stp )           ! AGRIF: time stepping 
     137         CALL stp                         ! AGRIF: time stepping 
    130138#else 
    131          CALL stp( istp )                 ! standard time stepping 
     139         IF ( .NOT. ln_diurnal_only ) THEN 
     140            CALL stp( istp )                 ! standard time stepping 
     141         ELSE 
     142            CALL stp_diurnal( istp )        ! time step only the diurnal SST 
     143         ENDIF  
    132144#endif 
    133145         istp = istp + 1 
    134146         IF( lk_mpp )   CALL mpp_max( nstop ) 
    135       END DO 
     147         END DO 
    136148      ! 
    137149      IF( ln_icebergs )   CALL icb_end( nitend ) 
     
    157169      ! 
    158170#if defined key_iomput 
    159       CALL xios_finalize                ! end mpp communications with xios 
    160       IF( lk_oasis ) CALL cpl_finalize    ! end coupling and mpp communications with OASIS 
     171      CALL xios_finalize                  ! end mpp communications with xios 
     172      IF( lk_oasis )   CALL cpl_finalize  ! end coupling and mpp communications with OASIS 
    161173#else 
    162174      IF( lk_oasis ) THEN  
     
    176188      !! ** Purpose :   initialization of the NEMO GCM 
    177189      !!---------------------------------------------------------------------- 
    178       INTEGER ::   ji            ! dummy loop indices 
    179       INTEGER ::   ilocal_comm   ! local integer       
    180       INTEGER ::   ios 
    181       CHARACTER(len=80), DIMENSION(16) ::   cltxt 
    182       CHARACTER(len=80) ::   clname 
     190      INTEGER  ::   ji            ! dummy loop indices 
     191      INTEGER  ::   ilocal_comm   ! local integer 
     192      INTEGER  ::   ios, inum     !   -      - 
     193      REAL(wp) ::   ziglo, zjglo, zkglo, zperio   ! local scalars 
     194      CHARACTER(len=120), DIMENSION(30) ::   cltxt, cltxt2, clnam, clbug 
     195      CHARACTER(len=80)                 ::   clname 
    183196      ! 
    184197      NAMELIST/namctl/ ln_ctl  , nn_print, nn_ictls, nn_ictle,   & 
    185198         &             nn_isplt, nn_jsplt, nn_jctls, nn_jctle,   & 
    186          &             nn_bench, nn_timing, nn_diacfl 
    187       NAMELIST/namcfg/ cp_cfg, cp_cfz, jp_cfg,   & 
    188          &             jperio, ln_use_jattr 
    189       !!---------------------------------------------------------------------- 
    190       ! 
    191       cltxt = '' 
     199         &             nn_timing, nn_diacfl 
     200      NAMELIST/namcfg/ ln_read_cfg, ln_write_cfg, cp_cfg, jp_cfg, ln_use_jattr 
     201      !!---------------------------------------------------------------------- 
     202      ! 
     203      cltxt  = '' 
     204      cltxt2 = '' 
     205      clnam  = ''   
     206      clbug  = '' 
     207      cxios_context = 'nemo' 
    192208      ! 
    193209      !                             ! Open reference namelist and configuration namelist files 
     
    221237904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfg in configuration namelist', .TRUE. )    
    222238 
    223 ! Force values for AGRIF zoom (cf. agrif_user.F90) 
     239!!gm      WRITE(clbug(3),*) ' after namelist namcfg read    nstop', nstop 
     240 
     241      !                             !--------------------------! 
     242      !                             !  Set global domain size  !   (control print return in cltxt2) 
     243      !                             !--------------------------! 
     244      IF( ln_read_cfg ) THEN              ! Read sizes in configuration "mesh_mask" file 
     245         CALL iom_open( 'domain_cfg', inum ) 
     246         CALL iom_get( inum, 'jpiglo', ziglo  )   ;   jpiglo = INT( ziglo ) 
     247         CALL iom_get( inum, 'jpjglo', zjglo  )   ;   jpjglo = INT( zjglo ) 
     248         CALL iom_get( inum, 'jpkglo', zkglo  )   ;   jpkglo = INT( zkglo ) 
     249         CALL iom_get( inum, 'jperio', zperio )   ;   jperio = INT( zperio ) 
     250         CALL iom_close( inum ) 
     251         WRITE(cltxt2(1),*)        
     252         WRITE(cltxt2(2),*) 'domain_cfg : domain size read in "domain_cfg" file : jp(i,j,k)glo = ', jpiglo, jpjglo, jpkglo         
     253         WRITE(cltxt2(3),*) '~~~~~~~~~~   lateral boudary type of the global domain      jperio= ', jperio 
     254         !         
     255      ELSE                                ! user-defined namelist 
     256         CALL usr_def_nam( cltxt2, clnam, jpiglo, jpjglo, jpkglo, jperio ) 
     257      ENDIF 
     258      jpk    = jpkglo 
     259      ! 
    224260#if defined key_agrif 
    225    IF( .NOT. Agrif_Root() ) THEN 
    226       jpiglo  = nbcellsx + 2 + 2*nbghostcells 
    227       jpjglo  = nbcellsy + 2 + 2*nbghostcells 
    228       jpi     = ( jpiglo-2*jpreci + (jpni-1+0) ) / jpni + 2*jpreci 
    229       jpj     = ( jpjglo-2*jprecj + (jpnj-1+0) ) / jpnj + 2*jprecj 
    230       jpidta  = jpiglo 
    231       jpjdta  = jpjglo 
    232       nperio  = 0 
    233       jperio  = 0 
    234       ln_use_jattr = .false. 
    235    ENDIF 
     261      IF( .NOT. Agrif_Root() ) THEN       ! AGRIF children: specific setting (cf. agrif_user.F90) 
     262         jpiglo  = nbcellsx + 2 + 2*nbghostcells 
     263         jpjglo  = nbcellsy + 2 + 2*nbghostcells 
     264         jpi     = ( jpiglo-2*jpreci + (jpni-1+0) ) / jpni + 2*jpreci 
     265         jpj     = ( jpjglo-2*jprecj + (jpnj-1+0) ) / jpnj + 2*jprecj 
     266         nperio  = 0 
     267         jperio  = 0 
     268         ln_use_jattr = .false. 
     269      ENDIF 
    236270#endif 
    237271      ! 
     
    273307         WRITE( numond, namctl ) 
    274308         WRITE( numond, namcfg ) 
     309         IF( .NOT.ln_read_cfg ) THEN 
     310            DO ji = 1, SIZE(clnam) 
     311               IF( TRIM(clnam (ji)) /= '' )   WRITE(numond, * ) clnam(ji)    ! namusr_def print 
     312            END DO 
     313         ENDIF 
    275314      ENDIF 
    276315 
    277316      ! If dimensions of processor grid weren't specified in the namelist file  
    278317      ! then we calculate them here now that we have our communicator size 
    279       IF( (jpni < 1) .OR. (jpnj < 1) )THEN 
     318      IF( jpni < 1 .OR. jpnj < 1 ) THEN 
    280319#if   defined key_mpp_mpi 
    281          IF( Agrif_Root() ) CALL nemo_partition(mppsize) 
     320         IF( Agrif_Root() )   CALL nemo_partition( mppsize ) 
    282321#else 
    283322         jpni  = 1 
     
    285324         jpnij = jpni*jpnj 
    286325#endif 
    287       END IF 
     326      ENDIF 
    288327 
    289328      ! Calculate domain dimensions given calculated jpni and jpnj 
     
    299338#endif 
    300339      ENDIF 
    301          jpk = jpkdta                                             ! third dim 
    302          jpim1 = jpi-1                                            ! inner domain indices 
    303          jpjm1 = jpj-1                                            !   "           " 
    304          jpkm1 = jpk-1                                            !   "           " 
    305          jpij  = jpi*jpj                                          !  jpi x j 
     340 
     341!!gm ???    why here  it has already been done in line 301 ! 
     342      jpk = jpkglo                                             ! third dim 
     343!!gm end 
     344 
     345#if defined key_agrif 
     346      ! simple trick to use same vertical grid as parent but different number of levels:  
     347      ! Save maximum number of levels in jpkglo, then define all vertical grids with this number. 
     348      ! Suppress once vertical online interpolation is ok 
     349      IF(.NOT.Agrif_Root())   jpkglo = Agrif_Parent( jpkglo ) 
     350#endif 
     351      jpim1 = jpi-1                                            ! inner domain indices 
     352      jpjm1 = jpj-1                                            !   "           " 
     353      jpkm1 = jpk-1                                            !   "           " 
     354      jpij  = jpi*jpj                                          !  jpi x j 
    306355 
    307356      IF(lwp) THEN                            ! open listing units 
     
    317366         WRITE(numout,*) '                       NEMO team' 
    318367         WRITE(numout,*) '            Ocean General Circulation Model' 
    319          WRITE(numout,*) '                  version 3.6  (2015) ' 
     368         WRITE(numout,*) '                  version 3.7  (2015) ' 
    320369         WRITE(numout,*) '             StandAlone Surface version (SAS) ' 
    321370         WRITE(numout,*) 
     
    324373            IF( TRIM(cltxt(ji)) /= '' )   WRITE(numout,*) cltxt(ji)      ! control print of mynode 
    325374         END DO 
     375         WRITE(numout,*) 
     376         WRITE(numout,*) 
     377         DO ji = 1, SIZE(cltxt2) 
     378!            IF( TRIM(cltxt2(ji)) /= '' )   WRITE(numout,*) cltxt2(ji)     ! control print of domain size 
     379            IF( cltxt2(ji) /= '' )   WRITE(numout,*) cltxt2(ji)     ! control print of domain size 
     380         END DO 
     381         ! 
    326382         WRITE(numout,cform_aaa)                                         ! Flag AAAAAAA 
    327383         ! 
     
    392448         WRITE(numout,*) '      number of proc. following i     nn_isplt   = ', nn_isplt 
    393449         WRITE(numout,*) '      number of proc. following j     nn_jsplt   = ', nn_jsplt 
    394          WRITE(numout,*) '      benchmark parameter (0/1)       nn_bench   = ', nn_bench 
     450         WRITE(numout,*) '      timing activated    (0/1)       nn_timing  = ', nn_timing 
    395451      ENDIF 
    396452      ! 
     
    402458      isplt     = nn_isplt 
    403459      jsplt     = nn_jsplt 
    404       nbench    = nn_bench 
    405460 
    406461      IF(lwp) THEN                  ! control print 
     
    409464         WRITE(numout,*) '~~~~~~~ ' 
    410465         WRITE(numout,*) '   Namelist namcfg' 
    411          WRITE(numout,*) '      configuration name              cp_cfg      = ', TRIM(cp_cfg) 
    412          WRITE(numout,*) '      configuration zoom name         cp_cfz      = ', TRIM(cp_cfz) 
    413          WRITE(numout,*) '      configuration resolution        jp_cfg      = ', jp_cfg 
    414          WRITE(numout,*) '      lateral cond. type (between 0 and 6) jperio = ', jperio    
     466         WRITE(numout,*) '      read configuration definition files          ln_read_cfg = ', ln_read_cfg 
     467         WRITE(numout,*) '      configuration name                               cp_cfg  = ', TRIM(cp_cfg) 
     468         WRITE(numout,*) '      configuration resolution                         jp_cfg  = ', jp_cfg 
    415469         WRITE(numout,*) '      use file attribute if exists as i/p j-start ln_use_jattr = ', ln_use_jattr 
    416470      ENDIF 
     
    609663 
    610664      ! Clear the error flag and initialise output vars 
    611       kerr = 0 
    612       kfax = 1 
     665      kerr  = 0 
     666      kfax  = 1 
    613667      knfax = 0 
    614  
     668      ! 
    615669      ! Find the factors of n. 
    616670      IF( kn == 1 )   GOTO 20 
     
    620674      ! l points to the allowed factor list. 
    621675      ! ifac holds the current factor. 
    622  
     676      ! 
    623677      inu   = kn 
    624678      knfax = 0 
    625  
     679      ! 
    626680      DO jl = ntest, 1, -1 
    627681         ! 
     
    647701         ! 
    648702      END DO 
    649  
     703      ! 
    650704   20 CONTINUE      ! Label 20 is the exit point from the factor search loop. 
    651705      ! 
     
    653707 
    654708#if defined key_mpp_mpi 
     709 
    655710   SUBROUTINE nemo_northcomms 
    656711      !!====================================================================== 
     
    666721      !!    2.0  ! 2013-06 Setup avoiding MPI communication (I. Epicoco, S. Mocavero, CMCC)  
    667722      !!---------------------------------------------------------------------- 
    668  
    669723      INTEGER  ::   sxM, dxM, sxT, dxT, jn 
    670724      INTEGER  ::   njmppmax 
    671  
     725      !!---------------------------------------------------------------------- 
     726      ! 
    672727      njmppmax = MAXVAL( njmppt ) 
    673      
     728      ! 
    674729      !initializes the north-fold communication variables 
    675730      isendto(:) = 0 
    676       nsndto = 0 
    677  
     731      nsndto     = 0 
     732      ! 
    678733      !if I am a process in the north 
    679734      IF ( njmpp == njmppmax ) THEN 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/SETTE/input_ORCA2_LIM_OBS.cfg

    r4990 r6982  
    1 ORCA2_LIM_nemo_v3.6.tar ORCA2_LIM_nemo_v3.6 
     1ORCA2_LIM_nemo_v3.7.tar ORCA2_LIM_nemo_v3.7 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/SETTE/input_SAS.cfg

    r4324 r6982  
    1 ORCA2_LIM_nemo_v3.6.tar ORCA2_LIM_nemo_v3.6 
     1ORCA2_LIM_nemo_v3.7.tar ORCA2_LIM_nemo_v3.7 
    22INPUTS_SAS_v3.5.tar SAS  
Note: See TracChangeset for help on using the changeset viewer.