MODULE sbc_oce !!====================================================================== !! *** MODULE sbc_oce *** !! Surface module : variables defined in core memory !!====================================================================== !! History : 3.0 ! 2006-06 (G. Madec) Original code !! - ! 2008-08 (G. Madec) namsbc moved from sbcmod !! 3.3 ! 2010-04 (M. Leclair, G. Madec) Forcing averaged over 2 time steps !!---------------------------------------------------------------------- USE par_oce ! ocean parameters IMPLICIT NONE PRIVATE !!---------------------------------------------------------------------- !! Namelist for the Ocean Surface Boundary Condition !!---------------------------------------------------------------------- ! !! * namsbc namelist * LOGICAL , PUBLIC :: ln_ana = .FALSE. !: analytical boundary condition flag LOGICAL , PUBLIC :: ln_flx = .FALSE. !: flux formulation LOGICAL , PUBLIC :: ln_blk_clio = .FALSE. !: CLIO bulk formulation LOGICAL , PUBLIC :: ln_blk_core = .FALSE. !: CORE bulk formulation LOGICAL , PUBLIC :: ln_cpl = .FALSE. !: coupled formulation (overwritten by key_sbc_coupled ) LOGICAL , PUBLIC :: ln_dm2dc = .FALSE. !: Daily mean to Diurnal Cycle short wave (qsr) LOGICAL , PUBLIC :: ln_rnf = .FALSE. !: runoffs / runoff mouths LOGICAL , PUBLIC :: ln_ssr = .FALSE. !: Sea Surface restoring on SST and/or SSS INTEGER , PUBLIC :: nn_ice = 0 !: flag on ice in the surface boundary condition (=0/1/2/3) INTEGER , PUBLIC :: nn_fwb = 0 !: FreshWater Budget control : ! !: = 0 unchecked ! !: = 1 global mean of e-p-r set to zero at each nn_fsbc time step ! !: = 2 annual global mean of e-p-r set to zero INTEGER , PUBLIC :: nn_ico_cpl = 0 !: ice-ocean coupling indicator ! !: = 0 LIM-3 old case ! !: = 1 stresses computed using now ocean velocity ! !: = 2 combination of 0 and 1 cases !!---------------------------------------------------------------------- !! Ocean Surface Boundary Condition fields !!---------------------------------------------------------------------- LOGICAL , PUBLIC :: lhftau = .FALSE. !: HF tau used in TKE: mean(stress module) - module(mean stress) !! !! now ! before !! REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: utau , utau_b !: sea surface i-stress (ocean referential) [N/m2] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: vtau , vtau_b !: sea surface j-stress (ocean referential) [N/m2] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: taum !: module of sea surface stress (at T-point) [N/m2] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: wndm !: wind speed module at T-point (=|U10m-Uoce|) [m/s] !! wndm is used only in PISCES to compute surface gases exchanges in ice-free ocean or leads REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: qsr , qsr_b !: sea heat flux: solar [W/m2] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: qns , qns_b !: sea heat flux: non solar [W/m2] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: qsr_tot !: total solar heat flux (over sea and ice) [W/m2] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: qns_tot !: total non solar heat flux (over sea and ice) [W/m2] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: emp , emp_b !: freshwater budget: volume flux [Kg/m2/s] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: emps , emps_b !: freshwater budget: concentration/dillution [Kg/m2/s] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: emp_tot !: total E-P-R over ocean and ice [Kg/m2/s] ! - ML - beginning REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: sbc_trd_hc_n !: sbc heat content trend now [K/m/s] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: sbc_trd_hc_b !: " " " " before " REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: sbc_trd_sc_n !: sbc salt content trend now [psu/m/s] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: sbc_trd_sc_b !: " " " " before " REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) :: qsr_trd_hc_n !: heat content trend due to qsr flux now [K/m/s] REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) :: qsr_trd_hc_b !: " " " " " " " before " ! - ML - end REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: tprecip !: total precipitation [Kg/m2/s] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: sprecip !: solid precipitation [Kg/m2/s] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: fr_i !: ice fraction = 1 - lead fraction (between 0 to 1) #if defined key_cpl_carbon_cycle REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: atm_co2 !: atmospheric pCO2 [ppm] #endif !!$ REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: rrunoff !: runoff !!$ REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: calving !: calving !!---------------------------------------------------------------------- !! Sea Surface Mean fields !!---------------------------------------------------------------------- INTEGER , PUBLIC :: nn_fsbc !: frequency of sbc computation (as well as sea-ice model) REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: ssu_m !: mean (nn_fsbc time-step) surface sea i-current (U-point) [m/s] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: ssv_m !: mean (nn_fsbc time-step) surface sea j-current (V-point) [m/s] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: sst_m !: mean (nn_fsbc time-step) surface sea temperature [Celsius] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: sss_m !: mean (nn_fsbc time-step) surface sea salinity [psu] REAL(wp), PUBLIC, DIMENSION(jpi,jpj) :: ssh_m !: mean (nn_fsbc time-step) sea surface height [m] !!---------------------------------------------------------------------- !! NEMO/OPA 3.3 , LOCEAN-IPSL (2010) !! $Id$ !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt) !!====================================================================== END MODULE sbc_oce