Changeset 12074
- Timestamp:
- 2019-12-05T17:54:17+01:00 (5 years ago)
- Location:
- NEMO/branches/2019/dev_ASINTER-01-05_merged
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_ASINTER-01-05_merged/cfgs/SHARED/namelist_ref
r12063 r12074 5 5 !! namelists 2 - Surface boundary (namsbc, namsbc_flx, namsbc_blk, namsbc_cpl, 6 6 !! namsbc_sas, namtra_qsr, namsbc_rnf, 7 !! namsbc_isf, namsbc_iscpl, namsbc_apr, 7 !! namsbc_isf, namsbc_iscpl, namsbc_apr, 8 8 !! namsbc_ssr, namsbc_wave, namberg) 9 9 !! 3 - lateral boundary (namlbc, namagrif, nambdy, nambdy_tide) … … 88 88 cn_domcfg = "domain_cfg" ! domain configuration filename 89 89 ! 90 ln_closea = .false. ! T => keep closed seas (defined by closea_mask field) in the 90 ln_closea = .false. ! T => keep closed seas (defined by closea_mask field) in the 91 91 ! ! domain and apply special treatment of freshwater fluxes. 92 ! ! F => suppress closed seas (defined by closea_mask field) 92 ! ! F => suppress closed seas (defined by closea_mask field) 93 93 ! ! from the bathymetry at runtime. 94 94 ! ! If closea_mask field doesn't exist in the domain_cfg file … … 106 106 ln_tsd_init = .false. ! ocean initialisation 107 107 ln_tsd_dmp = .false. ! T-S restoring (see namtra_dmp) 108 108 109 109 cn_dir = './' ! root directory for the T-S data location 110 110 !___________!_________________________!___________________!___________!_____________!________!___________!__________________!__________!_______________! … … 195 195 nn_fsbc = 2 ! frequency of SBC module call 196 196 ! ! (control sea-ice & iceberg model call) 197 ! Type of air-sea fluxes 197 ! Type of air-sea fluxes 198 198 ln_usr = .false. ! user defined formulation (T => check usrdef_sbc) 199 199 ln_flx = .false. ! flux formulation (T => fill namsbc_flx ) … … 206 206 ! ! =0 no opa-sas OASIS coupling: default single executable config. 207 207 ! ! =1 opa-sas OASIS coupling: multi executable config., OPA component 208 ! ! =2 opa-sas OASIS coupling: multi executable config., SAS component 208 ! ! =2 opa-sas OASIS coupling: multi executable config., SAS component 209 209 ! Sea-ice : 210 nn_ice = 0 ! =0 no ice boundary condition 210 nn_ice = 0 ! =0 no ice boundary condition 211 211 ! ! =1 use observed ice-cover ( => fill namsbc_iif ) 212 212 ! ! =2 or 3 automatically for SI3 or CICE ("key_si3" or "key_cice") … … 214 214 ln_ice_embd = .false. ! =T embedded sea-ice (pressure + mass and salt exchanges) 215 215 ! ! =F levitating ice (no pressure, mass and salt exchanges) 216 ! Misc. options of sbc : 216 ! Misc. options of sbc : 217 217 ln_traqsr = .false. ! Light penetration in the ocean (T => fill namtra_qsr) 218 218 ln_dm2dc = .false. ! daily mean to diurnal cycle on short wave … … 226 226 ln_wave = .false. ! Activate coupling with wave (T => fill namsbc_wave) 227 227 ln_cdgw = .false. ! Neutral drag coefficient read from wave model (T => ln_wave=.true. & fill namsbc_wave) 228 ln_sdw = .false. ! Read 2D Surf Stokes Drift & Computation of 3D stokes drift (T => ln_wave=.true. & fill namsbc_wave) 228 ln_sdw = .false. ! Read 2D Surf Stokes Drift & Computation of 3D stokes drift (T => ln_wave=.true. & fill namsbc_wave) 229 229 nn_sdrift = 0 ! Parameterization for the calculation of 3D-Stokes drift from the surface Stokes drift 230 230 ! ! = 0 Breivik 2015 parameterization: v_z=v_0*[exp(2*k*z)/(1-8*k*z)] … … 284 284 sn_tair = 't_10.15JUNE2009_fill' , 6. , 'T_10_MOD', .false. , .true. , 'yearly' , 'weights_core_orca2_bilinear_noc.nc' , '' , '' 285 285 sn_humi = 'q_10.15JUNE2009_fill' , 6. , 'Q_10_MOD', .false. , .true. , 'yearly' , 'weights_core_orca2_bilinear_noc.nc' , '' , '' 286 sn_hpgi = 'NONE' , 24. , 'uhpg' , .false. , .false., 'monthly' , 'weights_ERAI3D_F128_2_ORCA2_bicubic', 'UG' , '' 287 sn_hpgj = 'NONE' , 24. , 'vhpg' , .false. , .false., 'monthly' , 'weights_ERAI3D_F128_2_ORCA2_bicubic', 'VG' , '' 286 288 sn_prec = 'ncar_precip.15JUNE2009_fill', -1. , 'PRC_MOD1', .false. , .true. , 'yearly' , 'weights_core_orca2_bilinear_noc.nc' , '' , '' 287 289 sn_snow = 'ncar_precip.15JUNE2009_fill', -1. , 'SNOW' , .false. , .true. , 'yearly' , 'weights_core_orca2_bilinear_noc.nc' , '' , '' … … 410 412 nn_chldta = 0 ! RGB : Chl data (=1) or cst value (=0) 411 413 rn_si1 = 23.0 ! 2BD : longest depth of extinction 412 414 413 415 cn_dir = './' ! root directory for the chlorophyl data location 414 416 !___________!_________________________!___________________!___________!_____________!________!___________!__________________!__________!_______________! … … 474 476 / 475 477 !----------------------------------------------------------------------- 476 &namsbc_isf ! Top boundary layer (ISF) (ln_isfcav =T : read (ln_read_cfg=T) 478 &namsbc_isf ! Top boundary layer (ISF) (ln_isfcav =T : read (ln_read_cfg=T) 477 479 !----------------------------------------------------------------------- or set or usr_def_zgr ) 478 ! ! type of top boundary layer 480 ! ! type of top boundary layer 479 481 nn_isf = 1 ! ice shelf melting/freezing 480 ! 1 = presence of ISF ; 2 = bg03 parametrisation 482 ! 1 = presence of ISF ; 2 = bg03 parametrisation 481 483 ! 3 = rnf file for ISF ; 4 = ISF specified freshwater flux 482 484 ! options 1 and 4 need ln_isfcav = .true. (domzgr) … … 501 503 !* nn_isf = 3 case 502 504 sn_rnfisf = 'rnfisf' , -12. ,'sofwfisf' , .false. , .true. , 'yearly' , '' , '' , '' 503 !* nn_isf = 2 and 3 cases 505 !* nn_isf = 2 and 3 cases 504 506 sn_depmax_isf ='rnfisf' , -12. ,'sozisfmax', .false. , .true. , 'yearly' , '' , '' , '' 505 507 sn_depmin_isf ='rnfisf' , -12. ,'sozisfmin', .false. , .true. , 'yearly' , '' , '' , '' … … 508 510 / 509 511 !----------------------------------------------------------------------- 510 &namsbc_iscpl ! land ice / ocean coupling option (ln_isfcav =T : read (ln_read_cfg=T) 512 &namsbc_iscpl ! land ice / ocean coupling option (ln_isfcav =T : read (ln_read_cfg=T) 511 513 !----------------------------------------------------------------------- or set or usr_def_zgr ) 512 514 nn_drown = 10 ! number of iteration of the extrapolation loop (fill the new wet cells) … … 608 610 ln_read_load = .false. ! Or read load potential from file 609 611 cn_tide_load = 'tide_LOAD_grid_T.nc' ! filename for load potential 610 ! 612 ! 611 613 ln_tide_ramp = .false. ! Use linear ramp for tides at startup 612 614 rdttideramp = 0. ! ramp duration in days … … 687 689 filtide = 'bdydta/amm12_bdytide_' ! file name root of tidal forcing files 688 690 ln_bdytide_2ddta = .false. ! 689 ln_bdytide_conj = .false. ! 691 ln_bdytide_conj = .false. ! 690 692 / 691 693 … … 714 716 !----------------------------------------------------------------------- 715 717 rn_Cd0 = 1.e-3 ! drag coefficient [-] 716 rn_Uc0 = 0.4 ! ref. velocity [m/s] (linear drag=Cd0*Uc0) 718 rn_Uc0 = 0.4 ! ref. velocity [m/s] (linear drag=Cd0*Uc0) 717 719 rn_Cdmax = 0.1 ! drag value maximum [-] (logarithmic drag) 718 720 rn_ke0 = 2.5e-3 ! background kinetic energy [m2/s2] (non-linear cases) … … 725 727 !----------------------------------------------------------------------- 726 728 rn_Cd0 = 1.e-3 ! drag coefficient [-] 727 rn_Uc0 = 0.4 ! ref. velocity [m/s] (linear drag=Cd0*Uc0) 729 rn_Uc0 = 0.4 ! ref. velocity [m/s] (linear drag=Cd0*Uc0) 728 730 rn_Cdmax = 0.1 ! drag value maximum [-] (logarithmic drag) 729 731 rn_ke0 = 2.5e-3 ! background kinetic energy [m2/s2] (non-linear cases) … … 792 794 nn_cen_v = 4 ! =2/4, vertical 2nd order CEN / 4th order COMPACT 793 795 ln_traadv_fct = .false. ! FCT scheme 794 nn_fct_h = 2 ! =2/4, horizontal 2nd / 4th order 795 nn_fct_v = 2 ! =2/4, vertical 2nd / COMPACT 4th order 796 nn_fct_h = 2 ! =2/4, horizontal 2nd / 4th order 797 nn_fct_v = 2 ! =2/4, vertical 2nd / COMPACT 4th order 796 798 ln_traadv_mus = .false. ! MUSCL scheme 797 799 ln_mus_ups = .false. ! use upstream scheme near river mouths … … 814 816 ln_traldf_triad = .false. ! iso-neutral (triad operator) 815 817 ! 816 ! ! iso-neutral options: 818 ! ! iso-neutral options: 817 819 ln_traldf_msc = .false. ! Method of Stabilizing Correction (both operators) 818 820 rn_slpmax = 0.01 ! slope limit (both operators) … … 824 826 nn_aht_ijk_t = 0 ! space/time variation of eddy coefficient: 825 827 ! ! =-20 (=-30) read in eddy_diffusivity_2D.nc (..._3D.nc) file 826 ! ! = 0 constant 827 ! ! = 10 F(k) =ldf_c1d 828 ! ! = 20 F(i,j) =ldf_c2d 828 ! ! = 0 constant 829 ! ! = 10 F(k) =ldf_c1d 830 ! ! = 20 F(i,j) =ldf_c2d 829 831 ! ! = 21 F(i,j,t) =Treguier et al. JPO 1997 formulation 830 832 ! ! = 30 F(i,j,k) =ldf_c2d * ldf_c1d 831 833 ! ! = 31 F(i,j,k,t)=F(local velocity and grid-spacing) 832 ! ! time invariant coefficients: aht0 = 1/2 Ud*Ld (lap case) 834 ! ! time invariant coefficients: aht0 = 1/2 Ud*Ld (lap case) 833 835 ! ! or = 1/12 Ud*Ld^3 (blp case) 834 836 rn_Ud = 0.01 ! lateral diffusive velocity [m/s] (nn_aht_ijk_t= 0, 10, 20, 30) … … 856 858 nn_aei_ijk_t = 0 ! space/time variation of eddy coefficient: 857 859 ! ! =-20 (=-30) read in eddy_induced_velocity_2D.nc (..._3D.nc) file 858 ! ! = 0 constant 859 ! ! = 10 F(k) =ldf_c1d 860 ! ! = 20 F(i,j) =ldf_c2d 860 ! ! = 0 constant 861 ! ! = 10 F(k) =ldf_c1d 862 ! ! = 20 F(i,j) =ldf_c2d 861 863 ! ! = 21 F(i,j,t) =Treguier et al. JPO 1997 formulation 862 864 ! ! = 30 F(i,j,k) =ldf_c2d * ldf_c1d 863 ! ! time invariant coefficients: aei0 = 1/2 Ue*Le 865 ! ! time invariant coefficients: aei0 = 1/2 Ue*Le 864 866 rn_Ue = 0.02 ! lateral diffusive velocity [m/s] (nn_aht_ijk_t= 0, 10, 20, 30) 865 867 rn_Le = 200.e+3 ! lateral diffusive length [m] (nn_aht_ijk_t= 0, 10) … … 921 923 ln_dynvor_eeT = .false. ! energy conserving scheme (een using e3t) 922 924 ln_dynvor_een = .false. ! energy & enstrophy scheme 923 nn_een_e3f = 0 ! =0 e3f = mi(mj(e3t))/4 925 nn_een_e3f = 0 ! =0 e3f = mi(mj(e3t))/4 924 926 ! ! =1 e3f = mi(mj(e3t))/mi(mj( tmask)) 925 927 ln_dynvor_msk = .false. ! vorticity multiplied by fmask (=T) ==>>> PLEASE DO NOT ACTIVATE … … 966 968 ! ! =-30 read in eddy_viscosity_3D.nc file 967 969 ! ! =-20 read in eddy_viscosity_2D.nc file 968 ! ! = 0 constant 970 ! ! = 0 constant 969 971 ! ! = 10 F(k)=c1d 970 972 ! ! = 20 F(i,j)=F(grid spacing)=c2d … … 972 974 ! ! = 31 F(i,j,k)=F(grid spacing and local velocity) 973 975 ! ! = 32 F(i,j,k)=F(local gridscale and deformation rate) 974 ! ! time invariant coefficients : ahm = 1/2 Uv*Lv (lap case) 976 ! ! time invariant coefficients : ahm = 1/2 Uv*Lv (lap case) 975 977 ! ! or = 1/12 Uv*Lv^3 (blp case) 976 978 rn_Uv = 0.1 ! lateral viscous velocity [m/s] (nn_ahm_ijk_t= 0, 10, 20, 30) … … 1096 1098 ! = 0 constant 10 m length scale 1097 1099 ! = 1 0.5m at the equator to 30m poleward of 40 degrees 1098 rn_eice = 4 ! below sea ice: =0 ON ; =4 OFF when ice fraction > 1/4 1100 rn_eice = 4 ! below sea ice: =0 ON ; =4 OFF when ice fraction > 1/4 1099 1101 / 1100 1102 !----------------------------------------------------------------------- -
NEMO/branches/2019/dev_ASINTER-01-05_merged/src/OCE/SBC/sbcblk.F90
r12063 r12074 392 392 !!---------------------------------------------------------------------- 393 393 INTEGER, INTENT(in) :: kt ! ocean time step 394 !! 394 !!---------------------------------------------------------------------- 395 395 REAL(wp), DIMENSION(jpi,jpj) :: zssq, zcd_du, zsen, zevp 396 !!--------------------------------------------------------------------- 396 REAL(wp) :: ztmp 397 !!---------------------------------------------------------------------- 397 398 ! 398 399 CALL fld_read( kt, nn_fsbc, sf ) ! input fields provided at the current time-step 399 ! 400 401 ! Sanity/consistence test on humidity at first time step to detect potential screw-up: 402 IF( kt == nit000 ) THEN 403 WRITE(numout,*) '' 404 ztmp = SUM(tmask(:,:,1)) ! number of ocean points on local proc domain 405 IF( ztmp > 8._wp ) THEN ! test only on proc domains with at least 8 ocean points! 406 ztmp = SUM(sf(jp_humi)%fnow(:,:,1)*tmask(:,:,1))/ztmp ! mean humidity over ocean on proc 407 SELECT CASE( nhumi ) 408 CASE( np_humi_sph ) ! specific humidity => expect: 0. <= something < 0.065 [kg/kg] (0.061 is saturation at 45degC !!!) 409 IF( (ztmp < 0._wp) .OR. (ztmp > 0.065) ) ztmp = -1._wp 410 CASE( np_humi_dpt ) ! dew-point temperature => expect: 110. <= something < 320. [K] 411 IF( (ztmp < 110._wp).OR.(ztmp > 320._wp) ) ztmp = -1._wp 412 CASE( np_humi_rlh ) ! relative humidity => expect: 0. <= something < 100. [%] 413 IF( (ztmp < 0._wp) .OR.(ztmp > 100._wp) ) ztmp = -1._wp 414 END SELECT 415 IF(ztmp < 0._wp) THEN 416 WRITE(numout,'(" Mean humidity value found on proc #",i5.5," is: ",f)'), narea, ztmp 417 CALL ctl_stop( 'STOP', 'Something is wrong with air humidity!!!', & 418 & ' ==> check the unit in your input files' , & 419 & ' ==> check consistence of namelist choice: specific? relative? dew-point?', & 420 & ' ==> ln_humi_sph -> [kg/kg] | ln_humi_rlh -> [%] | ln_humi_dpt -> [K] !!!' ) 421 END IF 422 END IF 423 WRITE(numout,*) ' === Sanity/consistence test on air humidity sucessfuly passed! ===' 424 WRITE(numout,*) '' 425 END IF !IF( kt == nit000 ) 426 400 427 ! ! compute the surface ocean fluxes using bulk formulea 401 428 IF( MOD( kt - 1, nn_fsbc ) == 0 ) THEN -
NEMO/branches/2019/dev_ASINTER-01-05_merged/tests/STATION_ASF/EXPREF/namelist_coare3p6-noskin_cfg
r11996 r12074 148 148 sn_snow = 'Station_PAPA_50N-145W_precip_daily', 24., 'snow', .false. , .false. , 'yearly' , '' , '' , '' 149 149 sn_slp = 'Station_PAPA_50N-145W_atm_hourly', 1. , 'slp', .true. , .false. , 'yearly' , '' , '' , '' 150 sn_tdif = 'Station_PAPA_50N-145W_atm_hourly', 24. , 'taudif' , .false. , .false. , 'yearly' , '' , '' , '' 151 150 / 151 !----------------------------------------------------------------------- 152 &namsbc_abl ! Atmospheric Boundary Layer formulation (ln_abl = T) 153 !----------------------------------------------------------------------- 152 154 / 153 155 !----------------------------------------------------------------------- -
NEMO/branches/2019/dev_ASINTER-01-05_merged/tests/STATION_ASF/EXPREF/namelist_coare3p6_cfg
r11930 r12074 148 148 sn_snow = 'Station_PAPA_50N-145W_precip_daily', 24., 'snow', .false. , .false. , 'yearly' , '' , '' , '' 149 149 sn_slp = 'Station_PAPA_50N-145W_atm_hourly', 1. , 'slp', .true. , .false. , 'yearly' , '' , '' , '' 150 sn_tdif = 'Station_PAPA_50N-145W_atm_hourly', 24. , 'taudif' , .false. , .false. , 'yearly' , '' , '' , '' 151 150 / 151 !----------------------------------------------------------------------- 152 &namsbc_abl ! Atmospheric Boundary Layer formulation (ln_abl = T) 153 !----------------------------------------------------------------------- 152 154 / 153 155 !----------------------------------------------------------------------- -
NEMO/branches/2019/dev_ASINTER-01-05_merged/tests/STATION_ASF/EXPREF/namelist_ecmwf-noskin_cfg
r11996 r12074 148 148 sn_snow = 'Station_PAPA_50N-145W_precip_daily', 24., 'snow', .false. , .false. , 'yearly' , '' , '' , '' 149 149 sn_slp = 'Station_PAPA_50N-145W_atm_hourly', 1. , 'slp', .true. , .false. , 'yearly' , '' , '' , '' 150 sn_tdif = 'Station_PAPA_50N-145W_atm_hourly', 24. , 'taudif' , .false. , .false. , 'yearly' , '' , '' , '' 151 150 / 151 !----------------------------------------------------------------------- 152 &namsbc_abl ! Atmospheric Boundary Layer formulation (ln_abl = T) 153 !----------------------------------------------------------------------- 152 154 / 153 155 !----------------------------------------------------------------------- -
NEMO/branches/2019/dev_ASINTER-01-05_merged/tests/STATION_ASF/EXPREF/namelist_ecmwf_cfg
r11930 r12074 148 148 sn_snow = 'Station_PAPA_50N-145W_precip_daily', 24., 'snow', .false. , .false. , 'yearly' , '' , '' , '' 149 149 sn_slp = 'Station_PAPA_50N-145W_atm_hourly', 1. , 'slp', .true. , .false. , 'yearly' , '' , '' , '' 150 sn_tdif = 'Station_PAPA_50N-145W_atm_hourly', 24. , 'taudif' , .false. , .false. , 'yearly' , '' , '' , '' 151 150 / 151 !----------------------------------------------------------------------- 152 &namsbc_abl ! Atmospheric Boundary Layer formulation (ln_abl = T) 153 !----------------------------------------------------------------------- 152 154 / 153 155 !----------------------------------------------------------------------- -
NEMO/branches/2019/dev_ASINTER-01-05_merged/tests/STATION_ASF/EXPREF/namelist_ncar_cfg
r11930 r12074 122 122 ln_NCAR = .true. ! "NCAR" algorithm (Large and Yeager 2008) 123 123 ln_COARE_3p0 = .false. ! "COARE 3.0" algorithm (Fairall et al. 2003) 124 ln_COARE_3p6 = .false. ! "COARE 3. 5" algorithm (Edson et al. 2013)124 ln_COARE_3p6 = .false. ! "COARE 3.6" algorithm (Edson et al. 2013) 125 125 ln_ECMWF = .false. ! "ECMWF" algorithm (IFS cycle 31) 126 126 rn_zqt = 2.5 ! Air temperature & humidity reference height (m) [PAPA station] … … 148 148 sn_snow = 'Station_PAPA_50N-145W_precip_daily', 24., 'snow', .false. , .false. , 'yearly' , '' , '' , '' 149 149 sn_slp = 'Station_PAPA_50N-145W_atm_hourly', 1. , 'slp', .true. , .false. , 'yearly' , '' , '' , '' 150 sn_tdif = 'Station_PAPA_50N-145W_atm_hourly', 24. , 'taudif' , .false. , .false. , 'yearly' , '' , '' , '' 151 150 / 151 !----------------------------------------------------------------------- 152 &namsbc_abl ! Atmospheric Boundary Layer formulation (ln_abl = T) 153 !----------------------------------------------------------------------- 152 154 / 153 155 !-----------------------------------------------------------------------
Note: See TracChangeset
for help on using the changeset viewer.