- Timestamp:
- 2016-08-29T17:55:22+02:00 (8 years ago)
- Location:
- branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_clio.F90
r5836 r6900 215 215 !!---------------------------------------------------------------------- 216 216 TYPE(fld), INTENT(in), DIMENSION(:) :: sf ! input data 217 REAL(wp) , INTENT(in), DIMENSION(jpi,jpj) :: pst ! surface temperature [Cel cius]217 REAL(wp) , INTENT(in), DIMENSION(jpi,jpj) :: pst ! surface temperature [Celsius] 218 218 !! 219 219 INTEGER :: ji, jj ! dummy loop indices … … 279 279 DO ji = 1, jpi 280 280 ! 281 zsst = pst(ji,jj) + rt0 ! converte Cel cius to Kelvin the SST281 zsst = pst(ji,jj) + rt0 ! converte Celsius to Kelvin the SST 282 282 ztatm = sf(jp_tair)%fnow(ji,jj,1) ! and set minimum value far above 0 K (=rt0 over land) 283 283 zcco1 = 1.0 - sf(jp_ccov)%fnow(ji,jj,1) ! fraction of clear sky ( 1 - cloud cover) … … 371 371 ! 372 372 qns(:,:) = zqlw(:,:) - zqsb(:,:) - zqla(:,:) & ! Downward Non Solar flux 373 & - zqla(:,:) * pst(:,:) * zcevap & ! remove evap. heat content at SST in Cel cius374 & + sf(jp_prec)%fnow(:,:,1) * sf(jp_tair)%fnow(:,:,1) * zcprec ! add precip. heat content at Tair in Cel cius373 & - zqla(:,:) * pst(:,:) * zcevap & ! remove evap. heat content at SST in Celsius 374 & + sf(jp_prec)%fnow(:,:,1) * sf(jp_tair)%fnow(:,:,1) * zcprec ! add precip. heat content at Tair in Celsius 375 375 qns(:,:) = qns(:,:) * tmask(:,:,1) 376 376 #if defined key_lim3 -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_core.F90
r6140 r6900 241 241 INTEGER , INTENT(in ) :: kt ! time step index 242 242 TYPE(fld), INTENT(inout), DIMENSION(:) :: sf ! input data 243 REAL(wp) , INTENT(in) , DIMENSION(:,:) :: pst ! surface temperature [Cel cius]243 REAL(wp) , INTENT(in) , DIMENSION(:,:) :: pst ! surface temperature [Celsius] 244 244 REAL(wp) , INTENT(in) , DIMENSION(:,:) :: pu ! surface current at U-point (i-component) [m/s] 245 245 REAL(wp) , INTENT(in) , DIMENSION(:,:) :: pv ! surface current at V-point (j-component) [m/s] … … 267 267 zcoef_qsatw = 0.98 * 640380. / rhoa 268 268 269 zst(:,:) = pst(:,:) + rt0 ! convert SST from Cel cius to Kelvin (and set minimum value far above 0 K)269 zst(:,:) = pst(:,:) + rt0 ! convert SST from Celsius to Kelvin (and set minimum value far above 0 K) 270 270 271 271 ! ----------------------------------------------------------------------------- ! -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90
r6165 r6900 555 555 WRITE(numout,*)' Additional received fields from OPA component : ' 556 556 ENDIF 557 WRITE(numout,*)' sea surface temperature (Cel cius) '557 WRITE(numout,*)' sea surface temperature (Celsius) ' 558 558 WRITE(numout,*)' sea surface salinity ' 559 559 WRITE(numout,*)' surface currents ' … … 710 710 WRITE(numout,*) 711 711 WRITE(numout,*)' sent fields to SAS component ' 712 WRITE(numout,*)' sea surface temperature (T before, Cel cius) '712 WRITE(numout,*)' sea surface temperature (T before, Celsius) ' 713 713 WRITE(numout,*)' sea surface salinity ' 714 714 WRITE(numout,*)' surface currents U,V on local grid and spherical coordinates' -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_if.F90
r6596 r6900 101 101 ! ( d rho / dt ) / ( d rho / ds ) ( s = 34, t = -1.8 ) 102 102 103 CALL eos_fzp( sss_m(:,:), fr_i(:,:) ) ! sea surface freezing temperature [Cel cius]103 CALL eos_fzp( sss_m(:,:), fr_i(:,:) ) ! sea surface freezing temperature [Celsius] 104 104 fr_i(:,:) = fr_i(:,:) * tmask(:,:,1) 105 105 -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90
r6717 r6900 19 19 !! sbc_init : read namsbc namelist 20 20 !! sbc : surface ocean momentum, heat and freshwater boundary conditions 21 !! sbc_final : Finalize CICE ice model (if used) 21 22 !!---------------------------------------------------------------------- 22 23 USE oce ! ocean dynamics and tracers … … 37 38 USE sbcice_cice ! surface boundary condition: CICE sea-ice model 38 39 USE sbccpl ! surface boundary condition: coupled florulation 39 USE usrdef_sbc ! user defined: surface boundary condition40 40 USE cpl_oasis3 ! OASIS routines for coupling 41 41 USE sbcssr ! surface boundary condition: sea surface restoring … … 47 47 USE sbcwave ! Wave module 48 48 USE bdy_par ! Require lk_bdy 49 USE usrdef_closea ! closed sea 49 USE usrdef_sbc ! user defined: surface boundary condition 50 USE usrdef_closea ! user defined: closed sea 50 51 ! 51 52 USE prtctl ! Print control (prt_ctl routine) … … 55 56 USE timing ! Timing 56 57 57 USE diurnal_bulk, ONLY: & 58 & ln_diurnal_only 58 USE diurnal_bulk, ONLY: ln_diurnal_only ! diurnal SST diagnostic 59 59 60 60 IMPLICIT NONE … … 67 67 68 68 !!---------------------------------------------------------------------- 69 !! NEMO/OPA 4.0 , NEMO-consortium (201 1)69 !! NEMO/OPA 4.0 , NEMO-consortium (2016) 70 70 !! $Id$ 71 71 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) … … 105 105 ENDIF 106 106 ! 107 REWIND( numnam_ref ) 107 REWIND( numnam_ref ) ! Namelist namsbc in reference namelist : Surface boundary 108 108 READ ( numnam_ref, namsbc, IOSTAT = ios, ERR = 901) 109 109 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc in reference namelist', lwp ) 110 110 ! 111 REWIND( numnam_cfg ) 111 REWIND( numnam_cfg ) ! Namelist namsbc in configuration namelist : Parameters of the run 112 112 READ ( numnam_cfg, namsbc, IOSTAT = ios, ERR = 902 ) 113 113 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsbc in configuration namelist', lwp ) … … 122 122 ! 123 123 IF(lwp) THEN ! Control print 124 WRITE(numout,*) ' Namelist namsbc (partly overwritten with CPP key setting)' 125 WRITE(numout,*) ' frequency update of sbc (and ice) nn_fsbc = ', nn_fsbc 126 WRITE(numout,*) ' Type of air-sea fluxes : ' 127 WRITE(numout,*) ' user defined formulation ln_usr = ', ln_usr 128 WRITE(numout,*) ' flux formulation ln_flx = ', ln_flx 129 WRITE(numout,*) ' CLIO bulk formulation ln_blk_clio = ', ln_blk_clio 130 WRITE(numout,*) ' CORE bulk formulation ln_blk_core = ', ln_blk_core 131 WRITE(numout,*) ' MFS bulk formulation ln_blk_mfs = ', ln_blk_mfs 132 WRITE(numout,*) ' Type of coupling (Ocean/Ice/Atmosphere) : ' 133 WRITE(numout,*) ' ocean-atmosphere coupled formulation ln_cpl = ', ln_cpl 134 WRITE(numout,*) ' forced-coupled mixed formulation ln_mixcpl = ', ln_mixcpl 135 WRITE(numout,*) ' OASIS coupling (with atm or sas) lk_oasis = ', lk_oasis 136 WRITE(numout,*) ' components of your executable nn_components = ', nn_components 137 WRITE(numout,*) ' Multicategory heat flux formulation (LIM3) nn_limflx = ', nn_limflx 138 WRITE(numout,*) ' Sea-ice : ' 139 WRITE(numout,*) ' ice management in the sbc (=0/1/2/3) nn_ice = ', nn_ice 140 WRITE(numout,*) ' ice-ocean embedded/levitating (=0/1/2) nn_ice_embd = ', nn_ice_embd 141 WRITE(numout,*) ' Misc. options of sbc : ' 142 WRITE(numout,*) ' Light penetration in temperature Eq. ln_traqsr = ', ln_traqsr 143 WRITE(numout,*) ' daily mean to diurnal cycle qsr ln_dm2dc = ', ln_dm2dc 144 WRITE(numout,*) ' Sea Surface Restoring on SST and/or SSS ln_ssr = ', ln_ssr 145 WRITE(numout,*) ' FreshWater Budget control (=0/1/2) nn_fwb = ', nn_fwb 146 WRITE(numout,*) ' Patm gradient added in ocean & ice Eqs. ln_apr_dyn = ', ln_apr_dyn 147 WRITE(numout,*) ' runoff / runoff mouths ln_rnf = ', ln_rnf 148 WRITE(numout,*) ' iceshelf formulation ln_isf = ', ln_isf 149 WRITE(numout,*) ' closed sea (=0/1) (set in namdom) nn_closea = ', nn_closea 150 WRITE(numout,*) ' nb of iterations if land-sea-mask applied nn_lsm = ', nn_lsm 151 WRITE(numout,*) ' surface wave ln_wave = ', ln_wave 124 WRITE(numout,*) ' Namelist namsbc (partly overwritten with CPP key setting)' 125 WRITE(numout,*) ' Frequency update of sbc (and ice) nn_fsbc = ', nn_fsbc 126 WRITE(numout,*) ' Type of air-sea fluxes : ' 127 WRITE(numout,*) ' user defined formulation ln_usr = ', ln_usr 128 WRITE(numout,*) ' flux formulation ln_flx = ', ln_flx 129 WRITE(numout,*) ' CLIO bulk formulation ln_blk_clio = ', ln_blk_clio 130 WRITE(numout,*) ' CORE bulk formulation ln_blk_core = ', ln_blk_core 131 WRITE(numout,*) ' MFS bulk formulation ln_blk_mfs = ', ln_blk_mfs 132 WRITE(numout,*) ' Type of coupling (Ocean/Ice/Atmosphere) : ' 133 WRITE(numout,*) ' ocean-atmosphere coupled formulation ln_cpl = ', ln_cpl 134 WRITE(numout,*) ' forced-coupled mixed formulation ln_mixcpl = ', ln_mixcpl 135 WRITE(numout,*) ' OASIS coupling (with atm or sas) lk_oasis = ', lk_oasis 136 WRITE(numout,*) ' components of your executable nn_components = ', nn_components 137 WRITE(numout,*) ' Multicategory heat flux formulation (LIM3) nn_limflx = ', nn_limflx 138 WRITE(numout,*) ' Sea-ice : ' 139 WRITE(numout,*) ' ice management in the sbc (=0/1/2/3) nn_ice = ', nn_ice 140 WRITE(numout,*) ' ice-ocean embedded/levitating (=0/1/2) nn_ice_embd = ', nn_ice_embd 141 WRITE(numout,*) ' Misc. options of sbc : ' 142 WRITE(numout,*) ' Light penetration in temperature Eq. ln_traqsr = ', ln_traqsr 143 WRITE(numout,*) ' daily mean to diurnal cycle qsr ln_dm2dc = ', ln_dm2dc 144 WRITE(numout,*) ' Sea Surface Restoring on SST and/or SSS ln_ssr = ', ln_ssr 145 WRITE(numout,*) ' FreshWater Budget control (=0/1/2) nn_fwb = ', nn_fwb 146 WRITE(numout,*) ' Patm gradient added in ocean & ice Eqs. ln_apr_dyn = ', ln_apr_dyn 147 WRITE(numout,*) ' runoff / runoff mouths ln_rnf = ', ln_rnf 148 WRITE(numout,*) ' iceshelf formulation ln_isf = ', ln_isf 149 WRITE(numout,*) ' closed sea (=0/1) (set in namdom) nn_closea = ', nn_closea 150 WRITE(numout,*) ' nb of iterations if land-sea-mask applied nn_lsm = ', nn_lsm 151 WRITE(numout,*) ' surface wave ln_wave = ', ln_wave 152 ENDIF 153 ! 154 IF( .NOT.ln_usr ) THEN ! the model calendar needs some specificities (except in user defined case) 155 IF( MOD( rday , rdt ) /= 0. ) CALL ctl_stop( 'the time step must devide the number of second of in a day' ) 156 IF( MOD( rday , 2. ) /= 0. ) CALL ctl_stop( 'the number of second of in a day must be an even number' ) 157 IF( MOD( rdt , 2. ) /= 0. ) CALL ctl_stop( 'the time step (in second) must be an even number' ) 152 158 ENDIF 153 159 ! -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC/sbcssm.F90
r6140 r6900 46 46 !! 47 47 !! ** Method : compute mean surface velocity (2 components at U and 48 !! V-points) [m/s], temperature [Cel cius] and salinity [psu] over48 !! V-points) [m/s], temperature [Celsius] and salinity [psu] over 49 49 !! the periode (kt - nn_fsbc) to kt 50 50 !! Note that the inverse barometer ssh (i.e. ssh associated with Patm) … … 137 137 ! ! ---------------------------------------- ! 138 138 zcoef = 1. / REAL( nn_fsbc, wp ) 139 sst_m(:,:) = sst_m(:,:) * zcoef ! mean SST [Cel cius]139 sst_m(:,:) = sst_m(:,:) * zcoef ! mean SST [Celsius] 140 140 sss_m(:,:) = sss_m(:,:) * zcoef ! mean SSS [psu] 141 141 ssu_m(:,:) = ssu_m(:,:) * zcoef ! mean suface current [m/s]
Note: See TracChangeset
for help on using the changeset viewer.