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 3901 – NEMO

Changeset 3901


Ignore:
Timestamp:
2013-05-03T14:35:21+02:00 (11 years ago)
Author:
clevy
Message:

Configuration Setting/Step2, see ticket:#1074

Location:
branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM
Files:
2 added
104 edited

Legend:

Unmodified
Added
Removed
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/CONFIG/ORCA2_OFF_PISCES/EXP00/namelist_cfg

    r3875 r3901  
    194194   sn_ubl  = 'dyna_grid_U' ,    120            , 'sobblcox' ,  .true.    , .true. ,   'yearly'  , ''       , '' 
    195195   sn_vbl  = 'dyna_grid_V' ,    120            , 'sobblcoy' ,  .true.    , .true. ,   'yearly'  , ''       , '' 
     196   sn_ahu  = 'dyna_grid_U' ,    120            , 'vozoahtu' ,  .true.    , .true. ,   'yearly'  , ''       , '' 
     197   sn_ahv  = 'dyna_grid_V' ,    120            , 'vomeahtv' ,  .true.    , .true. ,   'yearly'  , ''       , '' 
     198   sn_ahw  = 'dyna_grid_W' ,    120            , 'voveahtz' ,  .true.    , .true. ,   'yearly'  , ''       , '' 
     199   sn_eiu  = 'dyna_grid_U' ,    120            , 'vozoaeiu' ,  .true.    , .true. ,   'yearly'  , ''       , ''  
     200   sn_eiv  = 'dyna_grid_V' ,    120            , 'vomeaeiv' ,  .true.    , .true. ,   'yearly'  , ''       , '' 
    196201   sn_eiw  = 'dyna_grid_W' ,    120            , 'soleaeiw' ,  .true.    , .true. ,   'yearly'  , ''       , '' 
    197202! 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/CONFIG/SHARED/namelist_ref

    r3875 r3901  
    529529   rn_bfri2    =    1.e-3  !  bottom drag coefficient (non linear case) 
    530530   rn_bfeb2    =    2.5e-3 !  bottom turbulent kinetic energy background  (m2/s2) 
     531   rn_bfrz0    =    3.e-3  ! bottom roughness for loglayer bfr coeff  
    531532   ln_bfr2d    = .false.   !  horizontal variation of the bottom friction coef (read a 2D mask file ) 
    532533   rn_bfrien   =    50.    !  local multiplying factor of bfr (ln_bfr2d=T) 
     
    604605   rn_ahtb_0        =     0.    !  background eddy diffusivity for ldf_iso [m2/s] 
    605606   !                                           (normally=0; not used with Griffies) 
     607   rn_slpmax        =     0.01  !  slope limit 
     608   rn_chsmag        =     1.    !  multiplicative factor in Smagorinsky diffusivity 
     609   rn_smsh          =     1.    !  Smagorinsky diffusivity: = 0 - use only sheer 
     610   rn_aht_m         =  2000.    !  upper limit or stability criteria for lateral eddy diffusivity (m2/s) 
    606611/ 
    607612!----------------------------------------------------------------------- 
     
    678683   rn_ahmb_0        =     0.    !  background eddy viscosity for ldf_iso [m2/s] 
    679684   rn_ahm_0_blp     =     0.    !  horizontal bilaplacian eddy viscosity [m4/s] 
     685   rn_cmsmag_1      =     3.    !  constant in laplacian Smagorinsky viscosity 
     686   rn_cmsmag_2      =     3     !  constant in bilaplacian Smagorinsky viscosity 
     687   rn_cmsh          =     1.    !  1 or 0 , if 0 -use only shear for Smagorinsky viscosity 
     688   rn_ahm_m_blp     =    -1.e12 !  upper limit for bilap  abs(ahm) < min( dx^4/128rdt, rn_ahm_m_blp) 
     689   rn_ahm_m_lap     = 40000.    !  upper limit for lap  ahm < min(dx^2/16rdt, rn_ahm_m_lap) 
    680690/ 
    681691 
     
    728738   rn_emin     =   1.e-6   !  minimum value of tke [m2/s2] 
    729739   rn_emin0    =   1.e-4   !  surface minimum value of tke [m2/s2] 
     740   rn_bshear   =   1.e-20  ! background shear (>0) currently a numerical threshold (do not change it) 
    730741   nn_mxl      =   2       !  mixing length: = 0 bounded by the distance to surface and bottom 
    731742                           !                 = 1 bounded by the local vertical scale factor 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/CONFIG/SHARED/namelist_top_ref

    r3875 r3901  
    9898   ln_diatrc     =  .true.   !  save additional diag. (T) or not (F) 
    9999   nn_writedia   =  5475     !  time step frequency for diagnostics 
     100   nn_writebio   =    10     !: frequency of biological outputs 
    100101/ 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/CONFIG/cfg.txt

    r3875 r3901  
    11ORCA2_LIM3 OPA_SRC LIM_SRC_3 
     2AMM12 OPA_SRC 
     3GYRE OPA_SRC 
     4ORCA2_SAS_LIM OPA_SRC SAS_SRC LIM_SRC_2 NST_SRC 
     5ORCA2_LIM_CFC_C14b OPA_SRC LIM_SRC_2 NST_SRC TOP_SRC 
     6O2L3 OPA_SRC LIM_SRC_3 TOP_SRC 
    27ORCA2_LIM OPA_SRC LIM_SRC_2 NST_SRC 
    38ORCA2_LIM_PISCES OPA_SRC LIM_SRC_2 NST_SRC TOP_SRC 
    4 AMM12 OPA_SRC 
    59GYRE_PISCES OPA_SRC TOP_SRC 
    6 GYRE OPA_SRC 
    710GYRE_BFM OPA_SRC TOP_SRC 
    8 O2L3 OPA_SRC LIM_SRC_3 TOP_SRC 
    911ORCA2_OFF_PISCES OPA_SRC OFF_SRC TOP_SRC 
    10 ORCA2_SAS_LIM OPA_SRC SAS_SRC LIM_SRC_2 NST_SRC 
    11 ORCA2_LIM_CFC_C14b OPA_SRC LIM_SRC_2 NST_SRC TOP_SRC 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_2/ice_2.F90

    r3625 r3901  
    2222   REAL(wp), PUBLIC ::   rdt_ice      !: ice time step 
    2323 
    24    !                                                                     !!* namicerun read in iceini  * 
    25    CHARACTER(len=32)     , PUBLIC ::   cn_icerst_in  = "restart_ice_in"   !: suffix of ice restart name (input) 
    26    CHARACTER(len=32)     , PUBLIC ::   cn_icerst_out = "restart_ice"      !: suffix of ice restart name (output) 
    27    LOGICAL               , PUBLIC ::   ln_limdyn     = .TRUE.             !: flag for ice dynamics (T) or not (F) 
    28    LOGICAL               , PUBLIC ::   ln_limdmp     = .FALSE.            !: Ice damping 
    29    LOGICAL               , PUBLIC ::   ln_nicep      = .TRUE.             !: flag grid points output (T) or not (F) 
    30    REAL(wp)              , PUBLIC ::   hsndif        = 0._wp              !: snow temp. computation (0) or not (9999) 
    31    REAL(wp)              , PUBLIC ::   hicdif        = 0._wp              !: ice  temp. computation (0) or not (9999) 
    32    REAL(wp), DIMENSION(2), PUBLIC ::   acrit = (/ 1.e-6_wp , 1.e-6_wp /)  !: minimum lead fraction in the 2 hemisphere 
    33     
    34    !                                          !!* ice-dynamic namelist (namicedyn) * 
    35    INTEGER , PUBLIC ::   nbiter =    1         !: number of sub-time steps for relaxation 
    36    INTEGER , PUBLIC ::   nbitdr =  250         !: maximum number of iterations for relaxation 
    37    INTEGER , PUBLIC ::   nevp   =  360         !: number of EVP subcycling iterations 
    38    INTEGER , PUBLIC ::   telast = 3600         !: timescale for EVP elastic waves 
    39    REAL(wp), PUBLIC ::   epsd   = 1.0e-20_wp   !: tolerance parameter for dynamic 
    40    REAL(wp), PUBLIC ::   alpha  = 0.5_wp       !: coefficient for semi-implicit coriolis 
    41    REAL(wp), PUBLIC ::   dm     = 0.6e+03_wp   !: diffusion constant for dynamics 
    42    REAL(wp), PUBLIC ::   om     = 0.5_wp       !: relaxation constant 
    43    REAL(wp), PUBLIC ::   resl   = 5.0e-05_wp   !: maximum value for the residual of relaxation 
    44    REAL(wp), PUBLIC ::   cw     = 5.0e-03_wp   !: drag coefficient for oceanic stress 
    45    REAL(wp), PUBLIC ::   angvg  = 0._wp        !: turning angle for oceanic stress 
    46    REAL(wp), PUBLIC ::   pstar  = 1.0e+04_wp   !: first bulk-rheology parameter 
    47    REAL(wp), PUBLIC ::   c_rhg  = 20._wp       !: second bulk-rhelogy parameter 
    48    REAL(wp), PUBLIC ::   etamn  = 0._wp        !: minimun value for viscosity 
    49    REAL(wp), PUBLIC ::   creepl = 2.e-08_wp    !: creep limit 
    50    REAL(wp), PUBLIC ::   ecc    = 2._wp        !: eccentricity of the elliptical yield curve 
    51    REAL(wp), PUBLIC ::   ahi0   = 350._wp      !: sea-ice hor. eddy diffusivity coeff. (m2/s) 
    52    REAL(wp), PUBLIC ::   alphaevp = 1._wp      !: coefficient for the solution of EVP int. stresses 
     24   !                                                   !!* namicerun read in iceini  * 
     25   CHARACTER(len=32)     , PUBLIC ::   cn_icerst_in     !: suffix of ice restart name (input) 
     26   CHARACTER(len=32)     , PUBLIC ::   cn_icerst_out    !: suffix of ice restart name (output) 
     27   LOGICAL               , PUBLIC ::   ln_limdyn        !: flag for ice dynamics (T) or not (F) 
     28   LOGICAL               , PUBLIC ::   ln_limdmp        !: Ice damping 
     29   REAL(wp)              , PUBLIC ::   hsndif           !: snow temp. computation (0) or not (9999) 
     30   REAL(wp)              , PUBLIC ::   hicdif           !: ice temp. computation (0) or not (9999) 
     31   REAL(wp), DIMENSION(2), PUBLIC ::   acrit            !: minimum lead fraction in the 2 hemisphere 
     32   ! 
     33   LOGICAL               , PUBLIC ::   ln_nicep      = .TRUE.     !: flag grid points output (T) or not (F) 
     34   !                                !!* ice-dynamic namelist (namicedyn) * 
     35   INTEGER , PUBLIC ::   nbiter      !: number of sub-time steps for relaxation 
     36   INTEGER , PUBLIC ::   nbitdr      !: maximum number of iterations for relaxation 
     37   INTEGER , PUBLIC ::   nevp        !: number of EVP subcycling iterations 
     38   INTEGER , PUBLIC ::   telast      !: timescale for EVP elastic waves 
     39   REAL(wp), PUBLIC ::   epsd        !: tolerance parameter for dynamic 
     40   REAL(wp), PUBLIC ::   alpha       !: coefficient for semi-implicit coriolis 
     41   REAL(wp), PUBLIC ::   dm          !: diffusion constant for dynamics 
     42   REAL(wp), PUBLIC ::   om          !: relaxation constant 
     43   REAL(wp), PUBLIC ::   resl        !: maximum value for the residual of relaxation 
     44   REAL(wp), PUBLIC ::   cw          !: drag coefficient for oceanic stress 
     45   REAL(wp), PUBLIC ::   angvg       !: turning angle for oceanic stress 
     46   REAL(wp), PUBLIC ::   pstar       !: first bulk-rheology parameter 
     47   REAL(wp), PUBLIC ::   c_rhg       !: second bulk-rhelogy parameter 
     48   REAL(wp), PUBLIC ::   etamn       !: minimun value for viscosity 
     49   REAL(wp), PUBLIC ::   creepl      !: creep limit 
     50   REAL(wp), PUBLIC ::   ecc         !: eccentricity of the elliptical yield curve 
     51   REAL(wp), PUBLIC ::   ahi0        !: sea-ice hor. eddy diffusivity coeff. (m2/s) 
     52   REAL(wp), PUBLIC ::   alphaevp    !: coefficient for the solution of EVP int. stresses 
    5353 
    5454   REAL(wp), PUBLIC ::   usecc2                !:  = 1.0 / ( ecc * ecc ) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_2/limdia_2.F90

    r3875 r3901  
    2929   PRIVATE 
    3030 
    31    PUBLIC               lim_dia_2          ! called by sbc_ice_lim_2 
    32  
    33    INTEGER, PUBLIC ::   ntmoy   = 1 ,   &  !: instantaneous values of ice evolution or averaging ntmoy 
    34       &                 ninfo   = 1        !: frequency of ouputs on file ice_evolu in case of averaging 
     31   PUBLIC               lim_dia_2     ! called by sbc_ice_lim_2 
     32 
     33   INTEGER, PUBLIC ::   ntmoy  ,   &  !: instantaneous values of ice evolution or averaging ntmoy 
     34      &                 ninfo         !: frequency of ouputs on file ice_evolu in case of averaging 
    3535 
    3636   INTEGER, PARAMETER ::   &  ! Parameters for outputs to files "evolu" 
     
    4040 
    4141   INTEGER ::   & 
    42       nfrinf  = 4 ,     &  ! number of variables written in one line  
     42      nfrinf ,          &  ! number of variables written in one line  
    4343      nferme ,          &  ! last time step at which the var. are written on file 
    4444      nvinfo ,          &  ! number of total variables  
     
    4646      naveg                ! number of step for accumulation before averaging 
    4747 
    48    CHARACTER(len= 8) ::   fmtinf  = '1PE13.5 ' ! format of the output values   
     48   CHARACTER(len= 8) ::   fmtinf  ! format of the output values   
    4949   CHARACTER(len=30) ::   fmtw  ,           &  ! formats 
    5050      &                   fmtr  ,           &  ! ??? 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_2/limdmp_2.F90

    r3875 r3901  
    110110      ! 1)  initialize fld read structure for input data  
    111111      !     -------------------------------------------- 
    112       ln_limdmp = .false.                 !* set file information (default values) 
    113       cn_dir    = './' 
    114       ! (NB: frequency positive => hours, negative => months) 
    115       !                !    file     ! frequency ! variable ! time intep !  clim   ! 'yearly' or ! weights  ! rotation ! 
    116       !                !    name     !  (hours)  !  name    !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs    ! 
    117       sn_hicif = FLD_N( 'ice_damping ', -1       , 'hicif'  ,  .true.    , .true.  ,  'yearly'   ,  ''      ,  ''      ) 
    118       sn_frld  = FLD_N( 'ice_damping ', -1       , 'frld'   ,  .true.    , .true.  ,  'yearly'   ,  ''      ,  ''      ) 
    119                      
     112                   
    120113      REWIND( numnam_ice_ref )              ! Namelist namice_dmp in reference namelist : Ice restoring 
    121114      READ  ( numnam_ice_ref, namice_dmp, IOSTAT = ios, ERR = 901) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_2/limistate_2.F90

    r3875 r3901  
    3434   PUBLIC lim_istate_2      ! routine called by lim_init_2.F90 
    3535 
    36    !!! ** init namelist (namiceini) ** 
    37    LOGICAL  ::   ln_limini = .FALSE.  !: Ice initialization state 
    38    REAL(wp) ::   ttest     = 2.0      ! threshold water temperature for initial sea ice 
    39    REAL(wp) ::   hninn     = 0.5      ! initial snow thickness in the north 
    40    REAL(wp) ::   hginn     = 3.0      ! initial ice thickness in the north 
    41    REAL(wp) ::   alinn     = 0.05     ! initial leads area in the north 
    42    REAL(wp) ::   hnins     = 0.1      ! initial snow thickness in the south 
    43    REAL(wp) ::   hgins     = 1.0      ! initial ice thickness in the south 
    44    REAL(wp) ::   alins     = 0.1      ! initial leads area in the south 
     36   !!! ** namelist (namiceini) ** 
     37   LOGICAL  ::   ln_limini   !: Ice initialization state 
     38   REAL(wp) ::   ttest       ! threshold water temperature for initial sea ice 
     39   REAL(wp) ::   hninn       ! initial snow thickness in the north 
     40   REAL(wp) ::   hginn       ! initial ice thickness in the north 
     41   REAL(wp) ::   alinn       ! initial leads area in the north 
     42   REAL(wp) ::   hnins       ! initial snow thickness in the south 
     43   REAL(wp) ::   hgins       ! initial ice thickness in the south 
     44   REAL(wp) ::   alins       ! initial leads area in the south 
    4545    
    4646   REAL(wp) ::   zero      = 0.e0     ! constant value = 0 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_2/limtrp_2.F90

    r3875 r3901  
    3838   PUBLIC   lim_trp_2   ! called by sbc_ice_lim_2 
    3939 
    40    REAL(wp), PUBLIC ::   bound  = 0.e0          !: boundary condit. (0.0 no-slip, 1.0 free-slip) 
     40   REAL(wp), PUBLIC ::   bound      !: boundary condit. (0.0 no-slip, 1.0 free-slip) 
    4141 
    4242   REAL(wp)  ::   epsi06 = 1.e-06   ! constant values 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_2/thd_ice_2.F90

    r3625 r3901  
    2121   !! * Share Module variables 
    2222   REAL(wp) , PUBLIC ::   & !!! ** ice-thermo namelist (namicethd) ** 
    23       hmelt   = -0.15  ,  &  !: maximum melting at the bottom 
    24       hicmin  = 0.2    ,  &  !: ice th. corr. to max. ener. in brine pocket 
    25       hiclim  = 0.05   ,  &  !: minimum ice thickness 
    26       amax    = 0.999  ,  &  !: maximum lead fraction 
    27       swiqst  = 1.0    ,  &  !: energy stored in brine pocket (1) or not (0) 
    28       sbeta   = 1.0    ,  &  !: numerical scheme for diffusion in ice  
    29       parlat  = 0.0    ,  &  !: percent. of energy used for lateral ablation 
    30       hakspl  = 0.5    ,  &  !: slope of distr. for Hakkinen-Mellro's lat. melt 
    31       hibspl  = 0.5    ,  &  !: slope of distribution for Hibler's lat. melt 
    32       exld    = 2.0    ,  &  !: exponent for leads-closure rate 
    33       hakdif  = 1.0    ,  &  !: coefficient for diffusions of ice and snow 
    34       thth    = 0.2    ,  &  !: thick. for comp. of eq. thermal conduct 
    35       hnzst   = 0.1    ,  &  !: thick. of the surf. layer in temp. comp. 
    36       parsub  = 1.0    ,  &  !: switch for snow sublimation or not 
    37       alphs   = 1.0          !: coef. for snow density when snow-ice formation 
     23      hmelt            ,  &  !: maximum melting at the bottom 
     24      hicmin           ,  &  !: ice th. corr. to max. ener. in brine pocket 
     25      hiclim           ,  &  !: minimum ice thickness 
     26      amax             ,  &  !: maximum lead fraction 
     27      swiqst           ,  &  !: energy stored in brine pocket (1) or not (0) 
     28      sbeta            ,  &  !: numerical scheme for diffusion in ice  
     29      parlat           ,  &  !: percent. of energy used for lateral ablation 
     30      hakspl           ,  &  !: slope of distr. for Hakkinen-Mellro's lat. melt 
     31      hibspl           ,  &  !: slope of distribution for Hibler's lat. melt 
     32      exld             ,  &  !: exponent for leads-closure rate 
     33      hakdif           ,  &  !: coefficient for diffusions of ice and snow 
     34      thth             ,  &  !: thick. for comp. of eq. thermal conduct 
     35      hnzst            ,  &  !: thick. of the surf. layer in temp. comp. 
     36      parsub           ,  &  !: switch for snow sublimation or not 
     37      alphs                  !: coef. for snow density when snow-ice formation 
    3838 
    3939   REAL(wp), PUBLIC, DIMENSION(2)  ::  &  !:    
    40       hiccrit = (/0.3,0.3/)  !: ice th. for lateral accretion in the NH (SH) (m) 
     40      hiccrit                !: ice th. for lateral accretion in the NH (SH) (m) 
    4141 
    4242   REAL(wp) , PUBLIC ::   &  !: 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_3/ice.F90

    r3625 r3901  
    158158   !! * Share Module variables 
    159159   !!-------------------------------------------------------------------------- 
    160    INTEGER , PUBLIC ::   nstart      !: iteration number of the begining of the run  
    161    INTEGER , PUBLIC ::   nlast       !: iteration number of the end of the run  
    162    INTEGER , PUBLIC ::   nitrun      !: number of iteration 
    163    INTEGER , PUBLIC ::   numit       !: iteration number 
    164    REAL(wp), PUBLIC ::   rdt_ice     !: ice time step 
    165    REAL(wp), PUBLIC ::   r1_rdtice   !: = 1. / rdt_ice 
    166  
    167    !                                          !!** ice-dynamic namelist (namicedyn) ** 
    168    INTEGER , PUBLIC ::   nbiter = 1            !: number of sub-time steps for relaxation 
    169    INTEGER , PUBLIC ::   nbitdr = 250          !: maximum number of iterations for relaxation 
    170    INTEGER , PUBLIC ::   nevp   = 400          !: number of iterations for subcycling 
     160   INTEGER , PUBLIC ::   nstart           !: iteration number of the begining of the run  
     161   INTEGER , PUBLIC ::   nlast            !: iteration number of the end of the run  
     162   INTEGER , PUBLIC ::   nitrun           !: number of iteration 
     163   INTEGER , PUBLIC ::   numit            !: iteration number 
     164   REAL(wp), PUBLIC ::   rdt_ice          !: ice time step 
     165   REAL(wp), PUBLIC ::   r1_rdtice        !: = 1. / rdt_ice 
     166 
     167   !                                     !!** ice-dynamic namelist (namicedyn) ** 
     168   INTEGER , PUBLIC ::   nbiter           !: number of sub-time steps for relaxation 
     169   INTEGER , PUBLIC ::   nbitdr           !: maximum number of iterations for relaxation 
     170   INTEGER , PUBLIC ::   nevp             !: number of iterations for subcycling 
    171171   INTEGER , PUBLIC ::   nlay_i = 5            !: number of layers in the ice 
    172172 
    173    !                                          !!** ice-dynamic namelist (namicedyn) ** 
    174    REAL(wp), PUBLIC ::   epsd   = 1.0e-20_wp   !: tolerance parameter for dynamic 
    175    REAL(wp), PUBLIC ::   alpha  = 0.5_wp       !: coefficient for semi-implicit coriolis 
    176    REAL(wp), PUBLIC ::   dm     = 0.6e+03_wp   !: diffusion constant for dynamics 
    177    REAL(wp), PUBLIC ::   om     = 0.5_wp       !: relaxation constant 
    178    REAL(wp), PUBLIC ::   resl   = 5.0e-05_wp   !: maximum value for the residual of relaxation 
    179    REAL(wp), PUBLIC ::   cw     = 5.0e-03_wp   !: drag coefficient for oceanic stress 
    180    REAL(wp), PUBLIC ::   angvg  = 0._wp        !: turning angle for oceanic stress 
    181    REAL(wp), PUBLIC ::   pstar  = 1.0e+04_wp   !: determines ice strength (N/M), Hibler JPO79 
    182    REAL(wp), PUBLIC ::   c_rhg  = 20._wp       !: determines changes in ice strength 
    183    REAL(wp), PUBLIC ::   etamn  = 0.0e+07_wp   !: minimun value for viscosity : has to be 0 
    184    REAL(wp), PUBLIC ::   creepl = 2.0e-08_wp   !: creep limit : has to be under 1.0e-9 
    185    REAL(wp), PUBLIC ::   ecc    = 2._wp        !: eccentricity of the elliptical yield curve 
    186    REAL(wp), PUBLIC ::   ahi0   = 350._wp      !: sea-ice hor. eddy diffusivity coeff. (m2/s) 
    187    REAL(wp), PUBLIC ::   telast = 2880._wp     !: timescale for elastic waves (s) !SB 
    188    REAL(wp), PUBLIC ::   alphaevp = 1._wp      !: coeficient of the internal stresses !SB 
     173   !                                     !!** ice-dynamic namelist (namicedyn) ** 
     174   REAL(wp), PUBLIC ::   epsd             !: tolerance parameter for dynamic 
     175   REAL(wp), PUBLIC ::   alpha            !: coefficient for semi-implicit coriolis 
     176   REAL(wp), PUBLIC ::   dm               !: diffusion constant for dynamics 
     177   REAL(wp), PUBLIC ::   om               !: relaxation constant 
     178   REAL(wp), PUBLIC ::   resl             !: maximum value for the residual of relaxation 
     179   REAL(wp), PUBLIC ::   cw               !: drag coefficient for oceanic stress 
     180   REAL(wp), PUBLIC ::   angvg            !: turning angle for oceanic stress 
     181   REAL(wp), PUBLIC ::   pstar            !: determines ice strength (N/M), Hibler JPO79 
     182   REAL(wp), PUBLIC ::   c_rhg            !: determines changes in ice strength 
     183   REAL(wp), PUBLIC ::   etamn            !: minimun value for viscosity : has to be 0 
     184   REAL(wp), PUBLIC ::   creepl           !: creep limit : has to be under 1.0e-9 
     185   REAL(wp), PUBLIC ::   ecc              !: eccentricity of the elliptical yield curve 
     186   REAL(wp), PUBLIC ::   ahi0             !: sea-ice hor. eddy diffusivity coeff. (m2/s) 
     187   REAL(wp), PUBLIC ::   telast           !: timescale for elastic waves (s) !SB 
     188   REAL(wp), PUBLIC ::   alphaevp         !: coeficient of the internal stresses !SB 
    189189   REAL(wp), PUBLIC ::   unit_fac = 1.e+09_wp  !: conversion factor for ice / snow enthalpy 
    190190 
    191    !                                              !!** ice-salinity namelist (namicesal) ** 
    192    REAL(wp), PUBLIC ::   s_i_max  = 20.0_wp        !: maximum ice salinity [PSU] 
    193    REAL(wp), PUBLIC ::   s_i_min  =  0.1_wp        !: minimum ice salinity [PSU] 
    194    REAL(wp), PUBLIC ::   s_i_0    =  3.5_wp        !: 1st sal. value for the computation of sal .prof. [PSU] 
    195    REAL(wp), PUBLIC ::   s_i_1    =  4.5_wp        !: 2nd sal. value for the computation of sal .prof. [PSU] 
    196    REAL(wp), PUBLIC ::   sal_G    =  5.0_wp        !: restoring salinity for gravity drainage [PSU] 
    197    REAL(wp), PUBLIC ::   sal_F    =  2.5_wp        !: restoring salinity for flushing [PSU] 
    198    REAL(wp), PUBLIC ::   time_G   =  1.728e+06_wp  !: restoring time constant for gravity drainage (= 20 days) [s] 
    199    REAL(wp), PUBLIC ::   time_F   =  8.640e+05_wp  !: restoring time constant for gravity drainage (= 10 days) [s] 
    200    REAL(wp), PUBLIC ::   bulk_sal =  4.0_wp        !: bulk salinity (ppt) in case of constant salinity 
    201  
    202    !                                              !!** ice-salinity namelist (namicesal) ** 
    203    INTEGER , PUBLIC ::   num_sal     = 1           !: salinity configuration used in the model 
    204    !                                               ! 1 - constant salinity in both space and time 
    205    !                                               ! 2 - prognostic salinity (s(z,t)) 
    206    !                                               ! 3 - salinity profile, constant in time 
     191   !                                     !!** ice-salinity namelist (namicesal) ** 
     192   REAL(wp), PUBLIC ::   s_i_max          !: maximum ice salinity [PSU] 
     193   REAL(wp), PUBLIC ::   s_i_min          !: minimum ice salinity [PSU] 
     194   REAL(wp), PUBLIC ::   s_i_0            !: 1st sal. value for the computation of sal .prof. [PSU] 
     195   REAL(wp), PUBLIC ::   s_i_1            !: 2nd sal. value for the computation of sal .prof. [PSU] 
     196   REAL(wp), PUBLIC ::   sal_G            !: restoring salinity for gravity drainage [PSU] 
     197   REAL(wp), PUBLIC ::   sal_F            !: restoring salinity for flushing [PSU] 
     198   REAL(wp), PUBLIC ::   time_G           !: restoring time constant for gravity drainage (= 20 days) [s] 
     199   REAL(wp), PUBLIC ::   time_F           !: restoring time constant for gravity drainage (= 10 days) [s] 
     200   REAL(wp), PUBLIC ::   bulk_sal =       !: bulk salinity (ppt) in case of constant salinity 
     201 
     202   !                                     !!** ice-salinity namelist (namicesal) ** 
     203   INTEGER , PUBLIC ::   num_sal          !: salinity configuration used in the model 
     204   !                                         ! 1 - constant salinity in both space and time 
     205   !                                         ! 2 - prognostic salinity (s(z,t)) 
     206   !                                         ! 3 - salinity profile, constant in time 
    207207   INTEGER , PUBLIC ::   sal_prof    = 1           !: salinity profile or not  
    208    INTEGER , PUBLIC ::   thcon_i_swi = 1           !: thermal conductivity: =1 Untersteiner (1964) ; =2 Pringle et al (2007) 
    209  
    210    !                                              !!** ice-mechanical redistribution namelist (namiceitdme) 
    211    REAL(wp), PUBLIC ::   Cs        = 0.25_wp       !: fraction of shearing energy contributing to ridging             
    212    REAL(wp), PUBLIC ::   Cf        = 17.0_wp       !: ratio of ridging work to PE loss 
    213    REAL(wp), PUBLIC ::   fsnowrdg  = 0.5_wp        !: fractional snow loss to the ocean during ridging 
    214    REAL(wp), PUBLIC ::   fsnowrft  = 0.5_wp        !: fractional snow loss to the ocean during ridging 
    215    REAL(wp), PUBLIC ::   Gstar     = 0.15_wp       !: fractional area of young ice contributing to ridging 
    216    REAL(wp), PUBLIC ::   astar     = 0.05_wp       !: equivalent of G* for an exponential participation function 
    217    REAL(wp), PUBLIC ::   Hstar     = 100.0_wp      !: thickness that determines the maximal thickness of ridged ice 
    218    REAL(wp), PUBLIC ::   hparmeter = 0.75_wp       !: threshold thickness (m) for rafting / ridging  
    219    REAL(wp), PUBLIC ::   Craft     = 5.0_wp        !: coefficient for smoothness of the hyperbolic tangent in rafting 
    220    REAL(wp), PUBLIC ::   ridge_por = 0.0_wp        !: initial porosity of ridges (0.3 regular value) 
    221    REAL(wp), PUBLIC ::   sal_max_ridge = 15.0_wp   !: maximum ridged ice salinity (ppt) 
    222    REAL(wp), PUBLIC ::   betas    = 1.0_wp         !: coef. for partitioning of snowfall between leads and sea ice 
    223    REAL(wp), PUBLIC ::   kappa_i  = 1.0_wp         !: coef. for the extinction of radiation Grenfell et al. (2006) [1/m] 
    224    REAL(wp), PUBLIC ::   nconv_i_thd = 50_wp       !: maximal number of iterations for heat diffusion 
    225    REAL(wp), PUBLIC ::   maxer_i_thd = 1.0e-4_wp   !: maximal tolerated error (C) for heat diffusion 
    226  
    227    !                                              !!** ice-mechanical redistribution namelist (namiceitdme) 
    228    INTEGER , PUBLIC ::   ridge_scheme_swi = 0      !: scheme used for ice ridging 
    229    INTEGER , PUBLIC ::   raftswi          = 1      !: rafting of ice or not                         
    230    INTEGER , PUBLIC ::   partfun_swi      = 1      !: participation function: =0 Thorndike et al. (1975), =1 Lipscomb et al. (2007) 
    231    INTEGER , PUBLIC ::   transfun_swi     = 0      !: transfer function: =0 Hibler 1980, =1 Lipscomb et al. 2007 
    232    INTEGER , PUBLIC ::   brinstren_swi    = 0      !: use brine volume to diminish ice strength 
     208   INTEGER , PUBLIC ::   thcon_i_swi          !: thermal conductivity: =1 Untersteiner (1964) ; =2 Pringle et al (2007) 
     209 
     210   !                                     !!** ice-mechanical redistribution namelist (namiceitdme) 
     211   REAL(wp), PUBLIC ::   Cs               !: fraction of shearing energy contributing to ridging             
     212   REAL(wp), PUBLIC ::   Cf               !: ratio of ridging work to PE loss 
     213   REAL(wp), PUBLIC ::   fsnowrdg         !: fractional snow loss to the ocean during ridging 
     214   REAL(wp), PUBLIC ::   fsnowrft         !: fractional snow loss to the ocean during ridging 
     215   REAL(wp), PUBLIC ::   Gstar            !: fractional area of young ice contributing to ridging 
     216   REAL(wp), PUBLIC ::   astar            !: equivalent of G* for an exponential participation function 
     217   REAL(wp), PUBLIC ::   Hstar            !: thickness that determines the maximal thickness of ridged ice 
     218   REAL(wp), PUBLIC ::   hparmeter        !: threshold thickness (m) for rafting / ridging  
     219   REAL(wp), PUBLIC ::   Craft            !: coefficient for smoothness of the hyperbolic tangent in rafting 
     220   REAL(wp), PUBLIC ::   ridge_por        !: initial porosity of ridges (0.3 regular value) 
     221   REAL(wp), PUBLIC ::   sal_max_ridge    !: maximum ridged ice salinity (ppt) 
     222   REAL(wp), PUBLIC ::   betas            !: coef. for partitioning of snowfall between leads and sea ice 
     223   REAL(wp), PUBLIC ::   kappa_i          !: coef. for the extinction of radiation Grenfell et al. (2006) [1/m] 
     224   REAL(wp), PUBLIC ::   nconv_i_thd      !: maximal number of iterations for heat diffusion 
     225   REAL(wp), PUBLIC ::   maxer_i_thd      !: maximal tolerated error (C) for heat diffusion 
     226 
     227   !                                     !!** ice-mechanical redistribution namelist (namiceitdme) 
     228   INTEGER , PUBLIC ::   ridge_scheme_swi !: scheme used for ice ridging 
     229   INTEGER , PUBLIC ::   raftswi          !: rafting of ice or not                         
     230   INTEGER , PUBLIC ::   partfun_swi      !: participation function: =0 Thorndike et al. (1975), =1 Lipscomb et al. (2007) 
     231   INTEGER , PUBLIC ::   transfun_swi     !: transfer function: =0 Hibler 1980, =1 Lipscomb et al. 2007 
     232   INTEGER , PUBLIC ::   brinstren_swi    !: use brine volume to diminish ice strength 
    233233 
    234234   REAL(wp), PUBLIC ::   usecc2           !:  = 1.0 / ( ecc * ecc ) 
     
    390390   !! * Ice Run 
    391391   !!-------------------------------------------------------------------------- 
    392    !                                                                     !!: ** Namelist namicerun read in iceini ** 
    393    CHARACTER(len=32)     , PUBLIC ::   cn_icerst_in  = "restart_ice_in"   !: suffix of ice restart name (input) 
    394    CHARACTER(len=32)     , PUBLIC ::   cn_icerst_out = "restart_ice"      !: suffix of ice restart name (output) 
    395    LOGICAL               , PUBLIC ::   ln_limdyn     = .TRUE.             !: flag for ice dynamics (T) or not (F) 
    396    LOGICAL               , PUBLIC ::   ln_nicep      = .TRUE.             !: flag for sea-ice points output (T) or not (F) 
    397    REAL(wp)              , PUBLIC ::   hsndif        = 0.e0               !: computation of temp. in snow (0) or not (9999) 
    398    REAL(wp)              , PUBLIC ::   hicdif        = 0.e0               !: computation of temp. in ice (0) or not (9999) 
    399    REAL(wp)              , PUBLIC ::   cai           = 1.40e-3            !: atmospheric drag over sea ice 
    400    REAL(wp)              , PUBLIC ::   cao           = 1.00e-3            !: atmospheric drag over ocean 
    401    REAL(wp), DIMENSION(2), PUBLIC ::   acrit  = (/ 1.e-06 , 1.e-06 /)     !: minimum fraction for leads in 
    402    !                                                                      !: north and south hemisphere 
     392   !                                                  !!: ** Namelist namicerun read in iceini ** 
     393   CHARACTER(len=32)     , PUBLIC ::   cn_icerst_in    !: suffix of ice restart name (input) 
     394   CHARACTER(len=32)     , PUBLIC ::   cn_icerst_out   !: suffix of ice restart name (output) 
     395   LOGICAL               , PUBLIC ::   ln_limdyn       !: flag for ice dynamics (T) or not (F) 
     396   LOGICAL               , PUBLIC ::   ln_nicep        !: flag for sea-ice points output (T) or not (F) 
     397   REAL(wp)              , PUBLIC ::   hsndif          !: computation of temp. in snow (0) or not (9999) 
     398   REAL(wp)              , PUBLIC ::   hicdif          !: computation of temp. in ice (0) or not (9999) 
     399   REAL(wp)              , PUBLIC ::   cai             !: atmospheric drag over sea ice 
     400   REAL(wp)              , PUBLIC ::   cao             !: atmospheric drag over ocean 
     401   REAL(wp), DIMENSION(2), PUBLIC ::   acrit           !: minimum fraction for leads in north and south hemisphere 
     402   ! 
    403403   !!-------------------------------------------------------------------------- 
    404404   !! * Ice diagnostics 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_3/limdia.F90

    r3875 r3901  
    3030   PUBLIC lim_dia       ! called by ice_step 
    3131 
    32    INTEGER, PUBLIC  ::   ntmoy   = 1  !: instantaneous values of ice evolution or averaging ntmoy 
    33    INTEGER, PUBLIC  ::   ninfo   = 1  !: frequency of ouputs on file ice_evolu in case of averaging 
     32   INTEGER, PUBLIC  ::   ntmoy    !: instantaneous values of ice evolution or averaging ntmoy 
     33   INTEGER, PUBLIC  ::   ninfo    !: frequency of ouputs on file ice_evolu in case of averaging 
    3434 
    3535   !                                              !!! Parameters for outputs to files "evolu" 
     
    3838   INTEGER, PARAMETER ::   jpchsep = jpchinf + 2   ! ??? 
    3939 
    40    INTEGER  ::   nfrinf  = 4         ! number of variables written in one line  
     40   INTEGER  ::   nfrinf    ! number of variables written in one line  
    4141   INTEGER  ::   nferme              ! last time step at which the var. are written on file 
    4242   INTEGER  ::   nvinfo              ! number of total variables  
     
    4545   REAL(wp) ::   epsi06 = 1.e-6_wp   ! small number 
    4646 
    47    CHARACTER(len= 8) ::   fmtinf = '1PE13.5 '   ! format of the output values   
     47   CHARACTER(len= 8) ::   fmtinf     ! format of the output values   
    4848   CHARACTER(len=30) ::   fmtw                  ! formats 
    4949   CHARACTER(len=30) ::   fmtr                  ! ??? 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_3/limistate.F90

    r3875 r3901  
    3333   PUBLIC   lim_istate      ! routine called by lim_init.F90 
    3434 
    35    !                                  !!** init namelist (namiceini) ** 
    36    REAL(wp) ::   ttest    = 2.0_wp     ! threshold water temperature for initial sea ice 
    37    REAL(wp) ::   hninn    = 0.5_wp     ! initial snow thickness in the north 
    38    REAL(wp) ::   hginn_u  = 2.5_wp     ! initial ice thickness in the north 
    39    REAL(wp) ::   aginn_u  = 0.7_wp     ! initial leads area in the north 
    40    REAL(wp) ::   hginn_d  = 5.0_wp     ! initial ice thickness in the north 
    41    REAL(wp) ::   aginn_d  = 0.25_wp    ! initial leads area in the north 
    42    REAL(wp) ::   hnins    = 0.1_wp     ! initial snow thickness in the south 
    43    REAL(wp) ::   hgins_u  = 1.0_wp     ! initial ice thickness in the south 
    44    REAL(wp) ::   agins_u  = 0.7_wp     ! initial leads area in the south 
    45    REAL(wp) ::   hgins_d  = 2.0_wp     ! initial ice thickness in the south 
    46    REAL(wp) ::   agins_d  = 0.2_wp     ! initial leads area in the south 
    47    REAL(wp) ::   sinn     = 6.301_wp   ! initial salinity  
    48    REAL(wp) ::   sins     = 6.301_wp   ! 
     35   !                       !!** init namelist (namiceini) ** 
     36   REAL(wp) ::   ttest      ! threshold water temperature for initial sea ice 
     37   REAL(wp) ::   hninn      ! initial snow thickness in the north 
     38   REAL(wp) ::   hginn_u    ! initial ice thickness in the north 
     39   REAL(wp) ::   aginn_u    ! initial leads area in the north 
     40   REAL(wp) ::   hginn_d    ! initial ice thickness in the north 
     41   REAL(wp) ::   aginn_d    ! initial leads area in the north 
     42   REAL(wp) ::   hnins      ! initial snow thickness in the south 
     43   REAL(wp) ::   hgins_u    ! initial ice thickness in the south 
     44   REAL(wp) ::   agins_u    ! initial leads area in the south 
     45   REAL(wp) ::   hgins_d    ! initial ice thickness in the south 
     46   REAL(wp) ::   agins_d    ! initial leads area in the south 
     47   REAL(wp) ::   sinn       ! initial salinity  
     48   REAL(wp) ::   sins       ! 
    4949 
    5050   !!---------------------------------------------------------------------- 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/LIM_SRC_3/thd_ice.F90

    r3625 r3901  
    1818   !! * Share Module variables 
    1919   !!--------------------------- 
    20    !                                         !!! ** ice-thermo namelist (namicethd) ** 
    21    REAL(wp), PUBLIC ::   hmelt   = -0.15     !: maximum melting at the bottom; active only for one category 
    22    REAL(wp), PUBLIC ::   hicmin  = 0.2       !: (REMOVE) 
    23    REAL(wp), PUBLIC ::   hiclim  = 0.05      !: minimum ice thickness 
    24    REAL(wp), PUBLIC ::   amax    = 0.999     !: maximum lead fraction 
    25    REAL(wp), PUBLIC ::   sbeta   = 1.0       !: numerical scheme for diffusion in ice  (REMOVE) 
    26    REAL(wp), PUBLIC ::   parlat  = 0.0       !: (REMOVE) 
    27    REAL(wp), PUBLIC ::   hakspl  = 0.5       !: (REMOVE) 
    28    REAL(wp), PUBLIC ::   hibspl  = 0.5       !: (REMOVE) 
    29    REAL(wp), PUBLIC ::   exld    = 2.0       !: (REMOVE) 
    30    REAL(wp), PUBLIC ::   hakdif  = 1.0       !: (REMOVE) 
    31    REAL(wp), PUBLIC ::   thth    = 0.2       !: (REMOVE) 
    32    REAL(wp), PUBLIC ::   hnzst   = 0.1       !: thick. of the surf. layer in temp. comp. 
    33    REAL(wp), PUBLIC ::   parsub  = 1.0       !: switch for snow sublimation or not 
    34    REAL(wp), PUBLIC ::   alphs   = 1.0       !: coef. for snow density when snow-ice formation 
    35    REAL(wp), PUBLIC ::   fraz_swi= 1.0       !: use of frazil ice collection in function of wind (1.0) or not (0.0) 
    36    REAL(wp), PUBLIC ::   maxfrazb= 0.7       !: maximum portion of frazil ice collecting at the ice bottom 
    37    REAL(wp), PUBLIC ::   vfrazb  = 0.41667   !: threshold drift speed for collection of bottom frazil ice 
    38    REAL(wp), PUBLIC ::   Cfrazb  = 5.0       !: squeezing coefficient for collection of bottom frazil ice 
    39  
    40    REAL(wp), PUBLIC, DIMENSION(2) ::   hiccrit = (/0.3,0.3/)  !: ice th. for lateral accretion in the NH (SH) (m) 
     20   !                               !!! ** ice-thermo namelist (namicethd) ** 
     21   REAL(wp), PUBLIC ::   hmelt       !: maximum melting at the bottom; active only for one category 
     22   REAL(wp), PUBLIC ::   hicmin      !: (REMOVE) 
     23   REAL(wp), PUBLIC ::   hiclim      !: minimum ice thickness 
     24   REAL(wp), PUBLIC ::   amax        !: maximum lead fraction 
     25   REAL(wp), PUBLIC ::   sbeta       !: numerical scheme for diffusion in ice  (REMOVE) 
     26   REAL(wp), PUBLIC ::   parlat      !: (REMOVE) 
     27   REAL(wp), PUBLIC ::   hakspl      !: (REMOVE) 
     28   REAL(wp), PUBLIC ::   hibspl      !: (REMOVE) 
     29   REAL(wp), PUBLIC ::   exld        !: (REMOVE) 
     30   REAL(wp), PUBLIC ::   hakdif      !: (REMOVE) 
     31   REAL(wp), PUBLIC ::   thth        !: (REMOVE) 
     32   REAL(wp), PUBLIC ::   hnzst       !: thick. of the surf. layer in temp. comp. 
     33   REAL(wp), PUBLIC ::   parsub      !: switch for snow sublimation or not 
     34   REAL(wp), PUBLIC ::   alphs       !: coef. for snow density when snow-ice formation 
     35   REAL(wp), PUBLIC ::   fraz_swi    !: use of frazil ice collection in function of wind (1.0) or not (0.0) 
     36   REAL(wp), PUBLIC ::   maxfrazb    !: maximum portion of frazil ice collecting at the ice bottom 
     37   REAL(wp), PUBLIC ::   vfrazb      !: threshold drift speed for collection of bottom frazil ice 
     38   REAL(wp), PUBLIC ::   Cfrazb      !: squeezing coefficient for collection of bottom frazil ice 
     39 
     40   REAL(wp), PUBLIC, DIMENSION(2) ::   hiccrit   !: ice th. for lateral accretion in the NH (SH) (m) 
    4141 
    4242   !!----------------------------- 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/NST_SRC/agrif_oce.F90

    r3680 r3901  
    1919 
    2020   !                                              !!* Namelist namagrif: AGRIF parameters 
    21    LOGICAL , PUBLIC ::   ln_spc_dyn    = .FALSE.   !: 
    22    INTEGER , PUBLIC ::   nn_cln_update = 3         !: update frequency  
    23    REAL(wp), PUBLIC ::   rn_sponge_tra = 2800.     !: sponge coeff. for tracers 
    24    REAL(wp), PUBLIC ::   rn_sponge_dyn = 2800.     !: sponge coeff. for dynamics 
     21   LOGICAL , PUBLIC ::   ln_spc_dyn      !: 
     22   INTEGER , PUBLIC ::   nn_cln_update   !: update frequency  
     23   REAL(wp), PUBLIC ::   rn_sponge_tra   !: sponge coeff. for tracers 
     24   REAL(wp), PUBLIC ::   rn_sponge_dyn   !: sponge coeff. for dynamics 
    2525 
    2626   !                                              !!! OLD namelist names 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OFF_SRC/dtadyn.F90

    r3875 r3901  
    4747   PUBLIC   dta_dyn        ! called by step.F90 
    4848 
    49    CHARACTER(len=100) ::   cn_dir     = './'    !: Root directory for location of ssr files 
    50    LOGICAL            ::   ln_dynwzv  = .true.  !: vertical velocity read in a file (T) or computed from u/v (F) 
    51    LOGICAL            ::   ln_dynbbl  = .true.  !: bbl coef read in a file (T) or computed (F) 
    52    LOGICAL            ::   ln_degrad  = .false. !: degradation option enabled or not  
     49   CHARACTER(len=100) ::   cn_dir       !: Root directory for location of ssr files 
     50   LOGICAL            ::   ln_dynwzv    !: vertical velocity read in a file (T) or computed from u/v (F) 
     51   LOGICAL            ::   ln_dynbbl    !: bbl coef read in a file (T) or computed (F) 
     52   LOGICAL            ::   ln_degrad    !: degradation option enabled or not  
    5353 
    5454   INTEGER  , PARAMETER ::   jpfld = 20     ! maximum number of fields to read 
     
    338338         &                sn_uwd, sn_vwd, sn_wwd, sn_avt, sn_ubl, sn_vbl,          & 
    339339         &                sn_ahu, sn_ahv, sn_ahw, sn_eiu, sn_eiv, sn_eiw, sn_sfx 
    340  
    341       !!---------------------------------------------------------------------- 
    342       !                                   ! ============ 
    343       !                                   !   Namelist 
    344       !                                   ! ============ 
    345       ! (NB: frequency positive => hours, negative => months) 
    346       !                !   file      ! frequency !  variable  ! time intep !  clim  ! 'yearly' or ! weights  ! rotation   ! 
    347       !                !   name      !  (hours)  !   name     !   (T/F)    !  (T/F) !  'monthly'  ! filename ! pairs      ! 
    348       sn_tem  = FLD_N( 'dyna_grid_T' ,    120    , 'votemper' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    349       sn_sal  = FLD_N( 'dyna_grid_T' ,    120    , 'vosaline' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    350       sn_mld  = FLD_N( 'dyna_grid_T' ,    120    , 'somixght' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    351       sn_emp  = FLD_N( 'dyna_grid_T' ,    120    , 'sowaflup' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    352       sn_sfx  = FLD_N( 'dyna_grid_T' ,    120    , 'sowaflcd' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    353 !!    sn_sfx  = FLD_N( 'dyna_grid_T' ,    120    , 'sosfldow' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) ! v3.5+ 
    354       sn_ice  = FLD_N( 'dyna_grid_T' ,    120    , 'soicecov' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    355       sn_qsr  = FLD_N( 'dyna_grid_T' ,    120    , 'soshfldo' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    356       sn_wnd  = FLD_N( 'dyna_grid_T' ,    120    , 'sowindsp' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    357       sn_uwd  = FLD_N( 'dyna_grid_U' ,    120    , 'vozocrtx' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    358       sn_vwd  = FLD_N( 'dyna_grid_V' ,    120    , 'vomecrty' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    359       sn_wwd  = FLD_N( 'dyna_grid_W' ,    120    , 'vovecrtz' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    360       sn_avt  = FLD_N( 'dyna_grid_W' ,    120    , 'votkeavt' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    361       sn_ubl  = FLD_N( 'dyna_grid_U' ,    120    , 'sobblcox' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    362       sn_vbl  = FLD_N( 'dyna_grid_V' ,    120    , 'sobblcoy' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    363       sn_ahu  = FLD_N( 'dyna_grid_U' ,    120    , 'vozoahtu' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    364       sn_ahv  = FLD_N( 'dyna_grid_V' ,    120    , 'vomeahtv' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    365       sn_ahw  = FLD_N( 'dyna_grid_W' ,    120    , 'voveahtz' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    366       sn_eiu  = FLD_N( 'dyna_grid_U' ,    120    , 'vozoaeiu' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    367       sn_eiv  = FLD_N( 'dyna_grid_V' ,    120    , 'vomeaeiv' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    368       sn_eiw  = FLD_N( 'dyna_grid_W' ,    120    , 'voveaeiw' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    369340      ! 
    370341      REWIND( numnam_ref )              ! Namelist namdta_dyn in reference namelist : Offline: init. of dynamical data 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ASM/asminc.F90

    r3875 r3901  
    5656    LOGICAL, PUBLIC, PARAMETER :: lk_asminc = .FALSE.  !: No assimilation increments 
    5757#endif 
    58    LOGICAL, PUBLIC :: ln_bkgwri = .FALSE. !: No output of the background state fields 
    59    LOGICAL, PUBLIC :: ln_asmiau = .FALSE. !: No applying forcing with an assimilation increment 
    60    LOGICAL, PUBLIC :: ln_asmdin = .FALSE. !: No direct initialization 
    61    LOGICAL, PUBLIC :: ln_trainc = .FALSE. !: No tracer (T and S) assimilation increments 
    62    LOGICAL, PUBLIC :: ln_dyninc = .FALSE. !: No dynamics (u and v) assimilation increments 
    63    LOGICAL, PUBLIC :: ln_sshinc = .FALSE. !: No sea surface height assimilation increment 
    64    LOGICAL, PUBLIC :: ln_seaiceinc = .FALSE. !: No sea ice concentration increment 
    65    LOGICAL, PUBLIC :: ln_salfix = .FALSE. !: Apply minimum salinity check 
     58   LOGICAL, PUBLIC :: ln_bkgwri     !: No output of the background state fields 
     59   LOGICAL, PUBLIC :: ln_asmiau     !: No applying forcing with an assimilation increment 
     60   LOGICAL, PUBLIC :: ln_asmdin     !: No direct initialization 
     61   LOGICAL, PUBLIC :: ln_trainc     !: No tracer (T and S) assimilation increments 
     62   LOGICAL, PUBLIC :: ln_dyninc     !: No dynamics (u and v) assimilation increments 
     63   LOGICAL, PUBLIC :: ln_sshinc     !: No sea surface height assimilation increment 
     64   LOGICAL, PUBLIC :: ln_seaiceinc !: No sea ice concentration increment 
     65   LOGICAL, PUBLIC :: ln_salfix     !: Apply minimum salinity check 
    6666   LOGICAL, PUBLIC :: ln_temnofreeze = .FALSE. !: Don't allow the temperature to drop below freezing 
    67    INTEGER, PUBLIC :: nn_divdmp = 0       !: Apply divergence damping filter nn_divdmp times 
     67   INTEGER, PUBLIC :: nn_divdmp     !: Apply divergence damping filter nn_divdmp times 
    6868 
    6969   REAL(wp), PUBLIC, DIMENSION(:,:,:), ALLOCATABLE ::   t_bkg   , s_bkg      !: Background temperature and salinity 
     
    144144      !----------------------------------------------------------------------- 
    145145 
    146       ! Set default values 
    147       ln_bkgwri = .FALSE. 
    148       ln_trainc = .FALSE. 
    149       ln_dyninc = .FALSE. 
    150       ln_sshinc = .FALSE. 
    151146      ln_seaiceinc = .FALSE. 
    152       ln_asmdin = .FALSE. 
    153       ln_asmiau = .TRUE. 
    154       ln_salfix = .FALSE. 
    155147      ln_temnofreeze = .FALSE. 
    156       salfixmin = -9999 
    157       nitbkg    = 0 
    158       nitdin    = 0       
    159       nitiaustr = 1 
    160       nitiaufin = 150      ! = 10 days with ORCA2 
    161       niaufn    = 0 
    162148 
    163149      REWIND( numnam_ref )              ! Namelist nam_asminc in reference namelist : Assimilation increment 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/BDY/bdydta.F90

    r3875 r3901  
    445445      DO ib_bdy = 1, nb_bdy          
    446446         IF( nn_dta(ib_bdy) .eq. 1 ) THEN 
    447             ! set file information 
    448             cn_dir = './'        ! directory in which the model is executed 
    449             ln_full_vel = .false. 
    450             ! ... default values (NB: frequency positive => hours, negative => months) 
    451             !                    !  file       ! frequency !  variable   ! time intep !  clim   ! 'yearly' or ! weights  ! rotation  ! 
    452             !                    !  name       ! hours !   name     !  (T/F)  !  (T/F)  !  'monthly'  ! filename ! pairs     ! 
    453             bn_ssh     = FLD_N(  'bdy_ssh'     ,  24   , 'sossheig' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    454             bn_u2d     = FLD_N(  'bdy_vel2d_u' ,  24   , 'vobtcrtx' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    455             bn_v2d     = FLD_N(  'bdy_vel2d_v' ,  24   , 'vobtcrty' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    456             bn_u3d     = FLD_N(  'bdy_vel3d_u' ,  24   , 'vozocrtx' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    457             bn_v3d     = FLD_N(  'bdy_vel3d_v' ,  24   , 'vomecrty' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    458             bn_tem     = FLD_N(  'bdy_tem'     ,  24   , 'votemper' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    459             bn_sal     = FLD_N(  'bdy_sal'     ,  24   , 'vosaline' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    460 #if defined key_lim2 
    461             bn_frld    = FLD_N(  'bdy_frld'    ,  24   , 'ildsconc' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    462             bn_hicif   = FLD_N(  'bdy_hicif'   ,  24   , 'iicethic' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    463             bn_hsnif   = FLD_N(  'bdy_hsnif'   ,  24   , 'isnothic' , .false. , .false. ,   'yearly'  , ''       , ''        ) 
    464 #endif 
    465  
    466             ! Read configuration namelist only to avoid unsuccessful overwrite 
    467             ! Important NOT to rewind here. 
    468 !!          REWIND( numnam_ref )              ! Namelist nambdy_dta in reference namelist :  
    469 !!          READ  ( numnam_ref, nambdy_dta, IOSTAT = ios, ERR = 901) 
    470 !!901       IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_dta in reference namelist', lwp ) 
    471  
    472 !!          REWIND( numnam_cfg )              ! Namelist nambdy_dta in configuration namelist :  
     447 
    473448            READ  ( numnam_cfg, nambdy_dta, IOSTAT = ios, ERR = 902 ) 
    474449902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_dta in configuration namelist', lwp ) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/BDY/bdyini.F90

    r3875 r3901  
    119119      cgrid= (/'t','u','v'/) 
    120120       
    121       ! ----------------------------------------- 
    122       ! Initialise and read namelist parameters 
    123       ! ----------------------------------------- 
    124  
    125       nb_bdy            = 0 
    126       ln_coords_file(:) = .false. 
    127       cn_coords_file(:) = '' 
    128       ln_mask_file      = .false. 
    129       cn_mask_file(:)   = '' 
    130       nn_dyn2d(:)       = 0 
    131       nn_dyn2d_dta(:)   = -1  ! uninitialised flag 
    132       nn_dyn3d(:)       = 0 
    133       nn_dyn3d_dta(:)   = -1  ! uninitialised flag 
    134       nn_tra(:)         = 0 
    135       nn_tra_dta(:)     = -1  ! uninitialised flag 
    136       ln_tra_dmp(:)     = .false. 
    137       ln_dyn3d_dmp(:)   = .false. 
    138       rn_time_dmp(:)    = 1. 
    139 #if defined key_lim2 
    140       nn_ice_lim2(:)    = 0 
    141       nn_ice_lim2_dta(:)= -1  ! uninitialised flag 
    142 #endif 
    143       ln_vol            = .false. 
    144       nn_volctl         = -1  ! uninitialised flag 
    145       nn_rimwidth(:)    = -1  ! uninitialised flag 
     121      ! ------------------------ 
     122      ! Read namelist parameters 
     123      ! ------------------------ 
    146124 
    147125      REWIND( numnam_ref )              ! Namelist nambdy in reference namelist :Unstructured open boundaries   
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/BDY/bdytides.F90

    r3875 r3901  
    9494      ENDIF 
    9595 
    96       ln_bdytide_2ddta = .FALSE. 
    97       ln_bdytide_conj  = .FALSE. 
    98  
    9996      REWIND(numnam_cfg) 
    10097 
     
    109106            filtide(:) = '' 
    110107 
    111             ! Don't REWIND here - may need to read more than one of these namelists. 
    112             ! Read only configuration namelist to avoid unsecessful overwrite 
    113 !!          REWIND( numnam_ref )              ! Namelist nambdy_tide in reference namelist :  
    114 !!          READ  ( numnam_ref, nambdy_tide, IOSTAT = ios, ERR = 901) 
    115 !!    901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_tide in reference namelist', lwp ) 
    116  
    117 !!          REWIND( numnam_cfg )              ! Namelist nambdy_tide in configuration namelist :  
     108            ! Don't REWIND here - may need to read more than one of these namelists.  
    118109            READ  ( numnam_cfg, nambdy_tide, IOSTAT = ios, ERR = 902 ) 
    119110902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'nambdy_tide in configuration namelist', lwp ) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DIA/diadct.F90

    r3875 r3901  
    6666 
    6767  !! * Module variables 
    68   INTEGER :: nn_dct      = 1     ! Frequency of computation 
    69   INTEGER :: nn_dctwri   = 1     ! Frequency of output 
    70   INTEGER :: nn_secdebug = 0     ! Number of the section to debug 
     68  INTEGER :: nn_dct        ! Frequency of computation 
     69  INTEGER :: nn_dctwri     ! Frequency of output 
     70  INTEGER :: nn_secdebug   ! Number of the section to debug 
    7171    
    7272  INTEGER, PARAMETER :: nb_class_max  = 10 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DIA/diaharm.F90

    r3875 r3901  
    3131 
    3232   INTEGER ::                            & !! namelist variables 
    33                          nit000_han = 1, & ! First time step used for harmonic analysis 
    34                          nitend_han = 1, & ! Last time step used for harmonic analysis 
    35                          nstep_han  = 1, & ! Time step frequency for harmonic analysis 
     33                         nit000_han    , & ! First time step used for harmonic analysis 
     34                         nitend_han    , & ! Last time step used for harmonic analysis 
     35                         nstep_han     , & ! Time step frequency for harmonic analysis 
    3636                         nb_ana            ! Number of harmonics to analyse 
    3737 
     
    9090      ! 
    9191      CALL tide_init_Wave 
    92       ! 
    93       tname(:)='' 
    9492      ! 
    9593      REWIND( numnam_ref )              ! Namelist nam_diaharm in reference namelist : Tidal harmonic analysis 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DIA/diahsb.F90

    r3875 r3901  
    2828   PUBLIC   dia_hsb_init   ! routine called by opa.F90 
    2929 
    30    LOGICAL, PUBLIC ::   ln_diahsb  = .FALSE.  !: check the heat and salt budgets 
     30   LOGICAL, PUBLIC ::   ln_diahsb  !: check the heat and salt budgets 
    3131 
    3232   INTEGER                                 ::   numhsb                           ! 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DIA/diaptr.F90

    r3875 r3901  
    4444   PUBLIC   ptr_vjk        ! call by tra_ldf & tra_adv routines 
    4545 
    46    !                                           !!** namelist  namptr  ** 
    47    LOGICAL , PUBLIC ::   ln_diaptr  = .FALSE.   !: Poleward transport flag (T) or not (F) 
    48    LOGICAL , PUBLIC ::   ln_subbas  = .FALSE.   !: Atlantic/Pacific/Indian basins calculation 
    49    LOGICAL , PUBLIC ::   ln_diaznl  = .FALSE.   !: Add zonal means and meridional stream functions 
    50    LOGICAL , PUBLIC ::   ln_ptrcomp = .FALSE.   !: Add decomposition : overturning (and gyre, soon ...) 
    51    INTEGER , PUBLIC ::   nn_fptr    = 15        !: frequency of ptr computation  [time step] 
    52    INTEGER , PUBLIC ::   nn_fwri    = 15        !: frequency of ptr outputs      [time step] 
     46   !                                  !!** namelist  namptr  ** 
     47   LOGICAL , PUBLIC ::   ln_diaptr     !: Poleward transport flag (T) or not (F) 
     48   LOGICAL , PUBLIC ::   ln_subbas     !: Atlantic/Pacific/Indian basins calculation 
     49   LOGICAL , PUBLIC ::   ln_diaznl     !: Add zonal means and meridional stream functions 
     50   LOGICAL , PUBLIC ::   ln_ptrcomp    !: Add decomposition : overturning (and gyre, soon ...) 
     51   INTEGER , PUBLIC ::   nn_fptr       !: frequency of ptr computation  [time step] 
     52   INTEGER , PUBLIC ::   nn_fwri       !: frequency of ptr outputs      [time step] 
    5353 
    5454   REAL(wp), ALLOCATABLE, SAVE, PUBLIC, DIMENSION(:) ::   htr_adv, htr_ldf, htr_ove   !: Heat TRansports (adv, diff, overturn.) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DOM/dom_oce.F90

    r3851 r3901  
    2828   !! time & space domain namelist 
    2929   !! ---------------------------- 
    30    !                                              !!* Namelist namdom : time & space domain * 
    31    INTEGER , PUBLIC ::   nn_bathy     =    0       !: = 0/1 ,compute/read the bathymetry file 
    32    REAL(wp), PUBLIC ::   rn_hmin      =   -3.0_wp  !: minimum ocean depth (>0) or minimum number of ocean levels (<0) 
    33    REAL(wp), PUBLIC ::   rn_e3zps_min =    5.0_wp  !: miminum thickness for partial steps (meters) 
    34    REAL(wp), PUBLIC ::   rn_e3zps_rat =    0.1_wp  !: minimum thickness ration for partial steps 
    35    INTEGER , PUBLIC ::   nn_msh       =    0       !: = 1 create a mesh-mask file 
    36    INTEGER , PUBLIC ::   nn_acc       =    0       !: = 0/1 use of the acceleration of convergence technique 
    37    REAL(wp), PUBLIC ::   rn_atfp      =    0.1_wp  !: asselin time filter parameter 
    38    REAL(wp), PUBLIC ::   rn_rdt       = 3600._wp   !: time step for the dynamics (and tracer if nacc=0) 
    39    REAL(wp), PUBLIC ::   rn_rdtmin    = 3600._wp   !: minimum time step on tracers 
    40    REAL(wp), PUBLIC ::   rn_rdtmax    = 3600._wp   !: maximum time step on tracers 
    41    REAL(wp), PUBLIC ::   rn_rdth      =  800._wp   !: depth variation of tracer step 
    42    INTEGER , PUBLIC ::   nn_baro      =   64       !: number of barotropic time steps (key_dynspg_ts) 
    43    INTEGER , PUBLIC ::   nn_closea    =    0       !: =0 suppress closed sea/lake from the ORCA domain or not (=1) 
     30   !                                    !!* Namelist namdom : time & space domain * 
     31   INTEGER , PUBLIC ::   nn_bathy        !: = 0/1 ,compute/read the bathymetry file 
     32   REAL(wp), PUBLIC ::   rn_hmin         !: minimum ocean depth (>0) or minimum number of ocean levels (<0) 
     33   REAL(wp), PUBLIC ::   rn_e3zps_min    !: miminum thickness for partial steps (meters) 
     34   REAL(wp), PUBLIC ::   rn_e3zps_rat    !: minimum thickness ration for partial steps 
     35   INTEGER , PUBLIC ::   nn_msh          !: = 1 create a mesh-mask file 
     36   INTEGER , PUBLIC ::   nn_acc          !: = 0/1 use of the acceleration of convergence technique 
     37   REAL(wp), PUBLIC ::   rn_atfp         !: asselin time filter parameter 
     38   REAL(wp), PUBLIC ::   rn_rdt          !: time step for the dynamics (and tracer if nacc=0) 
     39   REAL(wp), PUBLIC ::   rn_rdtmin       !: minimum time step on tracers 
     40   REAL(wp), PUBLIC ::   rn_rdtmax       !: maximum time step on tracers 
     41   REAL(wp), PUBLIC ::   rn_rdth         !: depth variation of tracer step 
     42   INTEGER , PUBLIC ::   nn_baro         !: number of barotropic time steps (key_dynspg_ts) 
     43   INTEGER , PUBLIC ::   nn_closea       !: =0 suppress closed sea/lake from the ORCA domain or not (=1) 
    4444 
    4545   !                                    !! old non-DOCTOR names still used in the model 
     
    6262 
    6363   !                                         !!* Namelist namcla : cross land advection 
    64    INTEGER, PUBLIC ::   nn_cla = 0            !: =1 cross land advection for exchanges through some straits (ORCA2) 
     64   INTEGER, PUBLIC ::   nn_cla               !: =1 cross land advection for exchanges through some straits (ORCA2) 
    6565 
    6666   !!---------------------------------------------------------------------- 
     
    127127   !! vertical coordinate and scale factors 
    128128   !! --------------------------------------------------------------------- 
    129    !                                           !!* Namelist namzgr : vertical coordinate * 
    130    LOGICAL, PUBLIC ::   ln_zco     =  .TRUE.    !: z-coordinate - full step 
    131    LOGICAL, PUBLIC ::   ln_zps     =  .FALSE.   !: z-coordinate - partial step 
    132    LOGICAL, PUBLIC ::   ln_sco     =  .FALSE.   !: s-coordinate or hybrid z-s coordinate 
     129   !                                 !!* Namelist namzgr : vertical coordinate * 
     130   LOGICAL, PUBLIC ::   ln_zco        !: z-coordinate - full step 
     131   LOGICAL, PUBLIC ::   ln_zps        !: z-coordinate - partial step 
     132   LOGICAL, PUBLIC ::   ln_sco        !: s-coordinate or hybrid z-s coordinate 
    133133 
    134134   !! All coordinates 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90

    r3875 r3901  
    3939 
    4040   !                            !!* Namelist namlbc : lateral boundary condition * 
    41    REAL(wp)        :: rn_shlat   = 2.   ! type of lateral boundary condition on velocity 
    42    LOGICAL, PUBLIC :: ln_vorlat  = .false.   !  consistency of vorticity boundary condition  
     41   REAL(wp)        :: rn_shlat   ! type of lateral boundary condition on velocity 
     42   LOGICAL, PUBLIC :: ln_vorlat  !  consistency of vorticity boundary condition  
    4343   !                                            with analytical eqs. 
    4444 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90

    r3875 r3901  
    4949   PUBLIC   dom_zgr        ! called by dom_init.F90 
    5050 
    51    !                                       !!* Namelist namzgr_sco * 
    52    LOGICAL  ::   ln_s_sh94   = .false.      ! use hybrid s-sig Song and Haidvogel 1994 stretching function fssig1 (ln_sco=T) 
    53    LOGICAL  ::   ln_s_sf12   = .true.       ! use hybrid s-z-sig Siddorn and Furner 2012 stretching function fgamma (ln_sco=T) 
     51   !                              !!* Namelist namzgr_sco * 
     52   LOGICAL  ::   ln_s_sh94         ! use hybrid s-sig Song and Haidvogel 1994 stretching function fssig1 (ln_sco=T) 
     53   LOGICAL  ::   ln_s_sf12         ! use hybrid s-z-sig Siddorn and Furner 2012 stretching function fgamma (ln_sco=T) 
    5454   ! 
    55    REAL(wp) ::   rn_sbot_min =  300._wp     ! minimum depth of s-bottom surface (>0) (m) 
    56    REAL(wp) ::   rn_sbot_max = 5250._wp     ! maximum depth of s-bottom surface (= ocean depth) (>0) (m) 
    57    REAL(wp) ::   rn_rmax     =    0.15_wp   ! maximum cut-off r-value allowed (0<rn_rmax<1) 
    58    REAL(wp) ::   rn_hc       =  150._wp     ! Critical depth for transition from sigma to stretched coordinates 
     55   REAL(wp) ::   rn_sbot_min       ! minimum depth of s-bottom surface (>0) (m) 
     56   REAL(wp) ::   rn_sbot_max       ! maximum depth of s-bottom surface (= ocean depth) (>0) (m) 
     57   REAL(wp) ::   rn_rmax           ! maximum cut-off r-value allowed (0<rn_rmax<1) 
     58   REAL(wp) ::   rn_hc             ! Critical depth for transition from sigma to stretched coordinates 
    5959   ! Song and Haidvogel 1994 stretching parameters 
    60    REAL(wp) ::   rn_theta    =    6.00_wp   ! surface control parameter (0<=rn_theta<=20) 
    61    REAL(wp) ::   rn_thetb    =    0.75_wp   ! bottom control parameter  (0<=rn_thetb<= 1) 
    62    REAL(wp) ::   rn_bb       =    0.80_wp   ! stretching parameter  
     60   REAL(wp) ::   rn_theta          ! surface control parameter (0<=rn_theta<=20) 
     61   REAL(wp) ::   rn_thetb          ! bottom control parameter  (0<=rn_thetb<= 1) 
     62   REAL(wp) ::   rn_bb             ! stretching parameter  
    6363   !                                        ! ( rn_bb=0; top only, rn_bb =1; top and bottom) 
    6464   ! Siddorn and Furner stretching parameters 
    65    LOGICAL  ::   ln_sigcrit  = .false.      ! use sigma coordinates below critical depth (T) or Z coordinates (F) for Siddorn & Furner stretch  
    66    REAL(wp) ::   rn_alpha    =    4.4_wp    ! control parameter ( > 1 stretch towards surface, < 1 towards seabed) 
    67    REAL(wp) ::   rn_efold    =    0.0_wp    !  efold length scale for transition to stretched coord 
    68    REAL(wp) ::   rn_zs       =    1.0_wp    !  depth of surface grid box 
     65   LOGICAL  ::   ln_sigcrit        ! use sigma coordinates below critical depth (T) or Z coordinates (F) for Siddorn & Furner stretch  
     66   REAL(wp) ::   rn_alpha          ! control parameter ( > 1 stretch towards surface, < 1 towards seabed) 
     67   REAL(wp) ::   rn_efold          !  efold length scale for transition to stretched coord 
     68   REAL(wp) ::   rn_zs             !  depth of surface grid box 
    6969                           !  bottom cell depth (Zb) is a linear function of water depth Zb = H*a + b 
    70    REAL(wp) ::   rn_zb_a     =    0.024_wp  !  bathymetry scaling factor for calculating Zb 
    71    REAL(wp) ::   rn_zb_b     =   -0.2_wp    !  offset for calculating Zb 
     70   REAL(wp) ::   rn_zb_a           !  bathymetry scaling factor for calculating Zb 
     71   REAL(wp) ::   rn_zb_b           !  offset for calculating Zb 
    7272 
    7373  !! * Substitutions 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DOM/dtatsd.F90

    r3875 r3901  
    3030   PUBLIC   dta_tsd        ! called by istate.F90 and tradmp.90 
    3131 
    32    LOGICAL , PUBLIC ::   ln_tsd_init   = .FALSE.    !: T & S data flag 
    33    LOGICAL , PUBLIC ::   ln_tsd_tradmp = .FALSE.    !: internal damping toward input data flag 
     32   LOGICAL , PUBLIC ::   ln_tsd_init      !: T & S data flag 
     33   LOGICAL , PUBLIC ::   ln_tsd_tradmp    !: internal damping toward input data flag 
    3434 
    3535   TYPE(FLD), ALLOCATABLE, DIMENSION(:) ::   sf_tsd   ! structure of input SST (file informations, fields read) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DYN/dynadv.F90

    r3875 r3901  
    2727   PUBLIC dyn_adv_init  ! routine called by opa module 
    2828  
    29    LOGICAL, PUBLIC ::   ln_dynadv_vec  = .TRUE.    !: vector form flag 
    30    LOGICAL, PUBLIC ::   ln_dynadv_cen2 = .FALSE.  !: flux form - 2nd order centered scheme flag 
    31    LOGICAL, PUBLIC ::   ln_dynadv_ubs  = .FALSE.  !: flux form - 3rd order UBS scheme flag 
     29   LOGICAL, PUBLIC ::   ln_dynadv_vec  !: vector form flag 
     30   LOGICAL, PUBLIC ::   ln_dynadv_cen2 !: flux form - 2nd order centered scheme flag 
     31   LOGICAL, PUBLIC ::   ln_dynadv_ubs  !: flux form - 3rd order UBS scheme flag 
    3232    
    3333   INTEGER ::   nadv   ! choice of the formulation and scheme for the advection 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DYN/dynhpg.F90

    r3875 r3901  
    4646   PUBLIC   dyn_hpg_init   ! routine called by opa module 
    4747 
    48    !                                              !!* Namelist namdyn_hpg : hydrostatic pressure gradient 
    49    LOGICAL , PUBLIC ::   ln_hpg_zco    = .TRUE.    !: z-coordinate - full steps 
    50    LOGICAL , PUBLIC ::   ln_hpg_zps    = .FALSE.   !: z-coordinate - partial steps (interpolation) 
    51    LOGICAL , PUBLIC ::   ln_hpg_sco    = .FALSE.   !: s-coordinate (standard jacobian formulation) 
    52    LOGICAL , PUBLIC ::   ln_hpg_djc    = .FALSE.   !: s-coordinate (Density Jacobian with Cubic polynomial) 
    53    LOGICAL , PUBLIC ::   ln_hpg_prj    = .FALSE.   !: s-coordinate (Pressure Jacobian scheme) 
    54    LOGICAL , PUBLIC ::   ln_dynhpg_imp = .FALSE.   !: semi-implicite hpg flag 
     48   !                                    !!* Namelist namdyn_hpg : hydrostatic pressure gradient 
     49   LOGICAL , PUBLIC ::   ln_hpg_zco      !: z-coordinate - full steps 
     50   LOGICAL , PUBLIC ::   ln_hpg_zps      !: z-coordinate - partial steps (interpolation) 
     51   LOGICAL , PUBLIC ::   ln_hpg_sco      !: s-coordinate (standard jacobian formulation) 
     52   LOGICAL , PUBLIC ::   ln_hpg_djc      !: s-coordinate (Density Jacobian with Cubic polynomial) 
     53   LOGICAL , PUBLIC ::   ln_hpg_prj      !: s-coordinate (Pressure Jacobian scheme) 
     54   LOGICAL , PUBLIC ::   ln_dynhpg_imp   !: semi-implicite hpg flag 
    5555 
    5656   INTEGER , PUBLIC ::   nhpg  =  0   ! = 0 to 7, type of pressure gradient scheme used ! (deduced from ln_hpg_... flags) (PUBLIC for TAM) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DYN/dynnept.F90

    r3875 r3901  
    4949 
    5050   !! * Namelist namdyn_nept variables 
    51    LOGICAL, PUBLIC  ::  ln_neptsimp        = .FALSE.  ! yes/no simplified neptune 
    52  
    53    LOGICAL          ::  ln_smooth_neptvel  = .FALSE.  ! yes/no smooth zunep, zvnep 
    54    REAL(wp)         ::  rn_tslse           =  1.2e4   ! value of lengthscale L at the equator 
    55    REAL(wp)         ::  rn_tslsp           =  3.0e3   ! value of lengthscale L at the pole 
     51   LOGICAL, PUBLIC  ::  ln_neptsimp          ! yes/no simplified neptune 
     52 
     53   LOGICAL          ::  ln_smooth_neptvel    ! yes/no smooth zunep, zvnep 
     54   REAL(wp)         ::  rn_tslse             ! value of lengthscale L at the equator 
     55   REAL(wp)         ::  rn_tslsp             ! value of lengthscale L at the pole 
    5656!! Specify whether to ramp down the Neptune velocity in shallow 
    5757!! water, and the depth range controlling such ramping down 
    58    LOGICAL          ::  ln_neptramp        = .FALSE.  ! ramp down Neptune velocity in shallow water 
    59    REAL(wp)         ::  rn_htrmin          =  100.0   ! min. depth of transition range 
    60    REAL(wp)         ::  rn_htrmax          =  200.0   ! max. depth of transition range 
     58   LOGICAL          ::  ln_neptramp          ! ramp down Neptune velocity in shallow water 
     59   REAL(wp)         ::  rn_htrmin            ! min. depth of transition range 
     60   REAL(wp)         ::  rn_htrmax            ! max. depth of transition range 
    6161 
    6262   !! * Module variables 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/DYN/dynvor.F90

    r3875 r3901  
    4545   PUBLIC   dyn_vor_init   ! routine called by opa.F90 
    4646 
    47    !                                             !!* Namelist namdyn_vor: vorticity term 
    48    LOGICAL, PUBLIC ::   ln_dynvor_ene = .FALSE.   !: energy conserving scheme 
    49    LOGICAL, PUBLIC ::   ln_dynvor_ens = .TRUE.    !: enstrophy conserving scheme 
    50    LOGICAL, PUBLIC ::   ln_dynvor_mix = .FALSE.   !: mixed scheme 
    51    LOGICAL, PUBLIC ::   ln_dynvor_een = .FALSE.   !: energy and enstrophy conserving scheme 
     47   !                                   !!* Namelist namdyn_vor: vorticity term 
     48   LOGICAL, PUBLIC ::   ln_dynvor_ene   !: energy conserving scheme 
     49   LOGICAL, PUBLIC ::   ln_dynvor_ens   !: enstrophy conserving scheme 
     50   LOGICAL, PUBLIC ::   ln_dynvor_mix   !: mixed scheme 
     51   LOGICAL, PUBLIC ::   ln_dynvor_een   !: energy and enstrophy conserving scheme 
    5252 
    5353   INTEGER ::   nvor = 0   ! type of vorticity trend used 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/FLO/flo_oce.F90

    r3294 r3901  
    3939   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   wb   !: vertical velocity at previous time step (m s-1). 
    4040    
    41    !                                                 !!! * namelist namflo : langrangian floats * 
    42    LOGICAL, PUBLIC  ::   ln_rstflo      = .FALSE.    !: T/F float restart  
    43    LOGICAL, PUBLIC  ::   ln_argo        = .FALSE.    !: T/F argo type floats 
    44    LOGICAL, PUBLIC  ::   ln_flork4      = .FALSE.    !: T/F 4th order Runge-Kutta 
    45    LOGICAL, PUBLIC  ::   ln_ariane      = .FALSE.    !: handle ariane input/output convention 
    46    LOGICAL, PUBLIC  ::   ln_flo_ascii   = .FALSE.    !: write in ascii (T) or in Netcdf (F) 
     41   !                                   !! * namelist namflo : langrangian floats * 
     42   LOGICAL, PUBLIC  ::   ln_rstflo      !: T/F float restart  
     43   LOGICAL, PUBLIC  ::   ln_argo        !: T/F argo type floats 
     44   LOGICAL, PUBLIC  ::   ln_flork4      !: T/F 4th order Runge-Kutta 
     45   LOGICAL, PUBLIC  ::   ln_ariane      !: handle ariane input/output convention 
     46   LOGICAL, PUBLIC  ::   ln_flo_ascii   !: write in ascii (T) or in Netcdf (F) 
    4747 
    48    INTEGER, PUBLIC  ::   nn_writefl     = 150        !: frequency of float output file  
    49    INTEGER, PUBLIC  ::   nn_stockfl     = 450        !: frequency of float restart file 
     48   INTEGER, PUBLIC  ::   nn_writefl     !: frequency of float output file  
     49   INTEGER, PUBLIC  ::   nn_stockfl     !: frequency of float restart file 
    5050 
    5151   !!---------------------------------------------------------------------- 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ICB/icb_oce.F90

    r3614 r3901  
    109109 
    110110   !                                                         !!* namberg namelist parameters (and defaults) ** 
    111    LOGICAL , PUBLIC ::   ln_bergdia               = .true.    !: Calculate budgets 
    112    INTEGER , PUBLIC ::   nn_verbose_level         = 0         !: Turn on debugging when level > 0 
    113    INTEGER , PUBLIC ::   nn_test_icebergs         = 0         !: Create icebergs in absence of a restart file from the supplied class nb 
    114    REAL(wp), PUBLIC, DIMENSION(4) ::   rn_test_box = (/ 0._wp, 1._wp, 0._wp, 1._wp /)   !: lon1,lon2,lat1,lat2 box to create them in 
    115    INTEGER , PUBLIC ::   nn_sample_rate           = 0         !: Timesteps between sampling of position for trajectory storage 
    116    INTEGER , PUBLIC ::   nn_verbose_write         = 15        !: timesteps between verbose messages 
    117    REAL(wp), PUBLIC ::   rn_rho_bergs             = 850._wp   !: Density of icebergs 
    118    REAL(wp), PUBLIC ::   rn_LoW_ratio             = 1.5_wp    !: Initial ratio L/W for newly calved icebergs 
    119    REAL(wp), PUBLIC ::   rn_bits_erosion_fraction = 0.        !: Fraction of erosion melt flux to divert to bergy bits 
    120    REAL(wp), PUBLIC ::   rn_sicn_shift            = 0._wp     !: Shift of sea-ice concentration in erosion flux modulation (0<sicn_shift<1) 
    121    LOGICAL , PUBLIC ::   ln_operator_splitting    = .true.    !: Use first order operator splitting for thermodynamics 
    122    LOGICAL , PUBLIC ::   ln_passive_mode          = .false.   !: iceberg - ocean decoupling 
    123    LOGICAL , PUBLIC ::   ln_time_average_weight   = .false.   !: Time average the weight on the ocean    !!gm I don't understand that ! 
    124    REAL(wp), PUBLIC ::   rn_speed_limit           = 0._wp     !: CFL speed limit for a berg 
     111   LOGICAL , PUBLIC ::   ln_bergdia                      !: Calculate budgets 
     112   INTEGER , PUBLIC ::   nn_verbose_level                !: Turn on debugging when level > 0 
     113   INTEGER , PUBLIC ::   nn_test_icebergs                !: Create icebergs in absence of a restart file from the supplied class nb 
     114   REAL(wp), PUBLIC, DIMENSION(4) ::   rn_test_box       !: lon1,lon2,lat1,lat2 box to create them in 
     115   INTEGER , PUBLIC ::   nn_sample_rate                  !: Timesteps between sampling of position for trajectory storage 
     116   INTEGER , PUBLIC ::   nn_verbose_write                !: timesteps between verbose messages 
     117   REAL(wp), PUBLIC ::   rn_rho_bergs                    !: Density of icebergs 
     118   REAL(wp), PUBLIC ::   rn_LoW_ratio                    !: Initial ratio L/W for newly calved icebergs 
     119   REAL(wp), PUBLIC ::   rn_bits_erosion_fraction        !: Fraction of erosion melt flux to divert to bergy bits 
     120   REAL(wp), PUBLIC ::   rn_sicn_shift                   !: Shift of sea-ice concentration in erosion flux modulation (0<sicn_shift<1) 
     121   LOGICAL , PUBLIC ::   ln_operator_splitting           !: Use first order operator splitting for thermodynamics 
     122   LOGICAL , PUBLIC ::   ln_passive_mode                 !: iceberg - ocean decoupling 
     123   LOGICAL , PUBLIC ::   ln_time_average_weight          !: Time average the weight on the ocean    !!gm I don't understand that ! 
     124   REAL(wp), PUBLIC ::   rn_speed_limit                  !: CFL speed limit for a berg 
    125125   ! 
    126126   !                                     ! Mass thresholds between iceberg classes [kg] 
    127    REAL(wp), DIMENSION(nclasses), PUBLIC ::   rn_initial_mass      = (/8.8e07, 4.1e08, 3.3e09, 1.8e10, 3.8e10,   & 
    128       &                                                                7.5e10, 1.2e11, 2.2e11, 3.9e11, 7.4e11/) 
    129    !                                     ! Fraction of calving to apply to this class [non-dim] 
    130    REAL(wp), DIMENSION(nclasses), PUBLIC ::   rn_distribution      = (/0.25  , 0.12  , 0.15  , 0.18  , 0.12  ,   & 
    131       &                                                                0.07  , 0.03  , 0.03  , 0.03  , 0.02  /) 
    132    !                                     ! Ratio between effective and real iceberg mass (non-dim) 
    133    REAL(wp), DIMENSION(nclasses), PUBLIC ::   rn_mass_scaling      = (/2000. ,  200. ,   50. ,   20. ,   10. ,   & 
    134       &                                                                   5. ,    2. ,    1. ,    1. ,    1. /) 
    135    !                                     ! Total thickness of newly calved bergs [m] 
    136    REAL(wp), DIMENSION(nclasses), PUBLIC ::   rn_initial_thickness = (/  40. ,   67. ,  133. ,  175. ,  250. ,   & 
    137       &                                                                 250. ,  250. ,  250. ,  250. ,  250./) 
    138  
    139    ! Single instance of an icebergs type initialised in icebergs_init and updated in icebergs_run 
     127   REAL(wp), DIMENSION(nclasses), PUBLIC ::   rn_initial_mass      ! Fraction of calving to apply to this class [non-dim] 
     128   REAL(wp), DIMENSION(nclasses), PUBLIC ::   rn_distribution      ! Ratio between effective and real iceberg mass (non-dim) 
     129   REAL(wp), DIMENSION(nclasses), PUBLIC ::   rn_mass_scaling      ! Total thickness of newly calved bergs [m] 
     130   REAL(wp), DIMENSION(nclasses), PUBLIC ::   rn_initial_thickness !  Single instance of an icebergs type initialised in icebergs_init and updated in icebergs_run 
    140131   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)     ::   src_calving, src_calving_hflx    !: accumulate input ice 
    141132   INTEGER , PUBLIC             , SAVE                     ::   numicb                           !: iceberg IO 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ICB/icbini.F90

    r3875 r3901  
    3535   PUBLIC   icb_init  ! routine called in nemogcm.F90 module 
    3636 
    37    CHARACTER(len=100) ::   cn_dir = './'   ! Root directory for location of icb files 
     37   CHARACTER(len=100) ::   cn_dir          ! Root directory for location of icb files 
    3838   TYPE(FLD_N)        ::   sn_icb          ! information about the calving file to be read 
    3939 
     
    355355      !!---------------------------------------------------------------------- 
    356356 
    357       ! (NB: frequency positive => hours, negative => months) 
    358       !            !   file     ! frequency !  variable  ! time intep !  clim  ! 'yearly' or ! weights  ! rotation   ! 
    359       !            !   name     !  (hours)  !   name     !   (T/F)    !  (T/F) !  'monthly'  ! filename ! pairs      ! 
    360       sn_icb = FLD_N( 'calving' ,    -1     , 'calving'  ,  .TRUE.    , .TRUE. ,   'yearly'  , ''       , ''         ) 
    361  
    362357      REWIND( numnam_ref )              ! Namelist namberg in reference namelist : Iceberg parameters 
    363358      READ  ( numnam_ref, namberg, IOSTAT = ios, ERR = 901) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/IOM/in_out_manager.F90

    r3875 r3901  
    2222   !!                   namrun namelist parameters 
    2323   !!---------------------------------------------------------------------- 
    24    CHARACTER(lc) ::   cn_exp        = "exp0"      !: experiment name used for output filename 
    25    CHARACTER(lc) ::   cn_ocerst_in  = "restart"   !: suffix of ocean restart name (input) 
    26    CHARACTER(lc) ::   cn_ocerst_out = "restart"   !: suffix of ocean restart name (output) 
    27    LOGICAL       ::   ln_rstart     = .FALSE.     !: start from (F) rest or (T) a restart file 
    28    INTEGER       ::   nn_no         = 0           !: job number 
    29    INTEGER       ::   nn_rstctl     = 0           !: control of the time step (0, 1 or 2) 
     24   CHARACTER(lc) ::   cn_exp           !: experiment name used for output filename 
     25   CHARACTER(lc) ::   cn_ocerst_in     !: suffix of ocean restart name (input) 
     26   CHARACTER(lc) ::   cn_ocerst_out    !: suffix of ocean restart name (output) 
     27   LOGICAL       ::   ln_rstart        !: start from (F) rest or (T) a restart file 
     28   INTEGER       ::   nn_no            !: job number 
     29   INTEGER       ::   nn_rstctl        !: control of the time step (0, 1 or 2) 
    3030   INTEGER       ::   nn_rstssh     = 0           !: hand made initilization of ssh or not (1/0) 
    31    INTEGER       ::   nn_it000      = 1           !: index of the first time step 
    32    INTEGER       ::   nn_itend      = 10          !: index of the last time step 
    33    INTEGER       ::   nn_date0      = 961115      !: initial calendar date aammjj 
    34    INTEGER       ::   nn_leapy      = 0           !: Leap year calendar flag (0/1 or 30) 
    35    INTEGER       ::   nn_istate     = 0           !: initial state output flag (0/1) 
    36    INTEGER       ::   nn_write      =   10        !: model standard output frequency 
    37    INTEGER       ::   nn_stock      =   10        !: restart file frequency 
    38    LOGICAL       ::   ln_dimgnnn    = .FALSE.     !: type of dimgout. (F): 1 file for all proc 
     31   INTEGER       ::   nn_it000         !: index of the first time step 
     32   INTEGER       ::   nn_itend         !: index of the last time step 
     33   INTEGER       ::   nn_date0         !: initial calendar date aammjj 
     34   INTEGER       ::   nn_leapy         !: Leap year calendar flag (0/1 or 30) 
     35   INTEGER       ::   nn_istate        !: initial state output flag (0/1) 
     36   INTEGER       ::   nn_write         !: model standard output frequency 
     37   INTEGER       ::   nn_stock         !: restart file frequency 
     38   LOGICAL       ::   ln_dimgnnn       !: type of dimgout. (F): 1 file for all proc 
    3939                                                       !:                  (T): 1 file per proc 
    40    LOGICAL       ::   ln_mskland    = .FALSE.     !: mask land points in NetCDF outputs (costly: + ~15%) 
    41    LOGICAL       ::   ln_clobber    = .FALSE.     !: clobber (overwrite) an existing file 
    42    INTEGER       ::   nn_chunksz    = 0           !: chunksize (bytes) for NetCDF file (works only with iom_nf90 routines) 
     40   LOGICAL       ::   ln_mskland       !: mask land points in NetCDF outputs (costly: + ~15%) 
     41   LOGICAL       ::   ln_clobber       !: clobber (overwrite) an existing file 
     42   INTEGER       ::   nn_chunksz       !: chunksize (bytes) for NetCDF file (works only with iom_nf90 routines) 
    4343#if defined key_netcdf4 
    4444   !!---------------------------------------------------------------------- 
     
    4949   ! for runtime optimisation. The individual netcdf4 chunks can be optionally  
    5050   ! gzipped (recommended) leading to significant reductions in I/O volumes  
    51    !                                   !!!**  variables only used with iom_nf90 routines and key_netcdf4 ** 
    52    INTEGER ::   nn_nchunks_i = 1        !: number of chunks required in the i-dimension  
    53    INTEGER ::   nn_nchunks_j = 1        !: number of chunks required in the j-dimension  
    54    INTEGER ::   nn_nchunks_k = 1        !: number of chunks required in the k-dimension  
    55    INTEGER ::   nn_nchunks_t = 1        !: number of chunks required in the t-dimension  
    56    LOGICAL ::   ln_nc4zip    = .TRUE.   !: netcdf4 usage: (T) chunk and compress output using the HDF5 sublayers of netcdf4 
    57    !                                    !                 (F) ignore chunking request and use the netcdf4 library  
    58    !                                    !                     to produce netcdf3-compatible files  
     51   !                         !!!**  variables only used with iom_nf90 routines and key_netcdf4 ** 
     52   INTEGER ::   nn_nchunks_i   !: number of chunks required in the i-dimension  
     53   INTEGER ::   nn_nchunks_j   !: number of chunks required in the j-dimension  
     54   INTEGER ::   nn_nchunks_k   !: number of chunks required in the k-dimension  
     55   INTEGER ::   nn_nchunks_t   !: number of chunks required in the t-dimension  
     56   LOGICAL ::   ln_nc4zip      !: netcdf4 usage: (T) chunk and compress output using the HDF5 sublayers of netcdf4 
     57   !                           !                 (F) ignore chunking request and use the netcdf4 library  
     58   !                           !                     to produce netcdf3-compatible files  
    5959#endif 
    6060!$AGRIF_DO_NOT_TREAT 
     
    8787   !!                    output monitoring 
    8888   !!---------------------------------------------------------------------- 
    89    LOGICAL ::   ln_ctl     = .FALSE.   !: run control for debugging 
    90    INTEGER ::   nn_timing    =    0    !: run control for timing 
    91    INTEGER ::   nn_print     =    0    !: level of print (0 no print) 
    92    INTEGER ::   nn_ictls     =    0    !: Start i indice for the SUM control 
    93    INTEGER ::   nn_ictle     =    0    !: End   i indice for the SUM control 
    94    INTEGER ::   nn_jctls     =    0    !: Start j indice for the SUM control 
    95    INTEGER ::   nn_jctle     =    0    !: End   j indice for the SUM control 
    96    INTEGER ::   nn_isplt     =    1    !: number of processors following i 
    97    INTEGER ::   nn_jsplt     =    1    !: number of processors following j 
    98    INTEGER ::   nn_bench     =    0    !: benchmark parameter (0/1) 
     89   LOGICAL ::   ln_ctl       !: run control for debugging 
     90   INTEGER ::   nn_timing    !: run control for timing 
     91   INTEGER ::   nn_print     !: level of print (0 no print) 
     92   INTEGER ::   nn_ictls     !: Start i indice for the SUM control 
     93   INTEGER ::   nn_ictle     !: End   i indice for the SUM control 
     94   INTEGER ::   nn_jctls     !: Start j indice for the SUM control 
     95   INTEGER ::   nn_jctle     !: End   j indice for the SUM control 
     96   INTEGER ::   nn_isplt     !: number of processors following i 
     97   INTEGER ::   nn_jsplt     !: number of processors following j 
     98   INTEGER ::   nn_bench     !: benchmark parameter (0/1) 
    9999   INTEGER ::   nn_bit_cmp   =    0    !: bit reproducibility  (0/1) 
    100100 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/LBC/lib_mpp.F90

    r3875 r3901  
    145145 
    146146   ! Type of send : standard, buffered, immediate 
    147    CHARACTER(len=1), PUBLIC ::   cn_mpi_send = 'S'    ! type od mpi send/recieve (S=standard, B=bsend, I=isend) 
     147   CHARACTER(len=1), PUBLIC ::   cn_mpi_send   ! type od mpi send/recieve (S=standard, B=bsend, I=isend) 
    148148   LOGICAL, PUBLIC          ::   l_isend = .FALSE.   ! isend use indicator (T if cn_mpi_send='I') 
    149    INTEGER, PUBLIC          ::   nn_buffer = 0       ! size of the buffer in case of mpi_bsend 
     149   INTEGER, PUBLIC          ::   nn_buffer     ! size of the buffer in case of mpi_bsend 
    150150 
    151151   REAL(wp), DIMENSION(:), ALLOCATABLE, SAVE :: tampon  ! buffer in case of bsend 
     
    250250      WRITE(ldtxt(ii),*) '~~~~~~ '                                                                ;   ii = ii + 1 
    251251      ! 
    252       jpni = -1; jpnj = -1; jpnij = -1 
    253252 
    254253      REWIND( kumnam_ref )              ! Namelist nammpp in reference namelist: mpi variables 
     
    34563455 
    34573456   LOGICAL, PUBLIC, PARAMETER ::   lk_mpp = .FALSE.      !: mpp flag 
    3458    LOGICAL, PUBLIC            ::   ln_nnogather  = .FALSE.  !: namelist control of northfold comms (needed here in case "key_mpp_mpi" is not used) 
     3457   LOGICAL, PUBLIC            ::   ln_nnogather          !: namelist control of northfold comms (needed here in case "key_mpp_mpi" is not used) 
    34593458   INTEGER :: ncomm_ice 
    34603459   !!---------------------------------------------------------------------- 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/LDF/ldfdyn_oce.F90

    r3634 r3901  
    1313   PUBLIC 
    1414 
    15    !                                                  !!* Namelist namdyn_ldf : lateral mixing * 
    16    LOGICAL , PUBLIC ::   ln_dynldf_lap   = .TRUE.      !: laplacian operator 
    17    LOGICAL , PUBLIC ::   ln_dynldf_bilap = .FALSE.     !: bilaplacian operator 
    18    LOGICAL , PUBLIC ::   ln_dynldf_level = .FALSE.     !: iso-level direction 
    19    LOGICAL , PUBLIC ::   ln_dynldf_hor   = .TRUE.      !: horizontal (geopotential) direction 
    20    LOGICAL , PUBLIC ::   ln_dynldf_iso   = .FALSE.     !: iso-neutral direction 
    21    REAL(wp), PUBLIC ::   rn_ahm_0_lap    = 40000._wp   !: lateral laplacian eddy viscosity (m2/s) 
    22    REAL(wp), PUBLIC ::   rn_ahmb_0       =     0._wp   !: lateral laplacian background eddy viscosity (m2/s) 
    23    REAL(wp), PUBLIC ::   rn_ahm_0_blp    =     0._wp   !: lateral bilaplacian eddy viscosity (m4/s) 
     15   !                                       !!* Namelist namdyn_ldf : lateral mixing * 
     16   LOGICAL , PUBLIC ::   ln_dynldf_lap      !: laplacian operator 
     17   LOGICAL , PUBLIC ::   ln_dynldf_bilap    !: bilaplacian operator 
     18   LOGICAL , PUBLIC ::   ln_dynldf_level    !: iso-level direction 
     19   LOGICAL , PUBLIC ::   ln_dynldf_hor      !: horizontal (geopotential) direction 
     20   LOGICAL , PUBLIC ::   ln_dynldf_iso      !: iso-neutral direction 
     21   REAL(wp), PUBLIC ::   rn_ahm_0_lap       !: lateral laplacian eddy viscosity (m2/s) 
     22   REAL(wp), PUBLIC ::   rn_ahmb_0          !: lateral laplacian background eddy viscosity (m2/s) 
     23   REAL(wp), PUBLIC ::   rn_ahm_0_blp       !: lateral bilaplacian eddy viscosity (m4/s) 
    2424   REAL(wp), PUBLIC ::   ahm0, ahmb0, ahm0_blp         !: OLD namelist names 
    25    REAL(wp), PUBLIC ::   rn_cmsmag_1     =     3._wp   !: constant in laplacian Smagorinsky viscosity 
    26    REAL(wp), PUBLIC ::   rn_cmsmag_2     =     3._wp   !: constant in bilaplacian Smagorinsky viscosity 
    27    REAL(wp), PUBLIC ::   rn_cmsh         =     1._wp   !: 1 or 0 , if 0 -use only shear for Smagorinsky viscosity 
    28    REAL(wp), PUBLIC ::   rn_ahm_m_blp    = -1.e12_wp   !: upper limit for bilap  abs(ahm) < min( dx^4/128rdt, rn_ahm_m_blp) 
    29    REAL(wp), PUBLIC ::   rn_ahm_m_lap    =  40000_wp   !: upper limit for lap  ahm < min(dx^2/16rdt, rn_ahm_m_lap) 
     25   REAL(wp), PUBLIC ::   rn_cmsmag_1        !: constant in laplacian Smagorinsky viscosity 
     26   REAL(wp), PUBLIC ::   rn_cmsmag_2        !: constant in bilaplacian Smagorinsky viscosity 
     27   REAL(wp), PUBLIC ::   rn_cmsh            !: 1 or 0 , if 0 -use only shear for Smagorinsky viscosity 
     28   REAL(wp), PUBLIC ::   rn_ahm_m_blp       !: upper limit for bilap  abs(ahm) < min( dx^4/128rdt, rn_ahm_m_blp) 
     29   REAL(wp), PUBLIC ::   rn_ahm_m_lap       !: upper limit for lap  ahm < min(dx^2/16rdt, rn_ahm_m_lap) 
     30 
    3031   INTEGER , PUBLIC ::   nkahm_smag      =  0          !:  
    3132 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/LDF/ldftra_oce.F90

    r3634 r3901  
    1818   !! Lateral eddy diffusivity coefficients (tracers) 
    1919   !!---------------------------------------------------------------------- 
    20    !                                                !!* Namelist namtra_ldf : lateral mixing * 
    21    LOGICAL , PUBLIC ::   ln_traldf_lap   = .TRUE.    !: laplacian operator 
    22    LOGICAL , PUBLIC ::   ln_traldf_bilap = .FALSE.  !: bilaplacian operator 
    23    LOGICAL , PUBLIC ::   ln_traldf_level = .FALSE.  !: iso-level direction 
    24    LOGICAL , PUBLIC ::   ln_traldf_hor   = .FALSE.  !: horizontal (geopotential) direction 
    25    LOGICAL , PUBLIC ::   ln_traldf_iso   = .TRUE.    !: iso-neutral direction 
    26    LOGICAL , PUBLIC ::   ln_traldf_grif  = .FALSE.  !: griffies skew flux 
    27    LOGICAL , PUBLIC ::   ln_traldf_gdia  = .FALSE.  !: griffies skew flux streamfunction diagnostics 
    28    REAL(wp), PUBLIC ::   rn_aht_0        = 2000._wp !: lateral eddy diffusivity (m2/s) 
    29    REAL(wp), PUBLIC ::   rn_ahtb_0       =    0._wp !: lateral background eddy diffusivity (m2/s) 
    30    REAL(wp), PUBLIC ::   rn_aeiv_0       = 2000._wp !: eddy induced velocity coefficient (m2/s) 
    31    REAL(wp), PUBLIC ::   rn_slpmax       = 0.01_wp  !: slope limit 
    32    REAL(wp), PUBLIC ::   rn_chsmag       = 1._wp    !:  multiplicative factor in Smagorinsky diffusivity 
    33    REAL(wp), PUBLIC ::   rn_smsh         = 1._wp    !:  Smagorinsky diffusivity: = 0 - use only sheer 
    34    REAL(wp), PUBLIC ::   rn_aht_m        = 2000._wp !:  upper limit or stability criteria for lateral eddy diffusivity (m2/s) 
     20   !                                     !!* Namelist namtra_ldf : lateral mixing * 
     21   LOGICAL , PUBLIC ::   ln_traldf_lap    !: laplacian operator 
     22   LOGICAL , PUBLIC ::   ln_traldf_bilap !: bilaplacian operator 
     23   LOGICAL , PUBLIC ::   ln_traldf_level !: iso-level direction 
     24   LOGICAL , PUBLIC ::   ln_traldf_hor    !: horizontal (geopotential) direction 
     25   LOGICAL , PUBLIC ::   ln_traldf_iso    !: iso-neutral direction 
     26   LOGICAL , PUBLIC ::   ln_traldf_grif  !: griffies skew flux 
     27   LOGICAL , PUBLIC ::   ln_traldf_gdia  !: griffies skew flux streamfunction diagnostics 
     28   REAL(wp), PUBLIC ::   rn_aht_0        !: lateral eddy diffusivity (m2/s) 
     29   REAL(wp), PUBLIC ::   rn_ahtb_0        !: lateral background eddy diffusivity (m2/s) 
     30   REAL(wp), PUBLIC ::   rn_aeiv_0        !: eddy induced velocity coefficient (m2/s) 
     31   REAL(wp), PUBLIC ::   rn_slpmax        !: slope limit 
     32   REAL(wp), PUBLIC ::   rn_chsmag        !:  multiplicative factor in Smagorinsky diffusivity 
     33   REAL(wp), PUBLIC ::   rn_smsh          !:  Smagorinsky diffusivity: = 0 - use only sheer 
     34   REAL(wp), PUBLIC ::   rn_aht_m        !:  upper limit or stability criteria for lateral eddy diffusivity (m2/s) 
    3535 
    3636   REAL(wp), PUBLIC ::   aht0, ahtb0, aeiv0         !!: OLD namelist names 
    3737 
    38    LOGICAL , PUBLIC ::   ln_triad_iso    = .FALSE.   !: calculate triads twice 
    39    LOGICAL , PUBLIC ::   ln_botmix_grif  = .FALSE.   !: mixing on bottom 
     38   LOGICAL , PUBLIC ::   ln_triad_iso    !: calculate triads twice 
     39   LOGICAL , PUBLIC ::   ln_botmix_grif  !: mixing on bottom 
    4040   LOGICAL , PUBLIC ::   l_grad_zps      = .FALSE.   !: special treatment for Horz Tgradients w partial steps  
    4141 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/OBC/obc_oce.F90

    r2715 r3901  
    2323   !!---------------------------------------------------------------------- 
    2424   ! 
    25    !                                            !!* Namelist namobc: open boundary condition * 
    26    INTEGER           ::   nn_obcdta   = 0        !:  = 0 use the initial state as obc data 
    27    !                                             !   = 1 read obc data in obcxxx.dta files 
    28    CHARACTER(len=20) ::   cn_obcdta   = 'annual' !: set to annual  if obc datafile hold 1 year of data 
    29    !                                             !  set to monthly if obc datafile hold 1 month of data 
    30    LOGICAL           ::   ln_obc_clim = .true.   !:  obc data files are climatological 
    31    LOGICAL           ::   ln_obc_fla  = .false.  !:  Flather open boundary condition not used 
    32    LOGICAL           ::   ln_vol_cst  = .true.   !:  Conservation of the whole volume 
    33    REAL(wp)          ::   rn_dpein    =  1.      !: damping time scale for inflow at East open boundary 
    34    REAL(wp)          ::   rn_dpwin    =  1.      !:    "                      "   at West open boundary 
    35    REAL(wp)          ::   rn_dpsin    =  1.      !:    "                      "   at South open boundary 
    36    REAL(wp)          ::   rn_dpnin    =  1.      !:    "                      "   at North open boundary 
    37    REAL(wp)          ::   rn_dpeob    = 15.      !: damping time scale for the climatology at East open boundary 
    38    REAL(wp)          ::   rn_dpwob    = 15.      !:    "                           "       at West open boundary 
    39    REAL(wp)          ::   rn_dpsob    = 15.      !:    "                           "       at South open boundary 
    40    REAL(wp)          ::   rn_dpnob    = 15.      !:    "                           "       at North open boundary 
    41    REAL(wp)          ::   rn_volemp   =  1.      !: = 0 the total volume will have the variability of the  
    42    !                                             !      surface Flux E-P else (volemp = 1) the volume will be constant 
    43    !                                             !  = 1 the volume will be constant during all the integration. 
     25   !                                 !!* Namelist namobc: open boundary condition * 
     26   INTEGER           ::   nn_obcdta   !:  = 0 use the initial state as obc data 
     27   !                                  !   = 1 read obc data in obcxxx.dta files 
     28   CHARACTER(len=20) ::   cn_obcdta   !: set to annual  if obc datafile hold 1 year of data 
     29   !                                  !  set to monthly if obc datafile hold 1 month of data 
     30   LOGICAL           ::   ln_obc_clim !:  obc data files are climatological 
     31   LOGICAL           ::   ln_obc_fla  !:  Flather open boundary condition not used 
     32   LOGICAL           ::   ln_vol_cst  !:  Conservation of the whole volume 
     33   REAL(wp)          ::   rn_dpein    !: damping time scale for inflow at East open boundary 
     34   REAL(wp)          ::   rn_dpwin    !:    "                      "   at West open boundary 
     35   REAL(wp)          ::   rn_dpsin    !:    "                      "   at South open boundary 
     36   REAL(wp)          ::   rn_dpnin    !:    "                      "   at North open boundary 
     37   REAL(wp)          ::   rn_dpeob    !: damping time scale for the climatology at East open boundary 
     38   REAL(wp)          ::   rn_dpwob    !:    "                           "       at West open boundary 
     39   REAL(wp)          ::   rn_dpsob    !:    "                           "       at South open boundary 
     40   REAL(wp)          ::   rn_dpnob    !:    "                           "       at North open boundary 
     41   REAL(wp)          ::   rn_volemp   !: = 0 the total volume will have the variability of the  
     42   !                                  !      surface Flux E-P else (volemp = 1) the volume will be constant 
     43   !                                  !  = 1 the volume will be constant during all the integration. 
    4444 
    4545   !                                  !!! OLD non-DOCTOR name of namelist variables 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/OBS/diaobs.F90

    r3875 r3901  
    203203      ! Read namelist parameters 
    204204      !----------------------------------------------------------------------- 
    205       ! default values already set except: 
    206  
    207       ln_t3d = .FALSE. 
    208       ln_s3d = .FALSE. 
    209       ln_vel3d = .FALSE. 
    210       ln_sla = .FALSE. 
    211       ln_altbias = .FALSE. 
    212       ln_ssh = .FALSE. 
    213       ln_sst = .FALSE. 
    214       ln_seaice = .FALSE. 
    215       ln_reysst = .FALSE. 
    216       ln_ghrsst = .FALSE. 
    217       ln_sss = .FALSE. 
    218       ln_profb = .FALSE. 
    219       ln_ena = .TRUE. 
    220       ln_cor = .FALSE. 
    221       ln_sladt = .TRUE. 
    222       ln_slafb = .FALSE. 
    223       ln_sstfb = .FALSE. 
    224       ln_velavcur = .FALSE. 
    225       ln_velhrcur = .FALSE. 
    226       ln_velavadcp = .FALSE. 
    227       ln_velhradcp = .FALSE. 
    228       ln_velfb = .FALSE. 
    229       ln_nea = .FALSE. 
    230       ln_grid_search_lookup = .FALSE. 
    231       ln_grid_global = .FALSE. 
    232       ln_s_at_t = .TRUE. 
    233       grid_search_file = 'xypos' 
    234       bias_file='bias.nc' 
    235       enactfiles(:) = '' 
    236       coriofiles(:) = '' 
    237       profbfiles(:) = '' 
    238       slafilesact(:) = '' 
    239       slafilespas(:) = '' 
    240       slafbfiles(:) = '' 
    241       sstfiles(:)   = '' 
    242       sstfbfiles(:) = '' 
    243       seaicefiles(:) = '' 
     205 
    244206      velcurfiles(:) = '' 
    245207      veladcpfiles(:) = '' 
    246       velavcurfiles(:) = '' 
    247       velhrcurfiles(:) = '' 
    248       velavadcpfiles(:) = '' 
    249       velhradcpfiles(:) = '' 
    250       velfbfiles(:) = '' 
    251       reysstname = 'sst_yYYYYmMM.nc' 
    252       reysstfmt = 'monthly' 
    253       endailyavtypes(:) = -1 
    254       endailyavtypes(1) = 820 
    255       ln_profb_ena(:) = .FALSE. 
    256       ln_profb_enatim(:) = .TRUE. 
    257       ln_velfb_av(:) = .FALSE. 
    258       ln_ignmis = .FALSE. 
    259208      CALL ini_date( dobsini ) 
    260209      CALL fin_date( dobsend ) 
    261       n1dint = 1 
    262       n2dint = 3 
    263  
     210  
    264211      ! Read Namelist namobs : control observation diagnostics 
    265212      REWIND( numnam_ref )              ! Namelist namobs in reference namelist : Diagnostic: control observation 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/albedo.F90

    r3875 r3901  
    3636   REAL(wp) ::   rmue   = 0.40    !  cosine of local solar altitude 
    3737 
    38    !                               !!* namelist namsbc_alb 
    39    REAL(wp) ::   rn_cloud  = 0.06   !  cloudiness effect on snow or ice albedo (Grenfell & Perovich, 1984) 
     38   !                             !!* namelist namsbc_alb 
     39   REAL(wp) ::   rn_cloud         !  cloudiness effect on snow or ice albedo (Grenfell & Perovich, 1984) 
    4040#if defined key_lim3 
    41    REAL(wp) ::   rn_albice = 0.53   !  albedo of melting ice in the arctic and antarctic (Shine & Hendersson-Sellers) 
     41   REAL(wp) ::   rn_albice        !  albedo of melting ice in the arctic and antarctic (Shine & Hendersson-Sellers) 
    4242#else 
    43    REAL(wp) ::   rn_albice = 0.50   !  albedo of melting ice in the arctic and antarctic (Shine & Hendersson-Sellers) 
     43   REAL(wp) ::   rn_albice        !  albedo of melting ice in the arctic and antarctic (Shine & Hendersson-Sellers) 
    4444#endif 
    45    REAL(wp) ::   rn_alphd  = 0.80   !  coefficients for linear interpolation used to compute 
    46    REAL(wp) ::   rn_alphdi = 0.72   !  albedo between two extremes values (Pyane, 1972) 
    47    REAL(wp) ::   rn_alphc  = 0.65   !  
     45   REAL(wp) ::   rn_alphd         !  coefficients for linear interpolation used to compute 
     46   REAL(wp) ::   rn_alphdi        !  albedo between two extremes values (Pyane, 1972) 
     47   REAL(wp) ::   rn_alphc         !  
    4848 
    4949   !!---------------------------------------------------------------------- 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/cyclone.F90

    r3875 r3901  
    8787      TYPE(FLD_N), DIMENSION(1) ::   slf_i     ! array of namelist informations on the TC position 
    8888      TYPE(FLD_N) ::   sn_tc                   ! informations about the fields to be read 
    89       !      NAMELIST/namsbc_tc/ cn_dir , sn_tc 
    9089      !!-------------------------------------------------------------------- 
    9190 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbc_oce.F90

    r3680 r3901  
    2828   !!           Namelist for the Ocean Surface Boundary Condition 
    2929   !!---------------------------------------------------------------------- 
    30    !                                            !!* namsbc namelist * 
    31    LOGICAL , PUBLIC ::   ln_ana      = .FALSE.   !: analytical boundary condition flag 
    32    LOGICAL , PUBLIC ::   ln_flx      = .FALSE.   !: flux      formulation 
    33    LOGICAL , PUBLIC ::   ln_blk_clio = .FALSE.   !: CLIO bulk formulation 
    34    LOGICAL , PUBLIC ::   ln_blk_core = .FALSE.   !: CORE bulk formulation 
    35    LOGICAL , PUBLIC ::   ln_blk_mfs  = .FALSE.   !: MFS  bulk formulation 
    36    LOGICAL , PUBLIC ::   ln_cpl      = .FALSE.   !: coupled   formulation (overwritten by key_sbc_coupled ) 
    37    LOGICAL , PUBLIC ::   ln_dm2dc    = .FALSE.   !: Daily mean to Diurnal Cycle short wave (qsr) 
     30   !                                   !!* namsbc namelist * 
     31   LOGICAL , PUBLIC ::   ln_ana         !: analytical boundary condition flag 
     32   LOGICAL , PUBLIC ::   ln_flx         !: flux      formulation 
     33   LOGICAL , PUBLIC ::   ln_blk_clio    !: CLIO bulk formulation 
     34   LOGICAL , PUBLIC ::   ln_blk_core    !: CORE bulk formulation 
     35   LOGICAL , PUBLIC ::   ln_blk_mfs     !: MFS  bulk formulation 
     36   LOGICAL , PUBLIC ::   ln_cpl         !: coupled   formulation (overwritten by key_sbc_coupled ) 
     37   LOGICAL , PUBLIC ::   ln_dm2dc       !: Daily mean to Diurnal Cycle short wave (qsr) 
    3838   LOGICAL , PUBLIC ::   ln_rnf      = .FALSE.   !: runoffs / runoff mouths 
    39    LOGICAL , PUBLIC ::   ln_ssr      = .FALSE.   !: Sea Surface restoring on SST and/or SSS       
    40    LOGICAL , PUBLIC ::   ln_apr_dyn  = .FALSE.   !: Atmospheric pressure forcing used on dynamics (ocean & ice) 
    41    LOGICAL , PUBLIC ::   ln_icebergs = .FALSE.   !: Icebergs 
    42    INTEGER , PUBLIC ::   nn_ice      = 0         !: flag for ice in the surface boundary condition (=0/1/2/3) 
    43    INTEGER , PUBLIC ::   nn_ice_embd = 0         !: flag for levitating/embedding sea-ice in the ocean 
     39   LOGICAL , PUBLIC ::   ln_ssr         !: Sea Surface restoring on SST and/or SSS       
     40   LOGICAL , PUBLIC ::   ln_apr_dyn     !: Atmospheric pressure forcing used on dynamics (ocean & ice) 
     41   INTEGER , PUBLIC ::   nn_ice         !: flag for ice in the surface boundary condition (=0/1/2/3) 
     42   INTEGER , PUBLIC ::   nn_ice_embd    !: flag for levitating/embedding sea-ice in the ocean 
    4443   !                                             !: =0 levitating ice (no mass exchange, concentration/dilution effect) 
    4544   !                                             !: =1 levitating ice with mass and salt exchange but no presure effect 
    4645   !                                             !: =2 embedded sea-ice (full salt and mass exchanges and pressure) 
    47    INTEGER , PUBLIC ::   nn_fwb      = 0         !: FreshWater Budget:  
     46   INTEGER , PUBLIC ::   nn_fwb         !: FreshWater Budget:  
    4847   !                                             !:  = 0 unchecked  
    4948   !                                             !:  = 1 global mean of e-p-r set to zero at each nn_fsbc time step 
    5049   !                                             !:  = 2 annual global mean of e-p-r set to zero 
    51    LOGICAL , PUBLIC ::   ln_wave     = .FALSE.   !: true if some coupling with wave model 
    52    LOGICAL , PUBLIC ::   ln_cdgw     = .FALSE.   !: true if neutral drag coefficient from wave model 
    53    LOGICAL , PUBLIC ::   ln_sdw      = .FALSE.   !: true if 3d stokes drift from wave model 
     50   LOGICAL , PUBLIC ::   ln_wave        !: true if some coupling with wave model 
     51   LOGICAL , PUBLIC ::   ln_cdgw        !: true if neutral drag coefficient from wave model 
     52   LOGICAL , PUBLIC ::   ln_sdw         !: true if 3d stokes drift from wave model 
     53   ! 
     54   LOGICAL , PUBLIC ::   ln_icebergs    !: Icebergs 
    5455 
    5556   !!---------------------------------------------------------------------- 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcana.F90

    r3875 r3901  
    2727   PUBLIC   sbc_gyre   ! routine called in sbcmod module 
    2828 
    29    !                                !!* Namelist namsbc_ana * 
    30    INTEGER  ::   nn_tau000 = 1      ! nb of time-step during which the surface stress 
    31    !                                 ! increase from 0 to its nominal value  
    32    REAL(wp) ::   rn_utau0  = 0._wp  ! constant wind stress value in i-direction 
    33    REAL(wp) ::   rn_vtau0  = 0._wp  ! constant wind stress value in j-direction 
    34    REAL(wp) ::   rn_qns0   = 0._wp  ! non solar heat flux 
    35    REAL(wp) ::   rn_qsr0   = 0._wp  !     solar heat flux 
    36    REAL(wp) ::   rn_emp0   = 0._wp  ! net freshwater flux 
     29   !                       !!* Namelist namsbc_ana * 
     30   INTEGER  ::   nn_tau000 ! nb of time-step during which the surface stress 
     31   !                        ! increase from 0 to its nominal value  
     32   REAL(wp) ::   rn_utau0  ! constant wind stress value in i-direction 
     33   REAL(wp) ::   rn_vtau0  ! constant wind stress value in j-direction 
     34   REAL(wp) ::   rn_qns0    ! non solar heat flux 
     35   REAL(wp) ::   rn_qsr0    !     solar heat flux 
     36   REAL(wp) ::   rn_emp0    ! net freshwater flux 
    3737    
    3838   !! * Substitutions 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcapr.F90

    r3875 r3901  
    2626   PUBLIC   sbc_apr    ! routine called in sbcmod 
    2727    
    28    !                                              !!* namsbc_apr namelist (Atmospheric PRessure) * 
    29    LOGICAL, PUBLIC ::   ln_apr_obc = .FALSE.      !: inverse barometer added to OBC ssh data  
    30    LOGICAL, PUBLIC ::   ln_ref_apr = .FALSE.      !: ref. pressure: global mean Patm (F) or a constant (F) 
    31    REAL(wp)        ::   rn_pref    = 101000._wp   !  reference atmospheric pressure   [N/m2] 
     28   !                                !!* namsbc_apr namelist (Atmospheric PRessure) * 
     29   LOGICAL, PUBLIC ::   ln_apr_obc   !: inverse barometer added to OBC ssh data  
     30   LOGICAL, PUBLIC ::   ln_ref_apr   !: ref. pressure: global mean Patm (F) or a constant (F) 
     31   REAL(wp)        ::   rn_pref      !  reference atmospheric pressure   [N/m2] 
    3232 
    3333   REAL(wp), ALLOCATABLE, SAVE, PUBLIC, DIMENSION(:,:) ::   ssh_ib    ! Inverse barometer now    sea surface height   [m] 
     
    7676      !                                         ! -------------------- ! 
    7777      IF( kt == nit000 ) THEN                   ! First call kt=nit000 ! 
    78          !                                      ! -------------------- ! 
    79          !                                            !* set file information (default values) 
    80          ! ... default values (NB: frequency positive => hours, negative => months) 
    81          !            !   file   ! frequency !  variable  ! time intep !  clim   ! 'yearly' or ! weights  ! rotation ! 
    82          !            !   name   !  (hours)  !   name     !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs    ! 
    83          sn_apr = FLD_N( 'patm'  ,    24     ,  'patm'    ,  .false.   , .true.  ,   'yearly'  , ''       , ''       ) 
    84          cn_dir  = './'          ! directory in which the Patm data are  
     78      !                                         ! -------------------- ! 
    8579 
    8680         REWIND( numnam_ref )              ! Namelist namsbc_apr in reference namelist : File for atmospheric pressure forcing 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_clio.F90

    r3875 r3901  
    140140      IF( kt == nit000 ) THEN                   !  First call kt=nit000  ! 
    141141         !                                      ! ====================== ! 
    142          ! set file information (default values) 
    143          cn_dir = './'       ! directory in which the model is executed 
    144  
    145          ! (NB: frequency positive => hours, negative => months) 
    146          !            !    file    ! frequency ! variable ! time intep !  clim   ! 'yearly' or ! weights  ! rotation ! 
    147          !            !    name    !  (hours)  !  name    !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs    ! 
    148          sn_utau = FLD_N( 'utau'   ,    24     , 'utau'   ,  .true.    , .false. ,   'yearly'  , ''       , ''       )  
    149          sn_vtau = FLD_N( 'vtau'   ,    24     , 'vtau'   ,  .true.    , .false. ,   'yearly'  , ''       , ''       )  
    150          sn_wndm = FLD_N( 'mwnd10m',    24     , 'm_10'   ,  .true.    , .false. ,   'yearly'  , ''       , ''       )  
    151          sn_tair = FLD_N( 'tair10m',    24     , 't_10'   ,  .false.   , .false. ,   'yearly'  , ''       , ''       )  
    152          sn_humi = FLD_N( 'humi10m',    24     , 'q_10'   ,  .false.   , .false. ,   'yearly'  , ''       , ''       )  
    153          sn_ccov = FLD_N( 'ccover' ,    -1     , 'cloud'  ,  .true.    , .false. ,   'yearly'  , ''       , ''       )  
    154          sn_prec = FLD_N( 'precip' ,    -1     , 'precip' ,  .true.    , .false. ,   'yearly'  , ''       , ''       )  
    155142 
    156143         REWIND( numnam_ref )              ! Namelist namsbc_clio in reference namelist : CLIO files 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_core.F90

    r3875 r3901  
    7373 
    7474   !                                  !!* Namelist namsbc_core : CORE bulk parameters 
    75    LOGICAL  ::   ln_2m     = .FALSE.   ! logical flag for height of air temp. and hum 
    76    LOGICAL  ::   ln_taudif = .FALSE.   ! logical flag to use the "mean of stress module - module of mean stress" data 
    77    REAL(wp) ::   rn_pfac   = 1.        ! multiplication factor for precipitation 
     75   LOGICAL  ::   ln_2m       ! logical flag for height of air temp. and hum 
     76   LOGICAL  ::   ln_taudif   ! logical flag to use the "mean of stress module - module of mean stress" data 
     77   REAL(wp) ::   rn_pfac     ! multiplication factor for precipitation 
    7878 
    7979   !! * Substitutions 
     
    136136      IF( kt == nit000 ) THEN                   !  First call kt=nit000  ! 
    137137         !                                      ! ====================== ! 
    138          ! set file information (default values) 
    139          cn_dir = './'       ! directory in which the model is executed 
    140138         ! 
    141          ! (NB: frequency positive => hours, negative => months) 
    142          !            !    file    ! frequency ! variable ! time intep !  clim   ! 'yearly' or ! weights  ! rotation ! 
    143          !            !    name    !  (hours)  !  name    !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs    ! 
    144          sn_wndi = FLD_N( 'uwnd10m',    24     , 'u_10'   ,  .false.   , .false. ,   'yearly'  , ''       , ''       ) 
    145          sn_wndj = FLD_N( 'vwnd10m',    24     , 'v_10'   ,  .false.   , .false. ,   'yearly'  , ''       , ''       ) 
    146          sn_qsr  = FLD_N( 'qsw'    ,    24     , 'qsw'    ,  .false.   , .false. ,   'yearly'  , ''       , ''       ) 
    147          sn_qlw  = FLD_N( 'qlw'    ,    24     , 'qlw'    ,  .false.   , .false. ,   'yearly'  , ''       , ''       ) 
    148          sn_tair = FLD_N( 'tair10m',    24     , 't_10'   ,  .false.   , .false. ,   'yearly'  , ''       , ''       ) 
    149          sn_humi = FLD_N( 'humi10m',    24     , 'q_10'   ,  .false.   , .false. ,   'yearly'  , ''       , ''       ) 
    150          sn_prec = FLD_N( 'precip' ,    -1     , 'precip' ,  .true.    , .false. ,   'yearly'  , ''       , ''       ) 
    151          sn_snow = FLD_N( 'snow'   ,    -1     , 'snow'   ,  .true.    , .false. ,   'yearly'  , ''       , ''       ) 
    152          sn_tdif = FLD_N( 'taudif' ,    24     , 'taudif' ,  .true.    , .false. ,   'yearly'  , ''       , ''       ) 
    153          ! 
    154  
    155139         REWIND( numnam_ref )              ! Namelist namsbc_core in reference namelist : CORE bulk parameters 
    156140         READ  ( numnam_ref, namsbc_core, IOSTAT = ios, ERR = 901) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_mfs.F90

    r3875 r3901  
    128128      IF( kt == nit000 ) THEN                   !  First call kt=nit000  ! 
    129129         !                                      ! ====================== ! 
    130       ALLOCATE( sh_now(jpi,jpj), catm(jpi,jpj), alonl(jpi,jpj), alatl(jpi,jpj),     & 
     130         ALLOCATE( sh_now(jpi,jpj), catm(jpi,jpj), alonl(jpi,jpj), alatl(jpi,jpj),     & 
    131131         &        gsst(jpi,jpj),  qbw(jpi,jpj),    ha(jpi,jpj),  elat(jpi,jpj),     & 
    132132         &        evap(jpi,jpj), STAT=ierror ) 
    133133 
    134134         IF( ierror /= 0 )   CALL ctl_warn('sbc_blk_mfs: failed to allocate arrays') 
     135 
     136         REWIND( numnam_ref )              ! Namelist namsbc_msf in reference namelist : MFS files 
     137         READ  ( numnam_ref, namsbc_mfs, IOSTAT = ios, ERR = 901) 
     138901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_mfs in reference namelist', lwp ) 
     139 
     140         REWIND( numnam_cfg )              ! Namelist namsbc_msf in configuration namelist : MFS files 
     141         READ  ( numnam_cfg, namsbc_mfs, IOSTAT = ios, ERR = 902 ) 
     142902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_mfs in configuration namelist', lwp ) 
     143         WRITE ( numond, namsbc_mfs ) 
     144         ! 
     145         ! store namelist information in an array 
     146         slf_i(jp_wndi) = sn_wndi   ;   slf_i(jp_wndj) = sn_wndj 
     147         slf_i(jp_clc ) = sn_clc    ;   slf_i(jp_msl ) = sn_msl 
     148         slf_i(jp_tair) = sn_tair   ;   slf_i(jp_rhm)  = sn_rhm 
     149         slf_i(jp_prec) = sn_prec   ;   
     150         ! 
     151         ALLOCATE( sf(jpfld), STAT=ierror )         ! set sf structure 
     152         IF( ierror > 0 ) THEN 
     153            CALL ctl_stop( 'sbc_blk_mfs: unable to allocate sf structure' )   ;   RETURN 
     154         ENDIF 
     155         DO ifpr= 1, jpfld 
     156            ALLOCATE( sf(ifpr)%fnow(jpi,jpj,1) ) 
     157            IF( slf_i(ifpr)%ln_tint ) ALLOCATE( sf(ifpr)%fdta(jpi,jpj,1,2) ) 
     158         END DO 
     159         ! fill sf with slf_i and control print 
     160         CALL fld_fill( sf, slf_i, cn_dir,'sbc_blk_mfs','bulk formulation for ocean SBC', 'namsbc_mfs' ) 
    135161            ! 
    136             ! set file information (default values) 
    137             cn_dir = './'       ! directory in which the model is executed 
    138             ! 
    139             ! (NB: frequency positive => hours, negative => months) 
    140             !            !    file     ! frequency !  variable  ! time intep !  clim   ! 'yearly' or ! weights  ! rotation   ! 
    141             !            !    name     !  (hours)  !   name     !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs      ! 
    142             sn_wndi = FLD_N( 'ecmwf'   ,    24     ,  'u10'     ,  .false.   , .false. ,   'daily'   , ''       , ''         ) 
    143             sn_wndj = FLD_N( 'ecmwf'   ,    24     ,  'v10'     ,  .false.   , .false. ,   'daily'   , ''       , ''         ) 
    144             sn_clc  = FLD_N( 'ecmwf'   ,    24     ,  'clc'     ,  .false.   , .false. ,   'daily'   , ''       , ''         ) 
    145             sn_msl  = FLD_N( 'ecmwf'   ,    24     ,  'msl'     ,  .false.   , .false. ,   'daily'   , ''       , ''         ) 
    146             sn_tair = FLD_N( 'ecmwf'   ,    24     ,  't2'      ,  .false.   , .false. ,   'daily'   , ''       , ''         ) 
    147             sn_rhm  = FLD_N( 'ecmwf'   ,    24     ,  'rh'      ,  .false.   , .false. ,   'daily'   , ''       , ''         ) 
    148             sn_prec = FLD_N( 'precip_cmap' ,  -1   ,  'precip'  ,  .true.    ,  .true. ,   'yearly'  , ''       , ''         ) 
    149             ! 
    150  
    151             REWIND( numnam_ref )              ! Namelist namsbc_msf in reference namelist : MFS files 
    152             READ  ( numnam_ref, namsbc_mfs, IOSTAT = ios, ERR = 901) 
    153 901         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_mfs in reference namelist', lwp ) 
    154  
    155             REWIND( numnam_cfg )              ! Namelist namsbc_msf in configuration namelist : MFS files 
    156             READ  ( numnam_cfg, namsbc_mfs, IOSTAT = ios, ERR = 902 ) 
    157 902         IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc_mfs in configuration namelist', lwp ) 
    158             WRITE ( numond, namsbc_mfs ) 
    159             ! 
    160             ! store namelist information in an array 
    161             slf_i(jp_wndi) = sn_wndi   ;   slf_i(jp_wndj) = sn_wndj 
    162             slf_i(jp_clc ) = sn_clc    ;   slf_i(jp_msl ) = sn_msl 
    163             slf_i(jp_tair) = sn_tair   ;   slf_i(jp_rhm)  = sn_rhm 
    164             slf_i(jp_prec) = sn_prec   ;   
    165             ! 
    166             ALLOCATE( sf(jpfld), STAT=ierror )         ! set sf structure 
    167             IF( ierror > 0 ) THEN 
    168                CALL ctl_stop( 'sbc_blk_mfs: unable to allocate sf structure' )   ;   RETURN 
    169             ENDIF 
    170             DO ifpr= 1, jpfld 
    171                ALLOCATE( sf(ifpr)%fnow(jpi,jpj,1) ) 
    172                IF( slf_i(ifpr)%ln_tint ) ALLOCATE( sf(ifpr)%fdta(jpi,jpj,1,2) ) 
    173             END DO 
    174             ! fill sf with slf_i and control print 
    175             CALL fld_fill( sf, slf_i, cn_dir,'sbc_blk_mfs','bulk formulation for ocean SBC', 'namsbc_mfs' ) 
    176             ! 
    177          ENDIF 
     162      ENDIF 
    178163 
    179164         CALL fld_read( kt, nn_fsbc, sf )                   ! input fields provided at the current time-step 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90

    r3875 r3901  
    237237      ! ================================ ! 
    238238 
    239       ! default definitions 
    240       !                    !     description       !  multiple  !    vector   !      vector          ! vector ! 
    241       !                    !                       ! categories !  reference  !    orientation       ! grids  ! 
    242       ! send 
    243       sn_snd_temp   = FLD_C( 'weighted oce and ice',    'no'    ,     ''      ,         ''           ,   ''   )  
    244       sn_snd_alb    = FLD_C( 'weighted ice'        ,    'no'    ,     ''      ,         ''           ,   ''   )  
    245       sn_snd_thick  = FLD_C( 'none'                ,    'no'    ,     ''      ,         ''           ,   ''   )  
    246       sn_snd_crt    = FLD_C( 'none'                ,    'no'    , 'spherical' , 'eastward-northward' ,  'T'   )      
    247       sn_snd_co2    = FLD_C( 'none'                ,    'no'    ,     ''      ,         ''           ,   ''   )      
    248       ! receive 
    249       sn_rcv_w10m   = FLD_C( 'none'                ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    250       sn_rcv_taumod = FLD_C( 'coupled'             ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    251       sn_rcv_tau    = FLD_C( 'oce only'            ,    'no'    , 'cartesian' , 'eastward-northward',  'U,V'  )   
    252       sn_rcv_dqnsdt = FLD_C( 'coupled'             ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    253       sn_rcv_qsr    = FLD_C( 'oce and ice'         ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    254       sn_rcv_qns    = FLD_C( 'oce and ice'         ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    255       sn_rcv_emp    = FLD_C( 'conservative'        ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    256       sn_rcv_rnf    = FLD_C( 'coupled'             ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    257       sn_rcv_cal    = FLD_C( 'coupled'             ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    258       sn_rcv_iceflx = FLD_C( 'none'                ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    259       sn_rcv_co2    = FLD_C( 'none'                ,    'no'    ,     ''      ,         ''          ,   ''    ) 
    260  
    261239      REWIND( numnam_ref )              ! Namelist namsbc_cpl in reference namelist : Variables for OASIS coupling 
    262240      READ  ( numnam_ref, namsbc_cpl, IOSTAT = ios, ERR = 901) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcflx.F90

    r3875 r3901  
    9191      IF( kt == nit000 ) THEN                ! First call kt=nit000   
    9292         ! set file information 
    93          cn_dir = './'        ! directory in which the model is executed 
    94          ! ... default values (NB: frequency positive => hours, negative => months) 
    95          !              !  file   ! frequency !  variable  ! time intep !  clim   ! 'yearly' or ! weights  ! rotation  ! 
    96          !              !  name   !  (hours)  !   name     !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs     ! 
    97          sn_utau = FLD_N(  'utau' ,    24     ,  'utau'    ,  .false.   , .false. ,   'yearly'  , ''       , ''        ) 
    98          sn_vtau = FLD_N(  'vtau' ,    24     ,  'vtau'    ,  .false.   , .false. ,   'yearly'  , ''       , ''        ) 
    99          sn_qtot = FLD_N(  'qtot' ,    24     ,  'qtot'    ,  .false.   , .false. ,   'yearly'  , ''       , ''        ) 
    100          sn_qsr  = FLD_N(  'qsr'  ,    24     ,  'qsr'     ,  .false.   , .false. ,   'yearly'  , ''       , ''        ) 
    101          sn_emp  = FLD_N(  'emp'  ,    24     ,  'emp'     ,  .false.   , .false. ,   'yearly'  , ''       , ''        ) 
    102          ! 
    10393         REWIND( numnam_ref )              ! Namelist namsbc_flx in reference namelist : Files for fluxes 
    10494         READ  ( numnam_ref, namsbc_flx, IOSTAT = ios, ERR = 901) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_if.F90

    r3875 r3901  
    7171         !                                      ! ====================== ! 
    7272         ! set file information 
    73          cn_dir = './'        ! directory in which the model is executed 
    74          ! ... default values (NB: frequency positive => hours, negative => months) 
    75          !             !   file    ! frequency !  variable  ! time intep !  clim  ! 'yearly' or ! weights  ! rotation   ! 
    76          !             !   name    !  (hours)  !   name     !   (T/F)    !  (T/F) !  'monthly'  ! filename ! pairs      !  
    77          sn_ice = FLD_N('ice_cover',    -1    ,  'ice_cov' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    78  
    7973         REWIND( numnam_ref )              ! Namelist namsbc_iif in reference namelist : Ice if file 
    8074         READ  ( numnam_ref, namsbc_iif, IOSTAT = ios, ERR = 901) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcrnf.F90

    r3875 r3901  
    3333   PUBLIC   sbc_rnf_init  ! (PUBLIC for TAM) 
    3434   !                                                     !!* namsbc_rnf namelist * 
    35    CHARACTER(len=100), PUBLIC ::   cn_dir       = './'    !: Root directory for location of ssr files 
    36    LOGICAL           , PUBLIC ::   ln_rnf_depth = .false. !: depth       river runoffs attribute specified in a file 
    37    LOGICAL           , PUBLIC ::   ln_rnf_tem   = .false. !: temperature river runoffs attribute specified in a file 
    38    LOGICAL           , PUBLIC ::   ln_rnf_sal   = .false. !: salinity    river runoffs attribute specified in a file 
    39    LOGICAL           , PUBLIC ::   ln_rnf_emp   = .false. !: runoffs into a file to be read or already into precipitation 
    40    TYPE(FLD_N)       , PUBLIC ::   sn_rnf                 !: information about the runoff file to be read 
    41    TYPE(FLD_N)       , PUBLIC ::   sn_cnf                 !: information about the runoff mouth file to be read 
    42    TYPE(FLD_N)                ::   sn_s_rnf               !: information about the salinities of runoff file to be read 
    43    TYPE(FLD_N)                ::   sn_t_rnf               !: information about the temperatures of runoff file to be read 
    44    TYPE(FLD_N)                ::   sn_dep_rnf             !: information about the depth which river inflow affects 
    45    LOGICAL           , PUBLIC ::   ln_rnf_mouth = .false. !: specific treatment in mouths vicinity 
    46    REAL(wp)          , PUBLIC ::   rn_hrnf      = 0._wp   !: runoffs, depth over which enhanced vertical mixing is used 
    47    REAL(wp)          , PUBLIC ::   rn_avt_rnf   = 0._wp   !: runoffs, value of the additional vertical mixing coef. [m2/s] 
    48    REAL(wp)          , PUBLIC ::   rn_rfact     = 1._wp   !: multiplicative factor for runoff 
     35   CHARACTER(len=100), PUBLIC ::   cn_dir          !: Root directory for location of ssr files 
     36   LOGICAL           , PUBLIC ::   ln_rnf_depth   !: depth       river runoffs attribute specified in a file 
     37   LOGICAL           , PUBLIC ::   ln_rnf_tem     !: temperature river runoffs attribute specified in a file 
     38   LOGICAL           , PUBLIC ::   ln_rnf_sal     !: salinity    river runoffs attribute specified in a file 
     39   LOGICAL           , PUBLIC ::   ln_rnf_emp     !: runoffs into a file to be read or already into precipitation 
     40   TYPE(FLD_N)       , PUBLIC ::   sn_rnf          !: information about the runoff file to be read 
     41   TYPE(FLD_N)       , PUBLIC ::   sn_cnf          !: information about the runoff mouth file to be read 
     42   TYPE(FLD_N)                ::   sn_s_rnf        !: information about the salinities of runoff file to be read 
     43   TYPE(FLD_N)                ::   sn_t_rnf        !: information about the temperatures of runoff file to be read 
     44   TYPE(FLD_N)                ::   sn_dep_rnf      !: information about the depth which river inflow affects 
     45   LOGICAL           , PUBLIC ::   ln_rnf_mouth   !: specific treatment in mouths vicinity 
     46   REAL(wp)          , PUBLIC ::   rn_hrnf         !: runoffs, depth over which enhanced vertical mixing is used 
     47   REAL(wp)          , PUBLIC ::   rn_avt_rnf      !: runoffs, value of the additional vertical mixing coef. [m2/s] 
     48   REAL(wp)          , PUBLIC ::   rn_rfact        !: multiplicative factor for runoff 
    4949 
    5050   INTEGER , PUBLIC  ::   nkrnf = 0         !: nb of levels over which Kz is increased at river mouths 
     
    255255      !                                   !   Namelist 
    256256      !                                   ! ============ 
    257       ! (NB: frequency positive => hours, negative => months) 
    258       !            !   file    ! frequency !  variable  ! time intep !  clim  ! 'yearly' or ! weights  ! rotation   ! 
    259       !            !   name    !  (hours)  !   name     !   (T/F)    !  (T/F) !  'monthly'  ! filename ! pairs      ! 
    260       sn_rnf = FLD_N( 'runoffs',    -1     , 'sorunoff' ,  .TRUE.    , .true. ,   'yearly'  , ''       , ''         ) 
    261       sn_cnf = FLD_N( 'runoffs',     0     , 'sorunoff' ,  .FALSE.   , .true. ,   'yearly'  , ''       , ''         ) 
    262  
    263       sn_s_rnf = FLD_N( 'runoffs',  24.  , 'rosaline' ,  .TRUE.    , .true. ,   'yearly'  , ''    , ''  ) 
    264       sn_t_rnf = FLD_N( 'runoffs',  24.  , 'rotemper' ,  .TRUE.    , .true. ,   'yearly'  , ''    , ''  ) 
    265       sn_dep_rnf = FLD_N( 'runoffs',   0.  , 'rodepth'  ,  .FALSE.   , .true. ,   'yearly'  , ''    , ''  ) 
    266257      ! 
    267258      REWIND( numnam_ref )              ! Namelist namsbc_rnf in reference namelist : Runoffs  
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssr.F90

    r3875 r3901  
    3333   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) ::   qrp   !: heat flux damping        [w/m2] 
    3434 
    35    !                                           !!* Namelist namsbc_ssr * 
    36    INTEGER, PUBLIC ::   nn_sstr     =   0       ! SST/SSS restoring indicator 
    37    INTEGER, PUBLIC ::   nn_sssr     =   0       ! SST/SSS restoring indicator 
    38    REAL(wp)        ::   rn_dqdt     = -40.e0    ! restoring factor on SST and SSS 
    39    REAL(wp)        ::   rn_deds     = -27.70    ! restoring factor on SST and SSS 
    40    LOGICAL         ::   ln_sssr_bnd = .false.   ! flag to bound erp term  
    41    REAL(wp)        ::   rn_sssr_bnd =   0.e0    ! ABS(Max./Min.) value of erp term [mm/day] 
     35   !                                   !!* Namelist namsbc_ssr * 
     36   INTEGER, PUBLIC ::   nn_sstr         ! SST/SSS restoring indicator 
     37   INTEGER, PUBLIC ::   nn_sssr         ! SST/SSS restoring indicator 
     38   REAL(wp)        ::   rn_dqdt         ! restoring factor on SST and SSS 
     39   REAL(wp)        ::   rn_deds         ! restoring factor on SST and SSS 
     40   LOGICAL         ::   ln_sssr_bnd     ! flag to bound erp term  
     41   REAL(wp)        ::   rn_sssr_bnd     ! ABS(Max./Min.) value of erp term [mm/day] 
    4242 
    4343   REAL(wp) , ALLOCATABLE, DIMENSION(:) ::   buffer   ! Temporary buffer for exchange 
     
    166166      !!---------------------------------------------------------------------- 
    167167      ! 
    168       !                            !* set file information 
    169       cn_dir  = './'            ! directory in which the model is executed 
    170       ! ... default values (NB: frequency positive => hours, negative => months) 
    171       !            !   file    ! frequency !  variable  ! time intep !  clim   ! 'yearly' or ! weights  ! rotation   ! 
    172       !            !   name    !  (hours)  !   name     !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs      ! 
    173       sn_sst = FLD_N( 'sst'    ,    24     ,  'sst'     ,  .false.   , .false. ,   'yearly'  , ''       , ''         ) 
    174       sn_sss = FLD_N( 'sss'    ,    -1     ,  'sss'     ,  .true.    , .false. ,   'yearly'  , ''       , ''         ) 
    175168  
    176169      REWIND( numnam_ref )              ! Namelist namsbc_ssr in reference namelist :  
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/sbcwave.F90

    r3875 r3901  
    8383      IF( kt == nit000 ) THEN                   ! First call kt=nit000 ! 
    8484         !                                      ! -------------------- ! 
    85          !                                            !* set file information (default values) 
    86          ! ... default values (NB: frequency positive => hours, negative => months) 
    87          !              !   file   ! frequency !  variable  ! time intep !  clim   ! 'yearly' or ! weights  ! rotation ! 
    88          !              !   name   !  (hours)  !   name     !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs    ! 
    89          sn_cdg = FLD_N('cdg_wave'  ,    1     ,'drag_coeff',  .true.    , .false. ,   'daily'   , ''       , ''       ) 
    90          sn_usd = FLD_N('sdw_wave'  ,    1     ,'u_sd2d',      .true.    , .false. ,   'daily'   , ''       , ''       ) 
    91          sn_vsd = FLD_N('sdw_wave'  ,    1     ,'v_sd2d',      .true.    , .false. ,   'daily'   , ''       , ''       ) 
    92          sn_wn = FLD_N( 'sdw_wave'  ,    1     ,'wave_num',    .true.    , .false. ,   'daily'   , ''       , ''       ) 
    93          cn_dir = './'          ! directory in which the wave data are  
    9485          
    9586         REWIND( numnam_ref )              ! Namelist namsbc_wave in reference namelist : File for drag coeff. from wave model 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SBC/tideini.F90

    r3875 r3901  
    2626       ftide 
    2727 
    28   LOGICAL, PUBLIC :: ln_tide_pot = .false., ln_tide_ramp = .false. 
     28  LOGICAL, PUBLIC :: ln_tide_pot , ln_tide_ramp  
    2929  REAL(wp), PUBLIC :: rdttideramp  
    3030  INTEGER, PUBLIC :: nb_harmo 
     
    6060       ! 
    6161       CALL tide_init_Wave 
    62        ! 
    63        clname(:)='' 
    6462       ! 
    6563       ! Read Namelist nam_tide 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/SOL/sol_oce.F90

    r2715 r3901  
    2020   PUBLIC   sol_oce_alloc   ! routine called in solver.F90 
    2121 
    22    !                                             !!* Namelist namsol : elliptic solver * 
    23    INTEGER , PUBLIC ::   nn_solv    =    1        !: = 1/2 type of elliptic solver 
    24    INTEGER , PUBLIC ::   nn_sol_arp =    0        !: = 0/1 absolute/relative precision convergence test 
    25    INTEGER , PUBLIC ::   nn_nmin    =  300        !: minimum of iterations for the SOR solver 
    26    INTEGER , PUBLIC ::   nn_nmax    =  800        !: maximum of iterations for the SOR solver 
    27    INTEGER , PUBLIC ::   nn_nmod    =   10        !: frequency of test for the SOR solver 
    28    REAL(wp), PUBLIC ::   rn_eps     =  1.e-6_wp   !: absolute precision of the solver 
    29    REAL(wp), PUBLIC ::   rn_resmax  = 1.e-14_wp   !: absolute precision for the SOR solver 
    30    REAL(wp), PUBLIC ::   rn_sor     =   1.92_wp   !: optimal coefficient for the SOR solver 
    31    REAL(wp), PUBLIC ::   rn_nu      =    1.0_wp   !: strength of the additional force used in free surface 
     22   !                                 !!* Namelist namsol : elliptic solver * 
     23   INTEGER , PUBLIC ::   nn_solv      !: = 1/2 type of elliptic solver 
     24   INTEGER , PUBLIC ::   nn_sol_arp   !: = 0/1 absolute/relative precision convergence test 
     25   INTEGER , PUBLIC ::   nn_nmin      !: minimum of iterations for the SOR solver 
     26   INTEGER , PUBLIC ::   nn_nmax      !: maximum of iterations for the SOR solver 
     27   INTEGER , PUBLIC ::   nn_nmod      !: frequency of test for the SOR solver 
     28   REAL(wp), PUBLIC ::   rn_eps       !: absolute precision of the solver 
     29   REAL(wp), PUBLIC ::   rn_resmax    !: absolute precision for the SOR solver 
     30   REAL(wp), PUBLIC ::   rn_sor       !: optimal coefficient for the SOR solver 
     31   REAL(wp), PUBLIC ::   rn_nu        !: strength of the additional force used in free surface 
    3232 
    3333   CHARACTER(len=1), PUBLIC ::   c_solver_pt = 'T'   !: nature of grid-points T (S) for free surface case 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/TRA/eosbn2.F90

    r3875 r3901  
    5757   PUBLIC   tfreez     ! called by sbcice_... modules 
    5858 
    59    !                                          !!* Namelist (nameos) * 
    60    INTEGER , PUBLIC ::   nn_eos   = 0         !: = 0/1/2 type of eq. of state and Brunt-Vaisala frequ. 
    61    REAL(wp), PUBLIC ::   rn_alpha = 2.0e-4_wp !: thermal expension coeff. (linear equation of state) 
    62    REAL(wp), PUBLIC ::   rn_beta  = 7.7e-4_wp !: saline  expension coeff. (linear equation of state) 
     59   !                                  !!* Namelist (nameos) * 
     60   INTEGER , PUBLIC ::   nn_eos       !: = 0/1/2 type of eq. of state and Brunt-Vaisala frequ. 
     61   REAL(wp), PUBLIC ::   rn_alpha     !: thermal expension coeff. (linear equation of state) 
     62   REAL(wp), PUBLIC ::   rn_beta      !: saline  expension coeff. (linear equation of state) 
    6363 
    6464   REAL(wp), PUBLIC ::   ralpbet              !: alpha / beta ratio 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90

    r3875 r3901  
    3737   PUBLIC   tra_adv_init   ! routine called by opa module 
    3838 
    39    !                                        !!* Namelist namtra_adv * 
    40    LOGICAL ::   ln_traadv_cen2   = .TRUE.    ! 2nd order centered scheme flag 
    41    LOGICAL ::   ln_traadv_tvd    = .FALSE.   ! TVD scheme flag 
    42    LOGICAL ::   ln_traadv_muscl  = .FALSE.   ! MUSCL scheme flag 
    43    LOGICAL ::   ln_traadv_muscl2 = .FALSE.   ! MUSCL2 scheme flag 
    44    LOGICAL ::   ln_traadv_ubs    = .FALSE.   ! UBS scheme flag 
    45    LOGICAL ::   ln_traadv_qck    = .FALSE.   ! QUICKEST scheme flag 
    46    LOGICAL ::   ln_traadv_msc_ups= .FALSE.   ! use upstream scheme within muscl 
     39   !                              !!* Namelist namtra_adv * 
     40   LOGICAL ::   ln_traadv_cen2     ! 2nd order centered scheme flag 
     41   LOGICAL ::   ln_traadv_tvd      ! TVD scheme flag 
     42   LOGICAL ::   ln_traadv_muscl    ! MUSCL scheme flag 
     43   LOGICAL ::   ln_traadv_muscl2   ! MUSCL2 scheme flag 
     44   LOGICAL ::   ln_traadv_ubs      ! UBS scheme flag 
     45   LOGICAL ::   ln_traadv_qck      ! QUICKEST scheme flag 
     46   LOGICAL ::   ln_traadv_msc_ups  ! use upstream scheme within muscl 
    4747 
    4848 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/TRA/trabbc.F90

    r3875 r3901  
    3131   PUBLIC tra_bbc_init     ! routine called by opa.F90 
    3232 
    33    !                                                !!* Namelist nambbc: bottom boundary condition * 
    34    LOGICAL, PUBLIC ::   ln_trabbc     = .FALSE.      !: Geothermal heat flux flag 
    35    INTEGER         ::   nn_geoflx     = 1            !  Geothermal flux (=1:constant flux, =2:read in file ) 
    36    REAL(wp)        ::   rn_geoflx_cst = 86.4e-3_wp   !  Constant value of geothermal heat flux 
     33   !                                 !!* Namelist nambbc: bottom boundary condition * 
     34   LOGICAL, PUBLIC ::   ln_trabbc     !: Geothermal heat flux flag 
     35   INTEGER         ::   nn_geoflx     !  Geothermal flux (=1:constant flux, =2:read in file ) 
     36   REAL(wp)        ::   rn_geoflx_cst !  Constant value of geothermal heat flux 
    3737 
    3838   REAL(wp), PUBLIC, DIMENSION(:,:), ALLOCATABLE ::   qgh_trd0   ! geothermal heating trend 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/TRA/trabbl.F90

    r3875 r3901  
    4949   LOGICAL, PUBLIC, PARAMETER ::   lk_trabbl = .TRUE.    !: bottom boundary layer flag 
    5050 
    51    !                                           !!* Namelist nambbl * 
    52    INTEGER , PUBLIC ::   nn_bbl_ldf = 0        !: =1   : diffusive bbl or not (=0) 
    53    INTEGER , PUBLIC ::   nn_bbl_adv = 0        !: =1/2 : advective bbl or not (=0) 
     51   !                                !!* Namelist nambbl * 
     52   INTEGER , PUBLIC ::   nn_bbl_ldf !: =1   : diffusive bbl or not (=0) 
     53   INTEGER , PUBLIC ::   nn_bbl_adv !: =1/2 : advective bbl or not (=0) 
    5454   !                                            !  =1 : advective bbl using the bottom ocean velocity 
    5555   !                                            !  =2 :     -      -  using utr_bbl proportional to grad(rho) 
    56    REAL(wp), PUBLIC ::   rn_ahtbbl  = 1.e3_wp  !: along slope bbl diffusive coefficient [m2/s] 
    57    REAL(wp), PUBLIC ::   rn_gambbl  = 10.0_wp  !: lateral coeff. for bottom boundary layer scheme [s] 
     56   REAL(wp), PUBLIC ::   rn_ahtbbl  !: along slope bbl diffusive coefficient [m2/s] 
     57   REAL(wp), PUBLIC ::   rn_gambbl  !: lateral coeff. for bottom boundary layer scheme [s] 
    5858 
    5959   LOGICAL , PUBLIC ::   l_bbl                  !: flag to compute bbl diffu. flux coef and transport 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/TRA/tradmp.F90

    r3875 r3901  
    4747   PUBLIC   dtacof_zoom  ! routine called by in both tradmp.F90 and trcdmp.F90 
    4848 
    49    !                                !!* Namelist namtra_dmp : T & S newtonian damping * 
    50    LOGICAL, PUBLIC ::   ln_tradmp = .TRUE.    !: internal damping flag 
    51    INTEGER         ::   nn_hdmp   =   -1      ! = 0/-1/'latitude' for damping over T and S 
    52    INTEGER         ::   nn_zdmp   =    0      ! = 0/1/2 flag for damping in the mixed layer 
    53    REAL(wp)        ::   rn_surf   =   50._wp  ! surface time scale for internal damping        [days] 
    54    REAL(wp)        ::   rn_bot    =  360._wp  ! bottom time scale for internal damping         [days] 
    55    REAL(wp)        ::   rn_dep    =  800._wp  ! depth of transition between rn_surf and rn_bot [meters] 
    56    INTEGER         ::   nn_file   =    2      ! = 1 create a damping.coeff NetCDF file  
     49   !                               !!* Namelist namtra_dmp : T & S newtonian damping * 
     50   LOGICAL, PUBLIC ::   ln_tradmp  = .TRUE.   !: internal damping flag 
     51   INTEGER         ::   nn_hdmp     ! = 0/-1/'latitude' for damping over T and S 
     52   INTEGER         ::   nn_zdmp     ! = 0/1/2 flag for damping in the mixed layer 
     53   REAL(wp)        ::   rn_surf     ! surface time scale for internal damping        [days] 
     54   REAL(wp)        ::   rn_bot      ! bottom time scale for internal damping         [days] 
     55   REAL(wp)        ::   rn_dep      ! depth of transition between rn_surf and rn_bot [meters] 
     56   INTEGER         ::   nn_file     ! = 1 create a damping.coeff NetCDF file  
    5757 
    5858   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   strdmp   !: damping salinity trend (psu/s) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/TRA/traqsr.F90

    r3875 r3901  
    3838   PUBLIC   tra_qsr_init  ! routine called by opa.F90 
    3939 
    40    !                                           !!* Namelist namtra_qsr: penetrative solar radiation 
    41    LOGICAL , PUBLIC ::   ln_traqsr  = .TRUE.    !: light absorption (qsr) flag 
    42    LOGICAL , PUBLIC ::   ln_qsr_rgb = .FALSE.   !: Red-Green-Blue light absorption flag   
    43    LOGICAL , PUBLIC ::   ln_qsr_2bd = .TRUE.    !: 2 band         light absorption flag 
    44    LOGICAL , PUBLIC ::   ln_qsr_bio = .FALSE.   !: bio-model      light absorption flag 
    45    INTEGER , PUBLIC ::   nn_chldta  = 0         !: use Chlorophyll data (=1) or not (=0) 
    46    REAL(wp), PUBLIC ::   rn_abs     = 0.58_wp   !: fraction absorbed in the very near surface (RGB & 2 bands) 
    47    REAL(wp), PUBLIC ::   rn_si0     = 0.35_wp   !: very near surface depth of extinction      (RGB & 2 bands) 
    48    REAL(wp), PUBLIC ::   rn_si1     = 23.0_wp   !: deepest depth of extinction (water type I)       (2 bands) 
     40   !                                 !!* Namelist namtra_qsr: penetrative solar radiation 
     41   LOGICAL , PUBLIC ::   ln_traqsr    !: light absorption (qsr) flag 
     42   LOGICAL , PUBLIC ::   ln_qsr_rgb   !: Red-Green-Blue light absorption flag   
     43   LOGICAL , PUBLIC ::   ln_qsr_2bd   !: 2 band         light absorption flag 
     44   LOGICAL , PUBLIC ::   ln_qsr_bio   !: bio-model      light absorption flag 
     45   INTEGER , PUBLIC ::   nn_chldta    !: use Chlorophyll data (=1) or not (=0) 
     46   REAL(wp), PUBLIC ::   rn_abs       !: fraction absorbed in the very near surface (RGB & 2 bands) 
     47   REAL(wp), PUBLIC ::   rn_si0       !: very near surface depth of extinction      (RGB & 2 bands) 
     48   REAL(wp), PUBLIC ::   rn_si1       !: deepest depth of extinction (water type I)       (2 bands) 
    4949    
    5050   ! Module variables 
     
    335335      CALL wrk_alloc( jpi, jpj,      zekb, zekg, zekr        )  
    336336      CALL wrk_alloc( jpi, jpj, jpk, ze0, ze1, ze2, ze3, zea )  
    337       ! 
    338  
    339       cn_dir = './'       ! directory in which the model is executed 
    340       ! ... default values (NB: frequency positive => hours, negative => months) 
    341       !            !     file       ! frequency !  variable  ! time interp !  clim   ! 'yearly' or ! weights  ! rotation   ! 
    342       !            !     name       !  (hours)  !    name    !    (T/F)    !  (T/F)  ! 'monthly'   ! filename ! pairs      ! 
    343       sn_chl = FLD_N( 'chlorophyll' ,    -1     ,  'CHLA'    ,  .true.     , .true.  ,   'yearly'  , ''       , ''         ) 
    344337      ! 
    345338 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/TRD/trdmod_oce.F90

    r2715 r3901  
    1313   PUBLIC 
    1414 
    15    !                                                     !!* Namelist namtrd:  diagnostics on dynamics/tracer trends * 
    16    INTEGER , PUBLIC  ::   nn_trd  = 10                    !: time step frequency dynamics and tracers trends 
    17    INTEGER , PUBLIC  ::   nn_ctls =  0                    !: control surface type for trends vertical integration 
    18    REAL(wp), PUBLIC  ::   rn_ucf   = 1.                   !: unit conversion factor (for netCDF trends outputs) 
    19                                                           !: =1. (=86400.) for degC/s (degC/day) and psu/s (psu/day) 
    20    CHARACTER(len=32) ::   cn_trdrst_in  = "restart_mld"   !: suffix of ocean restart name (input) 
    21    CHARACTER(len=32) ::   cn_trdrst_out = "restart_mld"   !: suffix of ocean restart name (output) 
    22    LOGICAL , PUBLIC  ::   ln_trdmld_instant = .FALSE.    !: flag to diagnose inst./mean ML T/S trends 
    23    LOGICAL , PUBLIC  ::   ln_trdmld_restart = .FALSE.    !: flag to restart mixed-layer diagnostics 
     15   !                                        !!* Namelist namtrd:  diagnostics on dynamics/tracer trends * 
     16   INTEGER , PUBLIC  ::   nn_trd             !: time step frequency dynamics and tracers trends 
     17   INTEGER , PUBLIC  ::   nn_ctls            !: control surface type for trends vertical integration 
     18   REAL(wp), PUBLIC  ::   rn_ucf             !: unit conversion factor (for netCDF trends outputs) 
     19                                             !: =1. (=86400.) for degC/s (degC/day) and psu/s (psu/day) 
     20   CHARACTER(len=32) ::   cn_trdrst_in       !: suffix of ocean restart name (input) 
     21   CHARACTER(len=32) ::   cn_trdrst_out      !: suffix of ocean restart name (output) 
     22   LOGICAL , PUBLIC  ::   ln_trdmld_instant !: flag to diagnose inst./mean ML T/S trends 
     23   LOGICAL , PUBLIC  ::   ln_trdmld_restart !: flag to restart mixed-layer diagnostics 
    2424 
    2525# if defined key_trdtra   ||   defined key_trdmld 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ZDF/zdf_oce.F90

    r2715 r3901  
    2222#endif 
    2323 
    24    !                                           !!* namelist namzdf: vertical diffusion * 
    25    REAL(wp), PUBLIC ::   rn_avm0   = 1.e-4_wp   !: vertical eddy viscosity (m2/s) 
    26    REAL(wp), PUBLIC ::   rn_avt0   = 1.e-5_wp   !: vertical eddy diffusivity (m2/s) 
    27    INTEGER , PUBLIC ::   nn_avb    =  0         !: constant or profile background on avt (=0/1) 
    28    INTEGER , PUBLIC ::   nn_havtb  = 1          !: horizontal shape or not for avtb (=0/1) 
    29    LOGICAL , PUBLIC ::   ln_zdfexp = .FALSE.    !: explicit vertical diffusion scheme flag 
    30    INTEGER , PUBLIC ::   nn_zdfexp = 3          !: number of sub-time step (explicit time stepping) 
    31    LOGICAL , PUBLIC ::   ln_zdfevd = .TRUE.     !: convection: enhanced vertical diffusion flag 
    32    INTEGER , PUBLIC ::   nn_evdm   = 1          !: =0/1 flag to apply enhanced avm or not 
    33    REAL(wp), PUBLIC ::   rn_avevd  = 1._wp      !: vertical eddy coeff. for enhanced vert. diff. (m2/s) 
    34    LOGICAL , PUBLIC ::   ln_zdfnpc = .FALSE.    !: convection: non-penetrative convection flag 
    35    INTEGER , PUBLIC ::   nn_npc    =   1        !: non penetrative convective scheme call  frequency 
    36    INTEGER , PUBLIC ::   nn_npcp   =  15        !: non penetrative convective scheme print frequency 
     24   !                                 !!* namelist namzdf: vertical diffusion * 
     25   REAL(wp), PUBLIC ::   rn_avm0     !: vertical eddy viscosity (m2/s) 
     26   REAL(wp), PUBLIC ::   rn_avt0     !: vertical eddy diffusivity (m2/s) 
     27   INTEGER , PUBLIC ::   nn_avb      !: constant or profile background on avt (=0/1) 
     28   INTEGER , PUBLIC ::   nn_havtb    !: horizontal shape or not for avtb (=0/1) 
     29   LOGICAL , PUBLIC ::   ln_zdfexp   !: explicit vertical diffusion scheme flag 
     30   INTEGER , PUBLIC ::   nn_zdfexp   !: number of sub-time step (explicit time stepping) 
     31   LOGICAL , PUBLIC ::   ln_zdfevd   !: convection: enhanced vertical diffusion flag 
     32   INTEGER , PUBLIC ::   nn_evdm     !: =0/1 flag to apply enhanced avm or not 
     33   REAL(wp), PUBLIC ::   rn_avevd    !: vertical eddy coeff. for enhanced vert. diff. (m2/s) 
     34   LOGICAL , PUBLIC ::   ln_zdfnpc   !: convection: non-penetrative convection flag 
     35   INTEGER , PUBLIC ::   nn_npc      !: non penetrative convective scheme call  frequency 
     36   INTEGER , PUBLIC ::   nn_npcp     !: non penetrative convective scheme print frequency 
    3737 
    3838 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfbfr.F90

    r3875 r3901  
    3434   PUBLIC   zdf_bfr_init    ! called by opa.F90 
    3535 
    36    !                                    !!* Namelist nambfr: bottom friction namelist * 
    37    INTEGER , PUBLIC ::   nn_bfr      = 0          ! = 0/1/2/3 type of bottom friction  (PUBLIC for TAM) 
    38    REAL(wp), PUBLIC ::   rn_bfri1    = 4.0e-4_wp  ! bottom drag coefficient (linear case)  (PUBLIC for TAM) 
    39    REAL(wp), PUBLIC ::   rn_bfri2    = 1.0e-3_wp  ! bottom drag coefficient (non linear case) (PUBLIC for TAM) 
    40    REAL(wp), PUBLIC ::   rn_bfeb2    = 2.5e-3_wp  ! background bottom turbulent kinetic energy  [m2/s2] (PUBLIC for TAM) 
    41    REAL(wp), PUBLIC ::   rn_bfrien   = 30._wp      ! local factor to enhance coefficient bfri (PUBLIC for TAM) 
    42    LOGICAL , PUBLIC ::   ln_bfr2d    = .false.    ! logical switch for 2D enhancement (PUBLIC for TAM) 
    43    LOGICAL , PUBLIC ::   ln_loglayer = .false.    ! switch for log layer bfr coeff. (PUBLIC for TAM) 
    44    REAL(wp), PUBLIC ::   rn_bfrz0    = 0.003_wp    ! bottom roughness for loglayer bfr coeff (PUBLIC for TAM) 
    45    LOGICAL , PUBLIC                                    ::  ln_bfrimp = .false.  ! logical switch for implicit bottom friction 
     36   !                                 !!* Namelist nambfr: bottom friction namelist * 
     37   INTEGER , PUBLIC ::   nn_bfr      ! = 0/1/2/3 type of bottom friction  (PUBLIC for TAM) 
     38   REAL(wp), PUBLIC ::   rn_bfri1    ! bottom drag coefficient (linear case)  (PUBLIC for TAM) 
     39   REAL(wp), PUBLIC ::   rn_bfri2    ! bottom drag coefficient (non linear case) (PUBLIC for TAM) 
     40   REAL(wp), PUBLIC ::   rn_bfeb2    ! background bottom turbulent kinetic energy  [m2/s2] (PUBLIC for TAM) 
     41   REAL(wp), PUBLIC ::   rn_bfrien    ! local factor to enhance coefficient bfri (PUBLIC for TAM) 
     42   LOGICAL , PUBLIC ::   ln_bfr2d    ! logical switch for 2D enhancement (PUBLIC for TAM) 
     43   LOGICAL , PUBLIC ::   ln_loglayer ! switch for log layer bfr coeff. (PUBLIC for TAM) 
     44   REAL(wp), PUBLIC ::   rn_bfrz0    ! bottom roughness for loglayer bfr coeff (PUBLIC for TAM) 
     45   LOGICAL , PUBLIC ::  ln_bfrimp     ! logical switch for implicit bottom friction 
    4646   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:), PUBLIC ::  bfrcoef2d            ! 2D bottom drag coefficient (PUBLIC for TAM) 
    4747 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfddm.F90

    r3875 r3901  
    3737   REAL(wp), PUBLIC, SAVE, ALLOCATABLE, DIMENSION(:,:,:) ::   rrau   !: heat/salt buoyancy flux ratio 
    3838 
    39    !                                  !!* Namelist namzdf_ddm : double diffusive mixing * 
    40    REAL(wp) ::   rn_avts  = 1.e-4_wp  ! maximum value of avs for salt fingering 
    41    REAL(wp) ::   rn_hsbfr = 1.6_wp    ! heat/salt buoyancy flux ratio 
     39   !                      !!* Namelist namzdf_ddm : double diffusive mixing * 
     40   REAL(wp) ::   rn_avts  ! maximum value of avs for salt fingering 
     41   REAL(wp) ::   rn_hsbfr ! heat/salt buoyancy flux ratio 
    4242 
    4343   !! * Substitutions 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfgls.F90

    r3875 r3901  
    5151   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)   ::   ustarb2 !: Squared bottom  velocity scale at T-points 
    5252 
    53    !                                         !!! ** Namelist  namzdf_gls  ** 
    54    LOGICAL  ::   ln_crban      = .FALSE.      ! =T use Craig and Banner scheme 
    55    LOGICAL  ::   ln_length_lim = .FALSE.      ! use limit on the dissipation rate under stable stratification (Galperin et al. 1988) 
    56    LOGICAL  ::   ln_sigpsi     = .FALSE.      ! Activate Burchard (2003) modification for k-eps closure & wave breaking mixing 
    57    INTEGER  ::   nn_tkebc_surf = 0            ! TKE surface boundary condition (=0/1) 
    58    INTEGER  ::   nn_tkebc_bot  = 0            ! TKE bottom boundary condition (=0/1) 
    59    INTEGER  ::   nn_psibc_surf = 0            ! PSI surface boundary condition (=0/1) 
    60    INTEGER  ::   nn_psibc_bot  = 0            ! PSI bottom boundary condition (=0/1) 
    61    INTEGER  ::   nn_stab_func  = 0            ! stability functions G88, KC or Canuto (=0/1/2) 
    62    INTEGER  ::   nn_clos       = 0            ! closure 0/1/2/3 MY82/k-eps/k-w/gen 
    63    REAL(wp) ::   rn_clim_galp  = 0.53_wp      ! Holt 2008 value for k-eps: 0.267 
    64    REAL(wp) ::   rn_epsmin     = 1.e-12_wp    ! minimum value of dissipation (m2/s3) 
    65    REAL(wp) ::   rn_emin       = 1.e-6_wp     ! minimum value of TKE (m2/s2) 
    66    REAL(wp) ::   rn_charn      = 2.e+5_wp     ! Charnock constant for surface breaking waves mixing : 1400. (standard) or 2.e5 (Stacey value) 
    67    REAL(wp) ::   rn_crban      = 100._wp      ! Craig and Banner constant for surface breaking waves mixing 
     53   !                              !! ** Namelist  namzdf_gls  ** 
     54   LOGICAL  ::   ln_crban          ! =T use Craig and Banner scheme 
     55   LOGICAL  ::   ln_length_lim     ! use limit on the dissipation rate under stable stratification (Galperin et al. 1988) 
     56   LOGICAL  ::   ln_sigpsi         ! Activate Burchard (2003) modification for k-eps closure & wave breaking mixing 
     57   INTEGER  ::   nn_tkebc_surf     ! TKE surface boundary condition (=0/1) 
     58   INTEGER  ::   nn_tkebc_bot      ! TKE bottom boundary condition (=0/1) 
     59   INTEGER  ::   nn_psibc_surf     ! PSI surface boundary condition (=0/1) 
     60   INTEGER  ::   nn_psibc_bot      ! PSI bottom boundary condition (=0/1) 
     61   INTEGER  ::   nn_stab_func      ! stability functions G88, KC or Canuto (=0/1/2) 
     62   INTEGER  ::   nn_clos           ! closure 0/1/2/3 MY82/k-eps/k-w/gen 
     63   REAL(wp) ::   rn_clim_galp      ! Holt 2008 value for k-eps: 0.267 
     64   REAL(wp) ::   rn_epsmin         ! minimum value of dissipation (m2/s3) 
     65   REAL(wp) ::   rn_emin           ! minimum value of TKE (m2/s2) 
     66   REAL(wp) ::   rn_charn          ! Charnock constant for surface breaking waves mixing : 1400. (standard) or 2.e5 (Stacey value) 
     67   REAL(wp) ::   rn_crban          ! Craig and Banner constant for surface breaking waves mixing 
    6868 
    6969   REAL(wp) ::   hsro          =  0.003_wp    ! Minimum surface roughness 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfkpp.F90

    r3875 r3901  
    5252   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)   ::   hkpp     !: boundary layer depth 
    5353 
    54    !                                        !!* Namelist namzdf_kpp * 
    55    REAL(wp) ::   rn_difmiw  =  1.2e-04_wp    ! constant internal wave viscosity (m2/s) 
    56    REAL(wp) ::   rn_difsiw  =  1.2e-05_wp    ! constant internal wave diffusivity (m2/s) 
    57    REAL(wp) ::   rn_riinfty =  0.8_wp        ! local Richardson Number limit for shear instability 
    58    REAL(wp) ::   rn_difri   =  5.e-03_wp     ! maximum shear mixing at Rig = 0    (m2/s) 
    59    REAL(wp) ::   rn_bvsqcon = -1.e-09_wp     ! Brunt-Vaisala squared (1/s**2) for maximum convection 
    60    REAL(wp) ::   rn_difcon  =  1._wp         ! maximum mixing in interior convection (m2/s) 
    61    INTEGER  ::   nn_ave     =  1             ! = 0/1 flag for horizontal average on avt, avmu, avmv 
     54   !                          !!* Namelist namzdf_kpp * 
     55   REAL(wp) ::   rn_difmiw     ! constant internal wave viscosity (m2/s) 
     56   REAL(wp) ::   rn_difsiw     ! constant internal wave diffusivity (m2/s) 
     57   REAL(wp) ::   rn_riinfty    ! local Richardson Number limit for shear instability 
     58   REAL(wp) ::   rn_difri      ! maximum shear mixing at Rig = 0    (m2/s) 
     59   REAL(wp) ::   rn_bvsqcon    ! Brunt-Vaisala squared (1/s**2) for maximum convection 
     60   REAL(wp) ::   rn_difcon     ! maximum mixing in interior convection (m2/s) 
     61   INTEGER  ::   nn_ave        ! = 0/1 flag for horizontal average on avt, avmu, avmv 
    6262 
    6363#if defined key_zdfddm 
     
    6767   REAL(wp) ::   difsdc  = 1.5e-06_wp        ! maximum diffusive convection mixing 
    6868#endif 
    69    LOGICAL  ::   ln_kpprimix  = .TRUE.       ! Shear instability mixing  
     69   LOGICAL  ::   ln_kpprimix       ! Shear instability mixing  
    7070 
    7171   !                                        !!! ** General constants  ** 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ZDF/zdfric.F90

    r3875 r3901  
    4141   LOGICAL, PUBLIC, PARAMETER ::   lk_zdfric = .TRUE.   !: Richardson vertical mixing flag 
    4242 
    43    !                                    !!* Namelist namzdf_ric : Richardson number dependent Kz * 
    44    INTEGER  ::   nn_ric   = 2            ! coefficient of the parameterization 
    45    REAL(wp) ::   rn_avmri = 100.e-4_wp   ! maximum value of the vertical eddy viscosity 
    46    REAL(wp) ::   rn_alp   =   5._wp      ! coefficient of the parameterization 
    47    REAL(wp) ::   rn_ekmfc =   0.7_wp     ! Ekman Factor Coeff 
    48    REAL(wp) ::   rn_mldmin=   1.0_wp     ! minimum mixed layer (ML) depth     
    49    REAL(wp) ::   rn_mldmax=1000.0_wp     ! maximum mixed layer depth 
    50    REAL(wp) ::   rn_wtmix =  10.0_wp     ! Vertical eddy Diff. in the ML 
    51    REAL(wp) ::   rn_wvmix =  10.0_wp     ! Vertical eddy Visc. in the ML 
    52    LOGICAL  ::   ln_mldw  = .TRUE.       ! Use or not the MLD parameters 
     43   !                           !!* Namelist namzdf_ric : Richardson number dependent Kz * 
     44   INTEGER  ::   nn_ric         ! coefficient of the parameterization 
     45   REAL(wp) ::   rn_avmri       ! maximum value of the vertical eddy viscosity 
     46   REAL(wp) ::   rn_alp         ! coefficient of the parameterization 
     47   REAL(wp) ::   rn_ekmfc       ! Ekman Factor Coeff 
     48   REAL(wp) ::   rn_mldmin      ! minimum mixed layer (ML) depth     
     49   REAL(wp) ::   rn_mldmax      ! maximum mixed layer depth 
     50   REAL(wp) ::   rn_wtmix       ! Vertical eddy Diff. in the ML 
     51   REAL(wp) ::   rn_wvmix       ! Vertical eddy Visc. in the ML 
     52   LOGICAL  ::   ln_mldw        ! Use or not the MLD parameters 
    5353 
    5454   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   tmric   !: coef. for the horizontal mean at t-point 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftke.F90

    r3875 r3901  
    6262   LOGICAL , PUBLIC, PARAMETER ::   lk_zdftke = .TRUE.  !: TKE vertical mixing flag 
    6363 
    64    !                                      !!** Namelist  namzdf_tke  ** 
    65    LOGICAL  ::   ln_mxl0   = .FALSE.       ! mixing length scale surface value as function of wind stress or not 
    66    INTEGER  ::   nn_mxl    =  2            ! type of mixing length (=0/1/2/3) 
    67    REAL(wp) ::   rn_mxl0   = 0.04_wp       ! surface  min value of mixing length (kappa*z_o=0.4*0.1 m)  [m] 
    68    INTEGER  ::   nn_pdl    =  1            ! Prandtl number or not (ratio avt/avm) (=0/1) 
    69    REAL(wp) ::   rn_ediff  = 0.1_wp        ! coefficient for avt: avt=rn_ediff*mxl*sqrt(e) 
    70    REAL(wp) ::   rn_ediss  = 0.7_wp        ! coefficient of the Kolmogoroff dissipation  
    71    REAL(wp) ::   rn_ebb    = 3.75_wp       ! coefficient of the surface input of tke 
    72    REAL(wp) ::   rn_emin   = 0.7071e-6_wp  ! minimum value of tke           [m2/s2] 
    73    REAL(wp) ::   rn_emin0  = 1.e-4_wp      ! surface minimum value of tke   [m2/s2] 
    74    REAL(wp) ::   rn_bshear = 1.e-20_wp     ! background shear (>0) currently a numerical threshold (do not change it) 
    75    INTEGER  ::   nn_etau   = 0             ! type of depth penetration of surface tke (=0/1/2/3) 
    76    INTEGER  ::   nn_htau   = 0             ! type of tke profile of penetration (=0/1) 
    77    REAL(wp) ::   rn_efr    = 1.0_wp        ! fraction of TKE surface value which penetrates in the ocean 
    78    LOGICAL  ::   ln_lc     = .FALSE.       ! Langmuir cells (LC) as a source term of TKE or not 
    79    REAL(wp) ::   rn_lc     = 0.15_wp       ! coef to compute vertical velocity of Langmuir cells 
    80  
    81    REAL(wp) ::   ri_cri                    ! critic Richardson number (deduced from rn_ediff and rn_ediss values) 
    82    REAL(wp) ::   rmxl_min                  ! minimum mixing length value (deduced from rn_ediff and rn_emin values)  [m] 
     64   !                      !!** Namelist  namzdf_tke  ** 
     65   LOGICAL  ::   ln_mxl0   ! mixing length scale surface value as function of wind stress or not 
     66   INTEGER  ::   nn_mxl    ! type of mixing length (=0/1/2/3) 
     67   REAL(wp) ::   rn_mxl0   ! surface  min value of mixing length (kappa*z_o=0.4*0.1 m)  [m] 
     68   INTEGER  ::   nn_pdl    ! Prandtl number or not (ratio avt/avm) (=0/1) 
     69   REAL(wp) ::   rn_ediff  ! coefficient for avt: avt=rn_ediff*mxl*sqrt(e) 
     70   REAL(wp) ::   rn_ediss  ! coefficient of the Kolmogoroff dissipation  
     71   REAL(wp) ::   rn_ebb    ! coefficient of the surface input of tke 
     72   REAL(wp) ::   rn_emin   ! minimum value of tke           [m2/s2] 
     73   REAL(wp) ::   rn_emin0  ! surface minimum value of tke   [m2/s2] 
     74   REAL(wp) ::   rn_bshear ! background shear (>0) currently a numerical threshold (do not change it) 
     75   INTEGER  ::   nn_etau   ! type of depth penetration of surface tke (=0/1/2/3) 
     76   INTEGER  ::   nn_htau   ! type of tke profile of penetration (=0/1) 
     77   REAL(wp) ::   rn_efr    ! fraction of TKE surface value which penetrates in the ocean 
     78   LOGICAL  ::   ln_lc     ! Langmuir cells (LC) as a source term of TKE or not 
     79   REAL(wp) ::   rn_lc     ! coef to compute vertical velocity of Langmuir cells 
     80 
     81   REAL(wp) ::   ri_cri    ! critic Richardson number (deduced from rn_ediff and rn_ediss values) 
     82   REAL(wp) ::   rmxl_min  ! minimum mixing length value (deduced from rn_ediff and rn_emin values)  [m] 
    8383   REAL(wp) ::   rhftau_add = 1.e-3_wp     ! add offset   applied to HF part of taum  (nn_etau=3) 
    8484   REAL(wp) ::   rhftau_scl = 1.0_wp       ! scale factor applied to HF part of taum  (nn_etau=3) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/ZDF/zdftmx.F90

    r3875 r3901  
    3838   LOGICAL, PUBLIC, PARAMETER ::   lk_zdftmx = .TRUE.    !: tidal mixing flag 
    3939 
    40    !                                  !!* Namelist  namzdf_tmx : tidal mixing * 
    41    REAL(wp) ::  rn_htmx    = 500.      ! vertical decay scale for turbulence (meters) 
    42    REAL(wp) ::  rn_n2min   = 1.e-8    ! threshold of the Brunt-Vaisala frequency (s-1) 
    43    REAL(wp) ::  rn_tfe     = 1./3.    ! tidal dissipation efficiency (St Laurent et al. 2002) 
    44    REAL(wp) ::  rn_me      = 0.2      ! mixing efficiency (Osborn 1980) 
    45    LOGICAL  ::  ln_tmx_itf = .TRUE.    ! Indonesian Through Flow (ITF): Koch-Larrouy et al. (2007) parameterization 
    46    REAL(wp) ::  rn_tfe_itf = 1.        ! ITF tidal dissipation efficiency (St Laurent et al. 2002) 
     40   !                       !!* Namelist  namzdf_tmx : tidal mixing * 
     41   REAL(wp) ::  rn_htmx    ! vertical decay scale for turbulence (meters) 
     42   REAL(wp) ::  rn_n2min    ! threshold of the Brunt-Vaisala frequency (s-1) 
     43   REAL(wp) ::  rn_tfe      ! tidal dissipation efficiency (St Laurent et al. 2002) 
     44   REAL(wp) ::  rn_me      ! mixing efficiency (Osborn 1980) 
     45   LOGICAL  ::  ln_tmx_itf ! Indonesian Through Flow (ITF): Koch-Larrouy et al. (2007) parameterization 
     46   REAL(wp) ::  rn_tfe_itf ! ITF tidal dissipation efficiency (St Laurent et al. 2002) 
    4747 
    4848   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:)   ::   en_tmx     ! energy available for tidal mixing (W/m2) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/module_example

    r3875 r3901  
    1313   !!   'key_example'  :                brief description of the key option 
    1414   !!---------------------------------------------------------------------- 
    15    !!   exa_mpl       : liste of module subroutine (caution, never use the 
     15   !!   exa_mpl       : list of module subroutine (caution, never use the 
    1616   !!   exa_mpl_init  : name of the module for a routine) 
    1717   !!   exa_mpl_stp   : Please try to use 3 letter block for routine names 
     
    162162      !!---------------------------------------------------------------------- 
    163163      ! 
    164       sn_ex%clname ='toto'                      ! set default namelist values 
    165       sn_ex%nfreqh = 2  
    166       ! 
    167164      REWIND( numnam_ref )              ! Namelist namexa in reference namelist : Example 
    168165      READ  ( numnam_ref, namexa, IOSTAT = ios, ERR = 901) 
     
    181178         WRITE(numout,*) '   Namelist namexa : set example parameters' 
    182179         WRITE(numout,*) '      brief desciption               exa_v1  = ', exa_v1 
    183          WRITE(numout,*) '      brief desciption               exa_v1  = ', exa_v1 
     180         WRITE(numout,*) '      brief desciption               exa_v2  = ', exa_v2 
    184181         WRITE(numout,*) '      brief desciption               nexa_0  = ', nexa_0 
    185182         WRITE(numout,*) '      brief desciption          sn_ex%clname = ', sn_ex%clname 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90

    r3875 r3901  
    231231      CALL ctl_opn( numnam_ref, 'namelist_ref', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    232232      CALL ctl_opn( numnam_cfg, 'namelist_cfg', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    233       CALL ctl_opn( numond, 'output.namelist.dyn', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE., narea ) 
     233      CALL ctl_opn( numond, 'output.namelist.dyn', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    234234      ! 
    235235      REWIND( numnam_ref )              ! Namelist namctl in reference namelist : Control prints & Benchmark 
     
    524524      IF( numnam_ref      /= -1 )   CLOSE( numnam_ref      )   ! oce reference namelist 
    525525      IF( numnam_cfg      /= -1 )   CLOSE( numnam_cfg      )   ! oce configuration namelist 
     526      IF( numond          /= -1 )   CLOSE( numond          )   ! oce output namelist 
    526527      IF( numnam_ice_ref  /= -1 )   CLOSE( numnam_ice_ref  )   ! ice reference namelist 
    527528      IF( numnam_ice_cfg  /= -1 )   CLOSE( numnam_ice_cfg  )   ! ice configuration namelist 
     529      IF( numoni          /= -1 )   CLOSE( numoni          )   ! ice output namelist 
    528530      IF( numevo_ice      /= -1 )   CLOSE( numevo_ice      )   ! ice variables (temp. evolution) 
    529531      IF( numout          /=  6 )   CLOSE( numout          )   ! standard model output file 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/step.F90

    r3769 r3901  
    251251                               CALL dia_wri_state( 'output.abort', kstp ) 
    252252      ENDIF 
    253       IF( kstp == nit000   )   CALL iom_close( numror )     ! close input  ocean restart file 
     253      IF( kstp == nit000   )   THEN 
     254         CALL iom_close( numror )     ! close input  ocean restart file 
     255         CALL FLUSH    ( numond )     ! flush output namelist oce 
     256         CALL FLUSH    ( numoni )     ! flush output namelist ice     
     257      ENDIF 
    254258      IF( lrst_oce         )   CALL rst_write    ( kstp )   ! write output ocean restart file 
    255259      IF( lk_obc           )   CALL obc_rst_write( kstp )   ! write open boundary restart file 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/SAS_SRC/sbcssm.F90

    r3875 r3901  
    3636   PUBLIC   sbc_ssm        ! called by sbc 
    3737 
    38    CHARACTER(len=100)   ::   cn_dir     = './'    !: Root directory for location of ssm files 
    39    LOGICAL              ::   ln_3d_uv   = .true.  !: specify whether input velocity data is 3D 
     38   CHARACTER(len=100)   ::   cn_dir         !: Root directory for location of ssm files 
     39   LOGICAL              ::   ln_3d_uv       !: specify whether input velocity data is 3D 
    4040   INTEGER  , SAVE      ::   nfld_3d 
    4141   INTEGER  , SAVE      ::   nfld_2d 
     
    142142      !                                   !   Namelist 
    143143      !                                   ! ============ 
    144       ! (NB: frequency positive => hours, negative => months) 
    145       !                !   file      ! frequency !  variable  ! time intep !  clim  ! 'yearly' or ! weights  ! rotation   ! 
    146       !                !   name      !  (hours)  !   name     !   (T/F)    !  (T/F) !  'monthly'  ! filename ! pairs      ! 
    147       sn_usp  = FLD_N( 'ssm_grid_U' ,    120    , 'vozocrtx' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    148       sn_vsp  = FLD_N( 'ssm_grid_V' ,    120    , 'vomecrty' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    149       sn_tem  = FLD_N( 'ssm_grid_T' ,    120    , 'sosstsst' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    150       sn_sal  = FLD_N( 'ssm_grid_T' ,    120    , 'sosaline' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    151       sn_ssh  = FLD_N( 'ssm_grid_T' ,    120    , 'sossheig' ,  .true.    , .true. ,   'yearly'  , ''       , ''         ) 
    152144      ! 
    153145      REWIND( numnam_ref )              ! Namelist namsbc_ssm in reference namelist : SAS files for dynamical data 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/C14b/trcnam_c14b.F90

    r3875 r3901  
    5555      NAMELIST/namc14dia/  c14dia2d, c14dia3d     ! additional diagnostics 
    5656      !!------------------------------------------------------------------- 
    57  
    58       ndate_beg_b = 650101            ! default namelist value 
    59       nyear_res_b = 1955 
    60  
    6157      !                             ! Open namelist file 
    6258      CALL ctl_opn( numnatb_ref, 'namelist_c14b_ref'  ,     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
     
    8581         ! Namelist namc14dia 
    8682         ! ------------------- 
    87          DO jl = 1, jp_c14b_2d 
    88             WRITE(c14dia2d(jl)%sname,'("2D_",I1)') jl                      ! short name 
    89             WRITE(c14dia2d(jl)%lname,'("2D DIAGNOSTIC NUMBER ",I2)') jl    ! long name 
    90             c14dia2d(jl)%units = ' '                                       ! units 
    91          END DO 
    92          !                                 ! 3D output arrays 
    93          DO jl = 1, jp_c14b_3d 
    94             WRITE(c14dia3d(jl)%sname,'("3D_",I1)') jl                      ! short name 
    95             WRITE(c14dia3d(jl)%lname,'("3D DIAGNOSTIC NUMBER ",I2)') jl    ! long name 
    96             c14dia3d(jl)%units = ' '                                       ! units 
    97          END DO 
    98  
    9983         REWIND( numnatb_ref )              ! Namelist namc14dia in reference namelist : c14b diagnostics 
    10084         READ  ( numnatb_ref, namc14dia, IOSTAT = ios, ERR = 903) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/C14b/trcsms_c14b.F90

    r3680 r3901  
    307307      CALL wrk_dealloc( jpi, jpj, jpk, zdecay   ) 
    308308      ! 
     309     IF ( kt == nittrc000 ) CALL FLUSH ( numonb )     ! flush output namelist C14b 
    309310      IF( nn_timing == 1 )  CALL timing_stop('trc_sms_c14b') 
    310311      ! 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/CFC/trcnam_cfc.F90

    r3875 r3901  
    5151      NAMELIST/namcfcdate/ ndate_beg, nyear_res 
    5252      NAMELIST/namcfcdia/  cfcdia2d     ! additional diagnostics 
    53       !!------------------------------------------------------------------- 
    54  
    55       ndate_beg = 300101            ! default namelist value 
    56       nyear_res = 1950 
    57  
     53      !!---------------------------------------------------------------------- 
    5854      !                             ! Open namelist files 
    5955      CALL ctl_opn( numnatc_ref, 'namelist_cfc_ref'   ,     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, numout, .FALSE. ) 
     
    8581         ! Namelist namcfcdia 
    8682         ! ------------------- 
    87          DO jl = 1, jp_cfc_2d 
    88             WRITE(cfcdia2d(jl)%sname,'("2D_",I1)') jl                      ! short name 
    89             WRITE(cfcdia2d(jl)%lname,'("2D DIAGNOSTIC NUMBER ",I2)') jl    ! long name 
    90             cfcdia2d(jl)%units = ' '                                       ! units 
    91          END DO 
    92  
    9383         REWIND( numnatc_ref )              ! Namelist namcfcdia in reference namelist : CFC diagnostics 
    9484         READ  ( numnatc_ref, namcfcdia, IOSTAT = ios, ERR = 903) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/CFC/trcsms_cfc.F90

    r3680 r3901  
    205205      END IF 
    206206      ! 
     207      IF ( kt == nittrc000 ) CALL FLUSH ( numonc )     ! flush output namelist CFC 
    207208      IF( nn_timing == 1 )  CALL timing_stop('trc_sms_cfc') 
    208209      ! 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zbio.F90

    r3875 r3901  
    3131   PUBLIC   p2z_bio_init    ! called in ??? 
    3232 
    33    REAL(wp) ::   tmumax     = 1.21e-5    ! maximal phytoplankton growth rate            [s-1] 
    34    REAL(wp) ::   rgamma     =  0.05      ! phytoplankton exudation fraction             [%] 
    35    REAL(wp) ::   fphylab    =  0.75      ! NH4 fraction of phytoplankton exsudation 
    36    REAL(wp) ::   tmminp     =  5.8e-7    ! minimal phytoplancton mortality rate         [0.05/86400 s-1=20 days] 
    37    REAL(wp) ::   aki        =  33.       ! light photosynthesis half saturation constant[W/m2] 
     33   REAL(wp) ::   tmumax     ! maximal phytoplankton growth rate            [s-1] 
     34   REAL(wp) ::   rgamma     ! phytoplankton exudation fraction             [%] 
     35   REAL(wp) ::   fphylab    ! NH4 fraction of phytoplankton exsudation 
     36   REAL(wp) ::   tmminp     ! minimal phytoplancton mortality rate         [0.05/86400 s-1=20 days] 
     37   REAL(wp) ::   aki        ! light photosynthesis half saturation constant[W/m2] 
    3838   ! 
    39    REAL(wp) ::   akno3      =  0.7       ! nitrate limitation half-saturation value     [mmol/m3] 
    40    REAL(wp) ::   aknh4      =  0.001     ! ammonium limitation half-saturation value    [mmol/m3] 
    41    REAL(wp) ::   taunn      =  5.80e-7   ! nitrification rate                           [s-1] 
    42    REAL(wp) ::   psinut     =  3.        ! inhibition of nitrate uptake by ammonium 
     39   REAL(wp) ::   akno3      ! nitrate limitation half-saturation value     [mmol/m3] 
     40   REAL(wp) ::   aknh4      ! ammonium limitation half-saturation value    [mmol/m3] 
     41   REAL(wp) ::   taunn      ! nitrification rate                           [s-1] 
     42   REAL(wp) ::   psinut     ! inhibition of nitrate uptake by ammonium 
    4343   ! 
    44    REAL(wp) ::   taudn      = 5.80e-7    ! detritus breakdown rate                        [0.1/86400 s-1=10 days] 
    45    REAL(wp) ::   fdetlab    = 0.         ! NH4 fraction of detritus dissolution 
     44   REAL(wp) ::   taudn      ! detritus breakdown rate                        [0.1/86400 s-1=10 days] 
     45   REAL(wp) ::   fdetlab    ! NH4 fraction of detritus dissolution 
    4646   ! 
    47    REAL(wp) ::   taudomn    = 6.43e-8    ! DOM breakdown rate                             [s-1] 
    48    !                                     ! slow remineralization rate of semi-labile dom to nh4 (1 month) 
     47   REAL(wp) ::   taudomn    ! DOM breakdown rate                             [s-1] 
     48   !                        ! slow remineralization rate of semi-labile dom to nh4 (1 month) 
    4949   ! 
    50    REAL(wp) ::   rppz       = 0.         ! ivlev coeff for zoo mortality 
    51    REAL(wp) ::   taus       = 9.26E-6    ! specific zooplankton maximal grazing rate              [s-1] 
     50   REAL(wp) ::   rppz       ! ivlev coeff for zoo mortality 
     51   REAL(wp) ::   taus       ! specific zooplankton maximal grazing rate              [s-1] 
    5252   !                                     ! 0.75/86400 s-1=8.680555E-6    1/86400 = 1.15e-5 
    53    REAL(wp) ::   aks        = 1.         ! half-saturation constant for total zooplankton grazing [mmolN.m-3] 
    54    REAL(wp) ::   rpnaz      = 0.3        ! non-assimilated phytoplankton by zooplancton           [%] 
    55    REAL(wp) ::   rdnaz      = 0.3        ! non-assimilated detritus by zooplankton                [%] 
    56    REAL(wp) ::   tauzn      = 8.1e-7     ! zooplancton specific excretion rate                    [0.1/86400 s-1=10 days] 
    57    REAL(wp) ::   tmminz     = 2.31e-6    ! minimal zooplankton mortality rate                     [(mmolN/m3)-1 d-1] 
    58    REAL(wp) ::   fzoolab    = 0.5        ! NH4 fraction of zooplankton excretion 
    59    REAL(wp) ::   fdbod      = 0.5        ! zooplankton mortality fraction that goes to detritus 
     53   REAL(wp) ::   aks        ! half-saturation constant for total zooplankton grazing [mmolN.m-3] 
     54   REAL(wp) ::   rpnaz      ! non-assimilated phytoplankton by zooplancton           [%] 
     55   REAL(wp) ::   rdnaz      ! non-assimilated detritus by zooplankton                [%] 
     56   REAL(wp) ::   tauzn      ! zooplancton specific excretion rate                    [0.1/86400 s-1=10 days] 
     57   REAL(wp) ::   tmminz     ! minimal zooplankton mortality rate                     [(mmolN/m3)-1 d-1] 
     58   REAL(wp) ::   fzoolab    ! NH4 fraction of zooplankton excretion 
     59   REAL(wp) ::   fdbod      ! zooplankton mortality fraction that goes to detritus 
    6060 
    6161   !!* Substitution 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zopt.F90

    r3875 r3901  
    2828   PUBLIC   p2z_opt_init   ! 
    2929 
    30    REAL(wp), PUBLIC ::  xkr0   = 0.0232_wp   !: water coefficient absorption in red       
    31    REAL(wp), PUBLIC ::  xkg0   = 0.225_wp    !: water coefficient absorption in green     
    32    REAL(wp), PUBLIC ::  xkrp   = 0.074_wp    !: pigment coefficient absorption in red     
    33    REAL(wp), PUBLIC ::  xkgp   = 0.037_wp    !: pigment coefficient absorption in green   
    34    REAL(wp), PUBLIC ::  xlr    = 0.674_wp    !: exposant for pigment absorption in red   
    35    REAL(wp), PUBLIC ::  xlg    = 0.629_wp    !: exposant for pigment absorption in green  
    36    REAL(wp), PUBLIC ::  rpig   = 0.7_wp      !: chla/chla+phea ratio     
     30   REAL(wp), PUBLIC ::  xkr0      !: water coefficient absorption in red       
     31   REAL(wp), PUBLIC ::  xkg0      !: water coefficient absorption in green     
     32   REAL(wp), PUBLIC ::  xkrp      !: pigment coefficient absorption in red     
     33   REAL(wp), PUBLIC ::  xkgp      !: pigment coefficient absorption in green   
     34   REAL(wp), PUBLIC ::  xlr       !: exposant for pigment absorption in red   
     35   REAL(wp), PUBLIC ::  xlg       !: exposant for pigment absorption in green  
     36   REAL(wp), PUBLIC ::  rpig      !: chla/chla+phea ratio     
    3737   !                  
    38    REAL(wp), PUBLIC ::  rcchl  =  60_wp      ! Carbone/Chlorophyl ratio [mgC.mgChla-1] 
    39    REAL(wp), PUBLIC ::  redf   = 6.56_wp     ! redfield ratio (C:N) for phyto 
    40    REAL(wp), PUBLIC ::  reddom = 6.56_wp     ! redfield ratio (C:N) for DOM 
     38   REAL(wp), PUBLIC ::  rcchl     ! Carbone/Chlorophyl ratio [mgC.mgChla-1] 
     39   REAL(wp), PUBLIC ::  redf      ! redfield ratio (C:N) for phyto 
     40   REAL(wp), PUBLIC ::  reddom    ! redfield ratio (C:N) for DOM 
    4141 
    4242   !!* Substitution 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zsed.F90

    r3875 r3901  
    2929   PUBLIC   p2z_sed_init    ! called in ??? 
    3030 
    31    REAL(wp), PUBLIC ::   sedlam     = 3.86e-7  !: time coefficient of POC remineralization in sediments 
    32    REAL(wp), PUBLIC ::   sedlostpoc = 0.        ! mass of POC lost in sediments  
    33    REAL(wp), PUBLIC ::   vsed       = 3.47e-5  ! detritus sedimentation speed [m/s]  
    34    REAL(wp), PUBLIC ::   xhr        = -0.858    ! coeff for martin''s remineralisation profile 
     31   REAL(wp), PUBLIC ::   sedlam      !: time coefficient of POC remineralization in sediments 
     32   REAL(wp), PUBLIC ::   sedlostpoc ! mass of POC lost in sediments  
     33   REAL(wp), PUBLIC ::   vsed        ! detritus sedimentation speed [m/s]  
     34   REAL(wp), PUBLIC ::   xhr        ! coeff for martin''s remineralisation profile 
    3535 
    3636   !!* Substitution 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P2Z/p2zsms.F90

    r3443 r3901  
    1515   USE oce_trc          ! 
    1616   USE trc 
     17   USE sms_pisces 
    1718   USE p2zbio 
    1819   USE p2zopt 
     
    6667      IF( lk_trdmld_trc )  CALL trd_mld_bio( kt )   ! trends: Mixed-layer 
    6768      ! 
     69      IF ( kt == nittrc000 ) CALL FLUSH    ( numonp )     ! flush output namelist PISCES 
    6870      IF( nn_timing == 1 )  CALL timing_stop('p2z_sms') 
    6971      ! 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zfechem.F90

    r3875 r3901  
    3131 
    3232   !! * Shared module variables 
    33    LOGICAL          ::  ln_fechem  = .FALSE.    !: boolean for complex iron chemistry following Tagliabue and voelker 
    34    LOGICAL          ::  ln_ligvar  = .FALSE.    !: boolean for variable ligand concentration following Tagliabue and voelker 
    35    REAL(wp), PUBLIC ::  xlam1      = 0.005_wp   !: scavenging rate of Iron  
    36    REAL(wp), PUBLIC ::  xlamdust   = 150.0_wp   !: scavenging rate of Iron by dust  
    37    REAL(wp), PUBLIC ::  ligand     = 0.6E-9_wp  !: ligand concentration in the ocean  
     33   LOGICAL          ::  ln_fechem    !: boolean for complex iron chemistry following Tagliabue and voelker 
     34   LOGICAL          ::  ln_ligvar    !: boolean for variable ligand concentration following Tagliabue and voelker 
     35   REAL(wp), PUBLIC ::  xlam1        !: scavenging rate of Iron  
     36   REAL(wp), PUBLIC ::  xlamdust     !: scavenging rate of Iron by dust  
     37   REAL(wp), PUBLIC ::  ligand       !: ligand concentration in the ocean  
    3838 
    3939   REAL(wp) :: kl1, kl2, kb1, kb2, ks, kpr, spd, con, kth 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zflx.F90

    r3875 r3901  
    3737   PUBLIC   p4z_flx_alloc   
    3838 
    39    !                                      !!** Namelist  nampisext  ** 
    40    REAL(wp)          ::  atcco2    = 278._wp      !: pre-industrial atmospheric [co2] (ppm)     
    41    LOGICAL           ::  ln_co2int = .FALSE.      !: flag to read in a file and interpolate atmospheric pco2 or not 
    42    CHARACTER(len=34) ::  clname    = 'atcco2.txt' !: filename of pco2 values 
    43    INTEGER           ::  nn_offset = 0            !: Offset model-data start year (default = 0)  
     39   !                               !!** Namelist  nampisext  ** 
     40   REAL(wp)          ::  atcco2    !: pre-industrial atmospheric [co2] (ppm)     
     41   LOGICAL           ::  ln_co2int !: flag to read in a file and interpolate atmospheric pco2 or not 
     42   CHARACTER(len=34) ::  clname    !: filename of pco2 values 
     43   INTEGER           ::  nn_offset !: Offset model-data start year (default = 0)  
    4444 
    4545   !!  Variables related to reading atmospheric CO2 time history     
     
    4747   INTEGER  :: nmaxrec, numco2 
    4848 
    49    !                                         !!* nampisatm namelist (Atmospheric PRessure) * 
    50    LOGICAL, PUBLIC ::   ln_presatm = .true. !: ref. pressure: global mean Patm (F) or a constant (F) 
     49   !                               !!* nampisatm namelist (Atmospheric PRessure) * 
     50   LOGICAL, PUBLIC ::   ln_presatm !: ref. pressure: global mean Patm (F) or a constant (F) 
    5151 
    5252   REAL(wp) , ALLOCATABLE, SAVE, DIMENSION(:,:)  ::  patm      ! atmospheric pressure at kt                 [N/m2] 
     
    316316      NAMELIST/nampisatm/ ln_presatm, sn_patm, cn_dir 
    317317 
    318       !                                         ! -------------------- ! 
     318      !                                         ! ----------------------- ! 
    319319      IF( kt == nit000 ) THEN                   ! First call kt=nittrc000 ! 
    320          !                                      ! -------------------- ! 
    321          !                                            !* set file information (default values) 
    322          ! ... default values (NB: frequency positive => hours, negative => months) 
    323          !            !   file   ! frequency !  variable  ! time intep !  clim   ! 'yearly' or ! weights  ! rotation ! 
    324          !            !   name   !  (hours)  !   name     !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs    ! 
    325          sn_patm = FLD_N( 'pres'  ,    24     ,  'patm'    ,  .false.   , .true.  ,   'yearly'  , ''       , ''       ) 
    326          cn_dir  = './'          ! directory in which the Patm data are  
     320         !                                      ! ----------------------- ! 
    327321 
    328322         REWIND( numnatp_ref )              ! Namelist nampisatm in reference namelist : Pisces atm. sea level pressure file 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlim.F90

    r3875 r3901  
    2828 
    2929   !! * Shared module variables 
    30    REAL(wp), PUBLIC ::  concnno3  = 1.e-6_wp      !:  NO3, PO4 half saturation    
    31    REAL(wp), PUBLIC ::  concdno3  = 2.e-6_wp      !:  Phosphate half saturation for diatoms   
    32    REAL(wp), PUBLIC ::  concnnh4  = 1.e-7_wp      !:  NH4 half saturation for phyto   
    33    REAL(wp), PUBLIC ::  concdnh4  = 2.e-7_wp      !:  NH4 half saturation for diatoms 
    34    REAL(wp), PUBLIC ::  concnfer  = 1.e-9_wp      !:  Iron half saturation for nanophyto  
    35    REAL(wp), PUBLIC ::  concdfer  = 2.e-9_wp      !:  Iron half saturation for diatoms   
    36    REAL(wp), PUBLIC ::  concbno3  = 2.5e-7_wp      !:  NO3 half saturation  for bacteria  
    37    REAL(wp), PUBLIC ::  concbnh4  = 2.5e-8_wp      !:  NH4 half saturation for bacteria 
    38    REAL(wp), PUBLIC ::  xsizedia  = 5.e-7_wp      !:  Minimum size criteria for diatoms 
    39    REAL(wp), PUBLIC ::  xsizephy  = 1.e-6_wp      !:  Minimum size criteria for nanophyto 
    40    REAL(wp), PUBLIC ::  xsizern   = 3.0_wp        !:  Size ratio for nanophytoplankton 
    41    REAL(wp), PUBLIC ::  xsizerd   = 4.0_wp        !:  Size ratio for diatoms 
    42    REAL(wp), PUBLIC ::  xksi1     = 2.E-6_wp      !:  half saturation constant for Si uptake  
    43    REAL(wp), PUBLIC ::  xksi2     = 3.33e-6_wp    !:  half saturation constant for Si/C  
    44    REAL(wp), PUBLIC ::  xkdoc     = 417.e-6_wp    !:  2nd half-sat. of DOC remineralization   
    45    REAL(wp), PUBLIC ::  concbfe   = 1.E-11_wp     !:  Fe half saturation for bacteria  
    46    REAL(wp), PUBLIC ::  qnfelim   = 7.E-6_wp      !:  optimal Fe quota for nanophyto 
    47    REAL(wp), PUBLIC ::  qdfelim   = 7.E-6_wp      !:  optimal Fe quota for diatoms 
    48    REAL(wp), PUBLIC ::  caco3r    = 0.16_wp       !:  mean rainratio  
     30   REAL(wp), PUBLIC ::  concnno3    !:  NO3, PO4 half saturation    
     31   REAL(wp), PUBLIC ::  concdno3    !:  Phosphate half saturation for diatoms   
     32   REAL(wp), PUBLIC ::  concnnh4    !:  NH4 half saturation for phyto   
     33   REAL(wp), PUBLIC ::  concdnh4    !:  NH4 half saturation for diatoms 
     34   REAL(wp), PUBLIC ::  concnfer    !:  Iron half saturation for nanophyto  
     35   REAL(wp), PUBLIC ::  concdfer    !:  Iron half saturation for diatoms   
     36   REAL(wp), PUBLIC ::  concbno3    !:  NO3 half saturation  for bacteria  
     37   REAL(wp), PUBLIC ::  concbnh4    !:  NH4 half saturation for bacteria 
     38   REAL(wp), PUBLIC ::  xsizedia    !:  Minimum size criteria for diatoms 
     39   REAL(wp), PUBLIC ::  xsizephy    !:  Minimum size criteria for nanophyto 
     40   REAL(wp), PUBLIC ::  xsizern     !:  Size ratio for nanophytoplankton 
     41   REAL(wp), PUBLIC ::  xsizerd     !:  Size ratio for diatoms 
     42   REAL(wp), PUBLIC ::  xksi1       !:  half saturation constant for Si uptake  
     43   REAL(wp), PUBLIC ::  xksi2       !:  half saturation constant for Si/C  
     44   REAL(wp), PUBLIC ::  xkdoc       !:  2nd half-sat. of DOC remineralization   
     45   REAL(wp), PUBLIC ::  concbfe     !:  Fe half saturation for bacteria  
     46   REAL(wp), PUBLIC ::  qnfelim     !:  optimal Fe quota for nanophyto 
     47   REAL(wp), PUBLIC ::  qdfelim     !:  optimal Fe quota for diatoms 
     48   REAL(wp), PUBLIC ::  caco3r      !:  mean rainratio  
    4949 
    5050   ! Coefficient for iron limitation 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zlys.F90

    r3875 r3901  
    3232 
    3333   !! * Shared module variables 
    34    REAL(wp), PUBLIC :: kdca = 0.327e3_wp  !: diss. rate constant calcite 
    35    REAL(wp), PUBLIC :: nca  = 1.0_wp      !: order of reaction for calcite dissolution 
     34   REAL(wp), PUBLIC :: kdca !: diss. rate constant calcite 
     35   REAL(wp), PUBLIC :: nca  !: order of reaction for calcite dissolution 
    3636 
    3737   !! * Module variables 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmeso.F90

    r3875 r3901  
    3131 
    3232   !! * Shared module variables 
    33    REAL(wp), PUBLIC ::  part2       = 0.5_wp    !: part of calcite not dissolved in mesozoo guts 
    34    REAL(wp), PUBLIC ::  xprefc      = 1.0_wp    !: mesozoo preference for POC  
    35    REAL(wp), PUBLIC ::  xprefp      = 0.3_wp    !: mesozoo preference for nanophyto 
    36    REAL(wp), PUBLIC ::  xprefz      = 1.0_wp    !: mesozoo preference for diatoms 
    37    REAL(wp), PUBLIC ::  xprefpoc    = 0.3_wp    !: mesozoo preference for POC  
    38    REAL(wp), PUBLIC ::  xthresh2zoo = 1E-8_wp    !: zoo feeding threshold for mesozooplankton  
    39    REAL(wp), PUBLIC ::  xthresh2dia = 1E-8_wp    !: diatoms feeding threshold for mesozooplankton  
    40    REAL(wp), PUBLIC ::  xthresh2phy = 2E-7_wp    !: nanophyto feeding threshold for mesozooplankton  
    41    REAL(wp), PUBLIC ::  xthresh2poc = 1E-8_wp    !: poc feeding threshold for mesozooplankton  
    42    REAL(wp), PUBLIC ::  xthresh2    = 0._wp      !: feeding threshold for mesozooplankton  
    43    REAL(wp), PUBLIC ::  resrat2     = 0.005_wp  !: exsudation rate of mesozooplankton 
    44    REAL(wp), PUBLIC ::  mzrat2      = 0.04_wp    !: microzooplankton mortality rate  
    45    REAL(wp), PUBLIC ::  grazrat2    = 0.9_wp    !: maximal mesozoo grazing rate 
    46    REAL(wp), PUBLIC ::  xkgraz2     = 20E-6_wp  !: non assimilated fraction of P by mesozoo  
    47    REAL(wp), PUBLIC ::  unass2      = 0.3_wp    !: Efficicency of mesozoo growth  
    48    REAL(wp), PUBLIC ::  sigma2      = 0.6_wp    !: Fraction of mesozoo excretion as DOM  
    49    REAL(wp), PUBLIC ::  epsher2     = 0.3_wp    !: half sturation constant for grazing 2 
    50    REAL(wp), PUBLIC ::  grazflux    = 3.E3_wp    !: mesozoo flux feeding rate 
     33   REAL(wp), PUBLIC ::  part2        !: part of calcite not dissolved in mesozoo guts 
     34   REAL(wp), PUBLIC ::  xprefc      !: mesozoo preference for POC  
     35   REAL(wp), PUBLIC ::  xprefp      !: mesozoo preference for nanophyto 
     36   REAL(wp), PUBLIC ::  xprefz      !: mesozoo preference for diatoms 
     37   REAL(wp), PUBLIC ::  xprefpoc    !: mesozoo preference for POC  
     38   REAL(wp), PUBLIC ::  xthresh2zoo !: zoo feeding threshold for mesozooplankton  
     39   REAL(wp), PUBLIC ::  xthresh2dia !: diatoms feeding threshold for mesozooplankton  
     40   REAL(wp), PUBLIC ::  xthresh2phy !: nanophyto feeding threshold for mesozooplankton  
     41   REAL(wp), PUBLIC ::  xthresh2poc !: poc feeding threshold for mesozooplankton  
     42   REAL(wp), PUBLIC ::  xthresh2    !: feeding threshold for mesozooplankton  
     43   REAL(wp), PUBLIC ::  resrat2      !: exsudation rate of mesozooplankton 
     44   REAL(wp), PUBLIC ::  mzrat2      !: microzooplankton mortality rate  
     45   REAL(wp), PUBLIC ::  grazrat2    !: maximal mesozoo grazing rate 
     46   REAL(wp), PUBLIC ::  xkgraz2      !: non assimilated fraction of P by mesozoo  
     47   REAL(wp), PUBLIC ::  unass2      !: Efficicency of mesozoo growth  
     48   REAL(wp), PUBLIC ::  sigma2      !: Fraction of mesozoo excretion as DOM  
     49   REAL(wp), PUBLIC ::  epsher2      !: half sturation constant for grazing 2 
     50   REAL(wp), PUBLIC ::  grazflux    !: mesozoo flux feeding rate 
    5151 
    5252   !!* Substitution 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmicro.F90

    r3875 r3901  
    3232 
    3333   !! * Shared module variables 
    34    REAL(wp), PUBLIC ::  part       = 0.5_wp    !: part of calcite not dissolved in microzoo guts 
    35    REAL(wp), PUBLIC ::  xpref2c    = 0.2_wp    !: microzoo preference for POC  
    36    REAL(wp), PUBLIC ::  xpref2p    = 1.0_wp    !: microzoo preference for nanophyto 
    37    REAL(wp), PUBLIC ::  xpref2d    = 0.6_wp    !: microzoo preference for diatoms 
    38    REAL(wp), PUBLIC ::  xthreshdia = 1E-8_wp    !: diatoms feeding threshold for microzooplankton  
    39    REAL(wp), PUBLIC ::  xthreshphy = 2E-7_wp    !: nanophyto threshold for microzooplankton  
    40    REAL(wp), PUBLIC ::  xthreshpoc = 1E-8_wp    !: poc threshold for microzooplankton  
    41    REAL(wp), PUBLIC ::  xthresh    = 0._wp      !: feeding threshold for microzooplankton  
    42    REAL(wp), PUBLIC ::  resrat     = 0.03_wp    !: exsudation rate of microzooplankton 
    43    REAL(wp), PUBLIC ::  mzrat      = 0.0_wp    !: microzooplankton mortality rate  
    44    REAL(wp), PUBLIC ::  grazrat    = 3.0_wp    !: maximal microzoo grazing rate 
    45    REAL(wp), PUBLIC ::  xkgraz     = 20E-6_wp  !: non assimilated fraction of P by microzoo  
    46    REAL(wp), PUBLIC ::  unass      = 0.3_wp    !: Efficicency of microzoo growth  
    47    REAL(wp), PUBLIC ::  sigma1     = 0.6_wp    !: Fraction of microzoo excretion as DOM  
    48    REAL(wp), PUBLIC ::  epsher     = 0.3_wp    !: half sturation constant for grazing 1  
     34   REAL(wp), PUBLIC ::  part        !: part of calcite not dissolved in microzoo guts 
     35   REAL(wp), PUBLIC ::  xpref2c    !: microzoo preference for POC  
     36   REAL(wp), PUBLIC ::  xpref2p    !: microzoo preference for nanophyto 
     37   REAL(wp), PUBLIC ::  xpref2d    !: microzoo preference for diatoms 
     38   REAL(wp), PUBLIC ::  xthreshdia !: diatoms feeding threshold for microzooplankton  
     39   REAL(wp), PUBLIC ::  xthreshphy !: nanophyto threshold for microzooplankton  
     40   REAL(wp), PUBLIC ::  xthreshpoc !: poc threshold for microzooplankton  
     41   REAL(wp), PUBLIC ::  xthresh    !: feeding threshold for microzooplankton  
     42   REAL(wp), PUBLIC ::  resrat      !: exsudation rate of microzooplankton 
     43   REAL(wp), PUBLIC ::  mzrat      !: microzooplankton mortality rate  
     44   REAL(wp), PUBLIC ::  grazrat    !: maximal microzoo grazing rate 
     45   REAL(wp), PUBLIC ::  xkgraz      !: non assimilated fraction of P by microzoo  
     46   REAL(wp), PUBLIC ::  unass      !: Efficicency of microzoo growth  
     47   REAL(wp), PUBLIC ::  sigma1      !: Fraction of microzoo excretion as DOM  
     48   REAL(wp), PUBLIC ::  epsher      !: half sturation constant for grazing 1  
    4949 
    5050 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmort.F90

    r3875 r3901  
    2727 
    2828   !! * Shared module variables 
    29    REAL(wp), PUBLIC :: wchl   = 0.001_wp !: 
    30    REAL(wp), PUBLIC :: wchld  = 0.02_wp  !: 
    31    REAL(wp), PUBLIC :: wchldm = 0.05_wp  !: 
    32    REAL(wp), PUBLIC :: mprat  = 0.01_wp  !: 
    33    REAL(wp), PUBLIC :: mprat2 = 0.01_wp  !: 
     29   REAL(wp), PUBLIC :: wchl    !: 
     30   REAL(wp), PUBLIC :: wchld  !: 
     31   REAL(wp), PUBLIC :: wchldm !: 
     32   REAL(wp), PUBLIC :: mprat  !: 
     33   REAL(wp), PUBLIC :: mprat2 !: 
    3434 
    3535 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zopt.F90

    r3875 r3901  
    3232   !! * Shared module variables 
    3333 
    34    LOGICAL  :: ln_varpar = .FALSE.    !: boolean for variable PAR fraction 
    35    REAL(wp) :: parlux    = 0.43_wp    !: Fraction of shortwave as PAR 
     34   LOGICAL  :: ln_varpar   !: boolean for variable PAR fraction 
     35   REAL(wp) :: parlux      !: Fraction of shortwave as PAR 
    3636   REAL(wp) :: xparsw                 !: parlux/3 
    3737 
     
    330330      IF( nn_timing == 1 )  CALL timing_start('p4z_opt_init') 
    331331 
    332       cn_dir  = './'            ! directory in which the model is executed 
    333       ! ... default values (NB: frequency positive => hours, negative => months) 
    334       !                  !   file       ! frequency !  variable   ! time intep !  clim   ! 'yearly' or ! weights  ! rotation   ! 
    335       !                  !   name       !  (hours)  !   name      !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs      ! 
    336       sn_par     = FLD_N( 'par_fraction',    24     ,  'fr_par'     ,  .true.    , .true.  ,   'yearly'  , ''       , ''         ) 
    337  
    338332      REWIND( numnatp_ref )              ! Namelist nampisopt in reference namelist : Pisces attenuation coef. and PAR 
    339333      READ  ( numnatp_ref, nampisopt, IOSTAT = ios, ERR = 901) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zprod.F90

    r3875 r3901  
    3232 
    3333   !! * Shared module variables 
    34    LOGICAL , PUBLIC ::  ln_newprod = .FALSE. 
    35    REAL(wp), PUBLIC ::  pislope    = 3.0_wp            !: 
    36    REAL(wp), PUBLIC ::  pislope2   = 3.0_wp            !: 
    37    REAL(wp), PUBLIC ::  excret     = 10.e-5_wp         !: 
    38    REAL(wp), PUBLIC ::  excret2    = 0.05_wp           !: 
    39    REAL(wp), PUBLIC ::  bresp      = 0.00333_wp        !: 
    40    REAL(wp), PUBLIC ::  chlcnm     = 0.033_wp          !: 
    41    REAL(wp), PUBLIC ::  chlcdm     = 0.05_wp           !: 
    42    REAL(wp), PUBLIC ::  chlcmin    = 0.00333_wp        !: 
    43    REAL(wp), PUBLIC ::  fecnm      = 10.E-6_wp         !: 
    44    REAL(wp), PUBLIC ::  fecdm      = 15.E-6_wp         !: 
    45    REAL(wp), PUBLIC ::  grosip     = 0.151_wp          !: 
     34   LOGICAL , PUBLIC ::  ln_newprod      !: 
     35   REAL(wp), PUBLIC ::  pislope         !: 
     36   REAL(wp), PUBLIC ::  pislope2        !: 
     37   REAL(wp), PUBLIC ::  excret          !: 
     38   REAL(wp), PUBLIC ::  excret2         !: 
     39   REAL(wp), PUBLIC ::  bresp           !: 
     40   REAL(wp), PUBLIC ::  chlcnm          !: 
     41   REAL(wp), PUBLIC ::  chlcdm          !: 
     42   REAL(wp), PUBLIC ::  chlcmin         !: 
     43   REAL(wp), PUBLIC ::  fecnm           !: 
     44   REAL(wp), PUBLIC ::  fecdm           !: 
     45   REAL(wp), PUBLIC ::  grosip          !: 
    4646 
    4747   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   prmax    !: optimal production = f(temperature) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zrem.F90

    r3875 r3901  
    3838 
    3939   !! * Shared module variables 
    40    REAL(wp), PUBLIC ::  xremik    = 0.3_wp    !: remineralisation rate of POC  
    41    REAL(wp), PUBLIC ::  xremip    = 0.025_wp  !: remineralisation rate of DOC 
    42    REAL(wp), PUBLIC ::  nitrif    = 0.05_wp    !: NH4 nitrification rate  
    43    REAL(wp), PUBLIC ::  xsirem    = 0.003_wp  !: remineralisation rate of POC  
    44    REAL(wp), PUBLIC ::  xsiremlab = 0.025_wp  !: fast remineralisation rate of POC  
    45    REAL(wp), PUBLIC ::  xsilab    = 0.31_wp    !: fraction of labile biogenic silica  
    46    REAL(wp), PUBLIC ::  oxymin    = 1.e-6_wp  !: halk saturation constant for anoxia  
     40   REAL(wp), PUBLIC ::  xremik    !: remineralisation rate of POC  
     41   REAL(wp), PUBLIC ::  xremip    !: remineralisation rate of DOC 
     42   REAL(wp), PUBLIC ::  nitrif    !: NH4 nitrification rate  
     43   REAL(wp), PUBLIC ::  xsirem    !: remineralisation rate of POC  
     44   REAL(wp), PUBLIC ::  xsiremlab !: fast remineralisation rate of POC  
     45   REAL(wp), PUBLIC ::  xsilab    !: fraction of labile biogenic silica  
     46   REAL(wp), PUBLIC ::  oxymin    !: halk saturation constant for anoxia  
    4747 
    4848 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsbc.F90

    r3875 r3901  
    2626 
    2727   !! * Shared module variables 
    28    LOGICAL , PUBLIC  :: ln_dust     = .FALSE.    !: boolean for dust input from the atmosphere 
    29    LOGICAL , PUBLIC  :: ln_solub    = .FALSE.    !: boolean for variable solubility of atmospheric iron 
    30    LOGICAL , PUBLIC  :: ln_river    = .FALSE.    !: boolean for river input of nutrients 
    31    LOGICAL , PUBLIC  :: ln_ndepo    = .FALSE.    !: boolean for atmospheric deposition of N 
    32    LOGICAL , PUBLIC  :: ln_ironsed  = .FALSE.    !: boolean for Fe input from sediments 
    33    LOGICAL , PUBLIC  :: ln_hydrofe  = .FALSE.    !: boolean for Fe input from hydrothermal vents 
    34    LOGICAL , PUBLIC  :: ln_ironice  = .FALSE.    !: boolean for Fe input from sea ice 
    35    REAL(wp), PUBLIC  :: sedfeinput  = 1.E-9_wp   !: Coastal release of Iron 
    36    REAL(wp), PUBLIC  :: dustsolub   = 0.014_wp   !: Solubility of the dust 
    37    REAL(wp), PUBLIC  :: icefeinput  = 10E-9_wp   !: Iron concentration in sea ice 
    38    REAL(wp), PUBLIC  :: wdust       = 2.0_wp     !: Sinking speed of the dust  
    39    REAL(wp), PUBLIC  :: nitrfix     = 1E-7_wp    !: Nitrogen fixation rate    
    40    REAL(wp), PUBLIC  :: diazolight  = 50._wp     !: Nitrogen fixation sensitivty to light  
    41    REAL(wp), PUBLIC  :: concfediaz  = 1.E-10_wp  !: Fe half-saturation Cste for diazotrophs  
    42    REAL(wp)          :: hratio      = 9.E-5_wp   !: Fe:3He ratio assumed for vent iron supply 
     28   LOGICAL , PUBLIC  :: ln_dust     !: boolean for dust input from the atmosphere 
     29   LOGICAL , PUBLIC  :: ln_solub    !: boolean for variable solubility of atmospheric iron 
     30   LOGICAL , PUBLIC  :: ln_river    !: boolean for river input of nutrients 
     31   LOGICAL , PUBLIC  :: ln_ndepo    !: boolean for atmospheric deposition of N 
     32   LOGICAL , PUBLIC  :: ln_ironsed  !: boolean for Fe input from sediments 
     33   LOGICAL , PUBLIC  :: ln_hydrofe  !: boolean for Fe input from hydrothermal vents 
     34   LOGICAL , PUBLIC  :: ln_ironice  !: boolean for Fe input from sea ice 
     35   REAL(wp), PUBLIC  :: sedfeinput  !: Coastal release of Iron 
     36   REAL(wp), PUBLIC  :: dustsolub   !: Solubility of the dust 
     37   REAL(wp), PUBLIC  :: icefeinput  !: Iron concentration in sea ice 
     38   REAL(wp), PUBLIC  :: wdust       !: Sinking speed of the dust  
     39   REAL(wp), PUBLIC  :: nitrfix     !: Nitrogen fixation rate    
     40   REAL(wp), PUBLIC  :: diazolight  !: Nitrogen fixation sensitivty to light  
     41   REAL(wp), PUBLIC  :: concfediaz  !: Fe half-saturation Cste for diazotrophs  
     42   REAL(wp)          :: hratio      !: Fe:3He ratio assumed for vent iron supply 
    4343 
    4444   LOGICAL , PUBLIC  :: ll_sbc 
     
    210210      ! 
    211211      !                            !* set file information 
    212       cn_dir  = './'            ! directory in which the model is executed 
    213       ! ... default values (NB: frequency positive => hours, negative => months) 
    214       !                  !   file       ! frequency !  variable   ! time intep !  clim   ! 'yearly' or ! weights  ! rotation   ! 
    215       !                  !   name       !  (hours)  !   name      !   (T/F)    !  (T/F)  !  'monthly'  ! filename ! pairs      ! 
    216       sn_dust     = FLD_N( 'dust'       ,    -1     ,  'dust'     ,  .true.    , .true.  ,   'yearly'  , ''       , ''         ) 
    217       sn_solub    = FLD_N( 'solubility' ,    -12    ,  'solub'    ,  .true.    , .true.  ,   'yearly'  , ''       , ''         ) 
    218       sn_riverdic = FLD_N( 'river'      ,   -12     ,  'riverdic' ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    219       sn_riverdoc = FLD_N( 'river'      ,   -12     ,  'riverdoc' ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    220       sn_riverdin = FLD_N( 'river'      ,   -12     ,  'riverdin' ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    221       sn_riverdon = FLD_N( 'river'      ,   -12     ,  'riverdon' ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    222       sn_riverdip = FLD_N( 'river'      ,   -12     ,  'riverdip' ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    223       sn_riverdop = FLD_N( 'river'      ,   -12     ,  'riverdop' ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    224       sn_riverdsi = FLD_N( 'river'      ,   -12     ,  'riverdsi' ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    225       sn_ndepo    = FLD_N( 'ndeposition',   -12     ,  'ndep'     ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    226       sn_ironsed  = FLD_N( 'ironsed'    ,   -12     ,  'bathy'    ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    227       sn_hydrofe  = FLD_N( 'hydrofe'    ,   -12     ,  'hydro'    ,  .false.   , .true.  ,   'yearly'  , ''       , ''         ) 
    228212 
    229213      REWIND( numnatp_ref )              ! Namelist nampissbc in reference namelist : Pisces external sources of nutrients 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsink.F90

    r3875 r3901  
    4444 
    4545#if  defined key_kriest 
    46    REAL(wp) ::  xkr_sfact    = 250.     !: Sinking factor 
    47    REAL(wp) ::  xkr_stick    = 0.2      !: Stickiness 
    48    REAL(wp) ::  xkr_nnano    = 2.337    !: Nbr of cell in nano size class 
    49    REAL(wp) ::  xkr_ndiat    = 3.718    !: Nbr of cell in diatoms size class 
    50    REAL(wp) ::  xkr_nmicro   = 3.718    !: Nbr of cell in microzoo size class 
    51    REAL(wp) ::  xkr_nmeso    = 7.147    !: Nbr of cell in mesozoo  size class 
    52    REAL(wp) ::  xkr_naggr    = 9.877    !: Nbr of cell in aggregates  size class 
     46   REAL(wp) ::  xkr_sfact    !: Sinking factor 
     47   REAL(wp) ::  xkr_stick    !: Stickiness 
     48   REAL(wp) ::  xkr_nnano    !: Nbr of cell in nano size class 
     49   REAL(wp) ::  xkr_ndiat    !: Nbr of cell in diatoms size class 
     50   REAL(wp) ::  xkr_nmicro   !: Nbr of cell in microzoo size class 
     51   REAL(wp) ::  xkr_nmeso    !: Nbr of cell in mesozoo  size class 
     52   REAL(wp) ::  xkr_naggr    !: Nbr of cell in aggregates  size class 
    5353 
    5454   REAL(wp) ::  xkr_frac  
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsms.F90

    r3875 r3901  
    145145      CALL p4z_chk_mass( kt ) ! Mass conservation checking 
    146146 
     147      IF ( kt == nittrc000 ) CALL FLUSH    ( numonp )     ! flush output namelist PISCES 
    147148      IF( nn_timing == 1 )  CALL timing_stop('p4z_sms') 
    148149      ! 
     
    193194      !                               ! nampiskrp : kriest parameters 
    194195      !                               ! ----------------------------- 
    195       xkr_eta      = 0.62 
    196       xkr_zeta     = 1.62 
    197       xkr_ncontent = 5.7E-6 
    198       xkr_mass_min = 0.0002 
    199       xkr_mass_max = 1. 
    200  
    201196      REWIND( numnatp_ref )              ! Namelist nampiskrp in reference namelist : Pisces Kriest 
    202197      READ  ( numnatp_ref, nampiskrp, IOSTAT = ios, ERR = 903) 
     
    225220#endif 
    226221 
    227       ln_pisdmp = .true. 
    228       nn_pisdmp = 1 
    229       ln_pisclo = .false. 
    230  
    231222      REWIND( numnatp_ref )              ! Namelist nampisdmp in reference namelist : Pisces damping 
    232223      READ  ( numnatp_ref, nampisdmp, IOSTAT = ios, ERR = 905) 
     
    247238      ENDIF 
    248239 
    249       ln_check_mass = .false. 
    250240      REWIND( numnatp_ref )              ! Namelist nampismass in reference namelist : Pisces mass conservation check 
    251241      READ  ( numnatp_ref, nampismass, IOSTAT = ios, ERR = 907) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/trcnam_pisces.F90

    r3875 r3901  
    7878         ! Namelist nampisdia 
    7979         ! ------------------- 
    80          DO jl = 1, jp_pisces_2d 
    81             WRITE(pisdia2d(jl)%sname,'("2D_",I1)') jl                      ! short name 
    82             WRITE(pisdia2d(jl)%lname,'("2D DIAGNOSTIC NUMBER ",I2)') jl    ! long name 
    83             pisdia2d(jl)%units = ' '                                       ! units 
    84          END DO 
    85          !                                 ! 3D output arrays 
    86          DO jl = 1, jp_pisces_3d 
    87             WRITE(pisdia3d(jl)%sname,'("3D_",I1)') jl                      ! short name 
    88             WRITE(pisdia3d(jl)%lname,'("3D DIAGNOSTIC NUMBER ",I2)') jl    ! long name 
    89             pisdia3d(jl)%units = ' '                                       ! units 
    90          END DO 
    91  
    9280         REWIND( numnatp_ref )              ! Namelist nampisdia in reference namelist : Pisces diagnostics 
    9381         READ  ( numnatp_ref, nampisdia, IOSTAT = ios, ERR = 901) 
     
    139127         ! Namelist nampisdbi 
    140128         ! ------------------- 
    141          DO jl = 1, jp_pisces_trd 
    142             IF(     jl <  10 ) THEN   ;   WRITE (pisdiabio(jl)%sname,'("BIO_",I1)') jl      ! short name 
    143             ELSEIF (jl < 100 ) THEN   ;   WRITE (pisdiabio(jl)%sname,'("BIO_",I2)') jl 
    144             ELSE                      ;   WRITE (pisdiabio(jl)%sname,'("BIO_",I3)') jl 
    145             ENDIF 
    146             WRITE(pisdiabio(jl)%lname,'("BIOLOGICAL TREND NUMBER ",I2)') jl                 ! long name 
    147             pisdiabio(jl)%units = 'mmoleN/m3/s '                                            ! units 
    148          END DO 
    149  
    150129         REWIND( numnatp_ref )              ! Namelist nampisdbi in reference namelist : Pisces add. diagnostics 
    151130         READ  ( numnatp_ref, nampisdbi, IOSTAT = ios, ERR = 903) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/PISCES/trcsms_pisces.F90

    r3680 r3901  
    5151      ELSE               ;   CALL p2z_sms( kt )   !  LOBSTER 
    5252      ENDIF 
     53 
    5354      ! 
    5455   END SUBROUTINE trc_sms_pisces 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/TRP/trcdmp.F90

    r3294 r3901  
    3434   LOGICAL , PUBLIC, PARAMETER ::   lk_trcdmp = .TRUE.   !: internal damping flag 
    3535 
    36    !                                !!* Namelist namtrc_dmp : passive tracer newtonian damping * 
    37    INTEGER  ::   nn_hdmp_tr =   -1   ! = 0/-1/'latitude' for damping over passive tracer 
    38    INTEGER  ::   nn_zdmp_tr =    0   ! = 0/1/2 flag for damping in the mixed layer 
    39    REAL(wp) ::   rn_surf_tr =   50.  ! surface time scale for internal damping        [days] 
    40    REAL(wp) ::   rn_bot_tr  =  360.  ! bottom time scale for internal damping         [days] 
    41    REAL(wp) ::   rn_dep_tr  =  800.  ! depth of transition between rn_surf and rn_bot [meters] 
    42    INTEGER  ::   nn_file_tr =    2   ! = 1 create a damping.coeff NetCDF file  
     36   !                          !!* Namelist namtrc_dmp : passive tracer newtonian damping * 
     37   INTEGER  ::   nn_hdmp_tr    ! = 0/-1/'latitude' for damping over passive tracer 
     38   INTEGER  ::   nn_zdmp_tr    ! = 0/1/2 flag for damping in the mixed layer 
     39   REAL(wp) ::   rn_surf_tr    ! surface time scale for internal damping        [days] 
     40   REAL(wp) ::   rn_bot_tr     ! bottom time scale for internal damping         [days] 
     41   REAL(wp) ::   rn_dep_tr     ! depth of transition between rn_surf and rn_bot [meters] 
     42   INTEGER  ::   nn_file_tr    ! = 1 create a damping.coeff NetCDF file  
    4343 
    4444   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   restotr   ! restoring coeff. on tracers (s-1) 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/TRP/trcnam_trp.F90

    r3875 r3901  
    2222   PUBLIC   trc_nam_trp    ! routine called by step module 
    2323  
    24    !                                                 !!: ** Advection (nam_trcadv) ** 
    25    LOGICAL , PUBLIC ::   ln_trcadv_cen2   = .FALSE.   ! 2nd order centered scheme flag 
    26    LOGICAL , PUBLIC ::   ln_trcadv_tvd    = .TRUE.    ! TVD scheme flag 
    27    LOGICAL , PUBLIC ::   ln_trcadv_muscl  = .FALSE.   ! MUSCL scheme flag 
    28    LOGICAL , PUBLIC ::   ln_trcadv_muscl2 = .FALSE.   ! MUSCL2 scheme flag 
    29    LOGICAL , PUBLIC ::   ln_trcadv_ubs    = .FALSE.   ! UBS scheme flag 
    30    LOGICAL , PUBLIC ::   ln_trcadv_qck    = .FALSE.   ! QUICKEST scheme flag 
    31    LOGICAL , PUBLIC ::   ln_trcadv_msc_ups= .FALSE.   ! use upstream scheme within muscl 
    32  
    33  
    34    !                                                 !!: ** lateral mixing namelist (nam_trcldf) ** 
    35    LOGICAL , PUBLIC ::   ln_trcldf_diff  = .FALSE.    !: flag of perform or not the lateral diff. 
    36    LOGICAL , PUBLIC ::   ln_trcldf_lap   = .TRUE.     !: laplacian operator 
    37    LOGICAL , PUBLIC ::   ln_trcldf_bilap = .FALSE.    !: bilaplacian operator 
    38    LOGICAL , PUBLIC ::   ln_trcldf_level = .FALSE.    !: iso-level direction 
    39    LOGICAL , PUBLIC ::   ln_trcldf_hor   = .FALSE.    !: horizontal (geopotential) direction 
    40    LOGICAL , PUBLIC ::   ln_trcldf_iso   = .TRUE.     !: iso-neutral direction 
    41    REAL(wp), PUBLIC ::   rn_ahtrc_0                   !: diffusivity coefficient for passive tracer (m2/s) 
    42    REAL(wp), PUBLIC ::   rn_ahtrb_0                   !: background diffusivity coefficient for passive tracer (m2/s) 
    43  
    44    !                                                 !!: ** Treatment of Negative concentrations ( nam_trcrad ) 
    45    LOGICAL , PUBLIC ::   ln_trcrad       = .TRUE.     !: flag to artificially correct negative concentrations 
    46  
    47    !                                                 !!: ** Vertical diffusion (nam_trczdf) ** 
    48    LOGICAL , PUBLIC ::   ln_trczdf_exp = .FALSE.      !: explicit vertical diffusion scheme flag 
    49    INTEGER , PUBLIC ::   nn_trczdf_exp = 3             !: number of sub-time step (explicit time stepping) 
     24   !                                        !!: ** Advection (namtrc_adv) ** 
     25   LOGICAL , PUBLIC ::   ln_trcadv_cen2      ! 2nd order centered scheme flag 
     26   LOGICAL , PUBLIC ::   ln_trcadv_tvd       ! TVD scheme flag 
     27   LOGICAL , PUBLIC ::   ln_trcadv_muscl     ! MUSCL scheme flag 
     28   LOGICAL , PUBLIC ::   ln_trcadv_muscl2    ! MUSCL2 scheme flag 
     29   LOGICAL , PUBLIC ::   ln_trcadv_ubs       ! UBS scheme flag 
     30   LOGICAL , PUBLIC ::   ln_trcadv_qck       ! QUICKEST scheme flag 
     31   LOGICAL , PUBLIC ::   ln_trcadv_msc_ups   ! use upstream scheme within muscl 
     32 
     33 
     34   !                                        !!: ** lateral mixing namelist (nam_trcldf) ** 
     35   LOGICAL , PUBLIC ::   ln_trcldf_diff      !: flag of perform or not the lateral diff. 
     36   LOGICAL , PUBLIC ::   ln_trcldf_lap       !: laplacian operator 
     37   LOGICAL , PUBLIC ::   ln_trcldf_bilap     !: bilaplacian operator 
     38   LOGICAL , PUBLIC ::   ln_trcldf_level     !: iso-level direction 
     39   LOGICAL , PUBLIC ::   ln_trcldf_hor       !: horizontal (geopotential) direction 
     40   LOGICAL , PUBLIC ::   ln_trcldf_iso       !: iso-neutral direction 
     41   REAL(wp), PUBLIC ::   rn_ahtrc_0          !: diffusivity coefficient for passive tracer (m2/s) 
     42   REAL(wp), PUBLIC ::   rn_ahtrb_0          !: background diffusivity coefficient for passive tracer (m2/s) 
     43 
     44   !                                        !!: ** Treatment of Negative concentrations ( nam_trcrad ) 
     45   LOGICAL , PUBLIC ::   ln_trcrad           !: flag to artificially correct negative concentrations 
     46 
     47   !                                        !!: ** Vertical diffusion (nam_trczdf) ** 
     48   LOGICAL , PUBLIC ::   ln_trczdf_exp       !: explicit vertical diffusion scheme flag 
     49   INTEGER , PUBLIC ::   nn_trczdf_exp       !: number of sub-time step (explicit time stepping) 
    5050 
    5151 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/trcdta.F90

    r3875 r3901  
    5959      REAL(wp)           :: zfact 
    6060      ! 
    61       CHARACTER(len=100) :: cn_dir 
     61      CHARACTER(len=100)            :: cn_dir 
    6262      TYPE(FLD_N), DIMENSION(jptra) :: slf_i     ! array of namelist informations on the fields to read 
    6363      TYPE(FLD_N), DIMENSION(jptra) :: sn_trcdta 
    64       REAL(wp)   , DIMENSION(jptra) :: rn_trfac    ! multiplicative factor for tracer values 
     64      REAL(wp)   , DIMENSION(jptra) :: rn_trfac  ! multiplicative factor for tracer values 
    6565      !! 
    6666      NAMELIST/namtrc_dta/ sn_trcdta, cn_dir, rn_trfac  
     
    9191         WRITE(numout,*) ' ' 
    9292      ENDIF 
    93       !                         ! allocate the arrays (if necessary) 
    94       ! 
    95       cn_dir  = './'            ! directory in which the model is executed 
     93      ! 
    9694      DO jn = 1, jptra 
    9795         WRITE( clndta,'("TR_",I1)' ) jn 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/trcnam.F90

    r3875 r3901  
    7878      CALL ctl_opn( numont    , 'output.namelist.top', 'REPLACE', 'FORMATTED', 'SEQUENTIAL',-1, numout, .FALSE. ) 
    7979 
    80       ! Namelist nattrc (files) 
    81       ! ---------------------------------------------- 
    82       nn_dttrc      = 1                 ! default values 
    83       nn_writetrc   = 10  
    84       ln_top_euler  = .FALSE. 
    85       ln_rsttr      = .FALSE. 
    86       nn_rsttr      =  0 
    87       cn_trcrst_in  = 'restart_trc' 
    88       cn_trcrst_out = 'restart_trc' 
    89       ! 
    90       DO jn = 1, jptra 
    91          WRITE( sn_tracer(jn)%clsname,'("TR_",I1)'           ) jn 
    92          WRITE( sn_tracer(jn)%cllname,'("TRACER NUMBER ",I1)') jn 
    93          sn_tracer(jn)%clunit  = 'mmole/m3' 
    94          sn_tracer(jn)%llinit  = .FALSE. 
    95          sn_tracer(jn)%llsave  = .TRUE. 
    96       END DO 
    97       ln_trcdta = .FALSE. 
    98       ln_trcdmp = .FALSE. 
    99  
    10080      REWIND( numnat_ref )              ! Namelist namtrc in reference namelist : Passive tracer variables 
    10181      READ  ( numnat_ref, namtrc, IOSTAT = ios, ERR = 901) 
     
    145125      ENDIF 
    146126 
    147       ln_diatrc = .FALSE. 
    148       ln_diabio = .FALSE. 
    149       nn_writedia = 10 
    150       nn_writebio = 10 
    151  
    152127      REWIND( numnat_ref )              ! Namelist namtrc_dia in reference namelist : Passive tracer diagnostics 
    153128      READ  ( numnat_ref, namtrc_dia, IOSTAT = ios, ERR = 903) 
     
    226201 
    227202#if defined key_trdmld_trc || defined key_trdtrc 
    228          nn_trd_trc  = 20 
    229          nn_ctls_trc =  9 
    230          rn_ucf_trc   =  1. 
    231          ln_trdmld_trc_instant = .TRUE. 
    232          ln_trdmld_trc_restart =.FALSE. 
    233          cn_trdrst_trc_in  = "restart_mld_trc" 
    234          cn_trdrst_trc_out = "restart_mld_trc" 
    235          ln_trdtrc(:) = .FALSE. 
    236203 
    237204         REWIND( numnat_ref )              ! Namelist namtrc_trd in reference namelist : Passive tracer trends 
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/TOP_SRC/trcstp.F90

    r3680 r3901  
    8484                                   CALL trc_sms      ( kt )       ! tracers: sinks and sources 
    8585                                   CALL trc_trp      ( kt )       ! transport of passive tracers 
    86          IF( kt == nittrc000 )     CALL iom_close( numrtr )       ! close input tracer restart file 
     86         IF( kt == nittrc000 ) THEN 
     87            CALL iom_close( numrtr )       ! close input tracer restart file 
     88            CALL FLUSH    ( numont )       ! flush namelist output 
     89         ENDIF 
    8790         IF( lrst_trc )            CALL trc_rst_wri  ( kt )       ! write tracer restart file 
    8891         IF( lk_trdmld_trc  )      CALL trd_mld_trc  ( kt )       ! trends: Mixed-layer 
Note: See TracChangeset for help on using the changeset viewer.