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.
sbc_oce.F90 in branches/DEV_r1837_MLF/NEMO/OPA_SRC/SBC – NEMO

source: branches/DEV_r1837_MLF/NEMO/OPA_SRC/SBC/sbc_oce.F90 @ 1975

Last change on this file since 1975 was 1975, checked in by mlelod, 14 years ago

ticket: #663 MLF: first part

  • Property svn:keywords set to Id
File size: 6.7 KB
Line 
1MODULE sbc_oce
2   !!======================================================================
3   !!                       ***  MODULE  sbc_oce  ***
4   !! Surface module :   variables defined in core memory
5   !!======================================================================
6   !! History :  3.0  !  2006-06  (G. Madec)  Original code
7   !!             -   !  2008-08  (G. Madec)  namsbc moved from sbcmod
8   !!            3.3  !  2010-04  (M. Leclair, G. Madec)  Forcing averaged over 2 time steps
9   !!----------------------------------------------------------------------
10   USE par_oce          ! ocean parameters
11
12   IMPLICIT NONE
13   PRIVATE
14   
15   !!----------------------------------------------------------------------
16   !!           Namelist for the Ocean Surface Boundary Condition
17   !!----------------------------------------------------------------------
18   !                                             !! * namsbc namelist *
19   LOGICAL , PUBLIC ::   ln_ana      = .FALSE.   !: analytical boundary condition flag
20   LOGICAL , PUBLIC ::   ln_flx      = .FALSE.   !: flux      formulation
21   LOGICAL , PUBLIC ::   ln_blk_clio = .FALSE.   !: CLIO bulk formulation
22   LOGICAL , PUBLIC ::   ln_blk_core = .FALSE.   !: CORE bulk formulation
23   LOGICAL , PUBLIC ::   ln_cpl      = .FALSE.   !: coupled   formulation (overwritten by key_sbc_coupled )
24   LOGICAL , PUBLIC ::   ln_dm2dc    = .FALSE.   !: Daily mean to Diurnal Cycle short wave (qsr)
25   LOGICAL , PUBLIC ::   ln_rnf      = .FALSE.   !: runoffs / runoff mouths
26   LOGICAL , PUBLIC ::   ln_ssr      = .FALSE.   !: Sea Surface restoring on SST and/or SSS     
27   INTEGER , PUBLIC ::   nn_ice      = 0         !: flag on ice in the surface boundary condition (=0/1/2/3)
28   INTEGER , PUBLIC ::   nn_fwb      = 0         !: FreshWater Budget control :
29   !                                             !:  = 0 unchecked
30   !                                             !:  = 1 global mean of e-p-r set to zero at each nn_fsbc time step
31   !                                             !:  = 2 annual global mean of e-p-r set to zero
32   INTEGER , PUBLIC ::   nn_ico_cpl  = 0         !: ice-ocean coupling indicator
33   !                                             !:  = 0   LIM-3 old case
34   !                                             !:  = 1   stresses computed using now ocean velocity
35   !                                             !:  = 2   combination of 0 and 1 cases
36
37   !!----------------------------------------------------------------------
38   !!              Ocean Surface Boundary Condition fields
39   !!----------------------------------------------------------------------
40   LOGICAL , PUBLIC ::   lhftau = .FALSE.              !: HF tau used in TKE: mean(stress module) - module(mean stress)
41   !!                                   !!   now    ! before   !!
42   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   utau   , utau_b   !: sea surface i-stress (ocean referential)     [N/m2]
43   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   vtau   , vtau_b   !: sea surface j-stress (ocean referential)     [N/m2]
44   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   taum              !: module of sea surface stress (at T-point)    [N/m2]
45   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   wndm              !: wind speed module at T-point (=|U10m-Uoce|)  [m/s]
46   !! wndm is used only in PISCES to compute surface gases exchanges in ice-free ocean or leads
47   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   qsr    , qsr_b    !: sea heat flux:     solar                     [W/m2]
48   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   qns    , qns_b    !: sea heat flux: non solar                     [W/m2]
49   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   qsr_tot           !: total     solar heat flux (over sea and ice) [W/m2]
50   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   qns_tot           !: total non solar heat flux (over sea and ice) [W/m2]
51   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   emp    , emp_b    !: freshwater budget: volume flux               [Kg/m2/s]
52   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   emps   , emps_b   !: freshwater budget: concentration/dillution   [Kg/m2/s]
53   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   emp_tot           !: total E-P-R over ocean and ice               [Kg/m2/s]
54   ! - ML - beginning
55   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   sbc_trd_hc_n      !: sbc heat content trend now                   [K/m/s]
56   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   sbc_trd_hc_b      !:  "   "      "      "   before                   "
57   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   sbc_trd_sc_n      !: sbc salt content trend now                   [psu/m/s]
58   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   sbc_trd_sc_b      !:  "   "      "      "   before                   "
59   REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) ::   qsr_trd_hc_n  !: heat content trend due to qsr flux now       [K/m/s]
60   REAL(wp), PUBLIC, DIMENSION(jpi,jpj,jpk) ::   qsr_trd_hc_b  !:  "      "      "    "  "   "   "   before       "
61   ! - ML - end
62   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   tprecip           !: total precipitation                          [Kg/m2/s]
63   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   sprecip           !: solid precipitation                          [Kg/m2/s]
64   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   fr_i              !: ice fraction = 1 - lead fraction      (between 0 to 1)
65#if defined key_cpl_carbon_cycle
66   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   atm_co2           !: atmospheric pCO2                             [ppm]
67#endif
68!!$   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   rrunoff        !: runoff
69!!$   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   calving        !: calving
70
71   !!----------------------------------------------------------------------
72   !!                     Sea Surface Mean fields
73   !!----------------------------------------------------------------------
74   INTEGER , PUBLIC                     ::   nn_fsbc   !: frequency of sbc computation (as well as sea-ice model)
75   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   ssu_m     !: mean (nn_fsbc time-step) surface sea i-current (U-point) [m/s]
76   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   ssv_m     !: mean (nn_fsbc time-step) surface sea j-current (V-point) [m/s]
77   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   sst_m     !: mean (nn_fsbc time-step) surface sea temperature     [Celsius]
78   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   sss_m     !: mean (nn_fsbc time-step) surface sea salinity            [psu]
79   REAL(wp), PUBLIC, DIMENSION(jpi,jpj) ::   ssh_m     !: mean (nn_fsbc time-step) sea surface height                [m]
80
81   !!----------------------------------------------------------------------
82   !! NEMO/OPA 3.3 , LOCEAN-IPSL (2010)
83   !! $Id$
84   !! Software governed by the CeCILL licence (modipsl/doc/NEMO_CeCILL.txt)
85   !!======================================================================
86END MODULE sbc_oce
Note: See TracBrowser for help on using the repository browser.