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 12081 for NEMO – NEMO

Changeset 12081 for NEMO


Ignore:
Timestamp:
2019-12-06T11:52:54+01:00 (4 years ago)
Author:
laurent
Message:

Minor synchronization with "dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk"

Location:
NEMO/branches/2019/dev_ASINTER-01-05_merged
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_ASINTER-01-05_merged/cfgs/SHARED/namelist_ref

    r12074 r12081  
    251251/ 
    252252!----------------------------------------------------------------------- 
    253 &namsbc_blk    !   namsbc_blk  generic Bulk formula                     (ln_blk =T) 
     253&namsbc_blk    !   namsbc_blk  generic Bulk formula          (ln_blk =T) 
    254254!----------------------------------------------------------------------- 
    255255   !                    !  bulk algorithm : 
     
    259259   ln_ECMWF     = .false.   ! "ECMWF"     algorithm   (IFS cycle 31) 
    260260      ! 
    261       rn_zqt      = 10.       !  Air temperature & humidity reference height (m) 
    262       rn_zu       = 10.       !  Wind vector reference height (m) 
    263       ln_Cd_L12   = .false.   !  air-ice drags = F(ice concentration) (Lupkes et al. 2012) 
    264       ln_Cd_L15   = .false.   !  air-ice drags = F(ice concentration) (Lupkes et al. 2015) 
    265       rn_pfac     = 1.        !  multiplicative factor for precipitation (total & snow) 
    266       rn_efac     = 1.        !  multiplicative factor for evaporation (0. or 1.) 
    267       rn_vfac     = 0.        !  multiplicative factor for ocean & ice velocity used to 
    268       !                       !  calculate the wind stress (0.=absolute or 1.=relative winds) 
    269       ln_skin_cs = .false.  !  use the cool-skin parameterization (only available in ECMWF and COARE algorithms) !LB 
    270       ln_skin_wl = .false.  !  use the warm-layer        "               "                    " 
    271       ! 
    272       ln_humi_sph = .true.     !  humidity specified below in "sn_humi" is specific humidity     [kg/kg] if .true. 
    273       ln_humi_dpt = .false.    !  humidity specified below in "sn_humi" is dew-point temperature   [K]   if .true. 
    274       ln_humi_rlh = .false.    !  humidity specified below in "sn_humi" is relative humidity       [%]   if .true. 
     261      rn_zqt     = 10.      !  Air temperature & humidity reference height (m) 
     262      rn_zu      = 10.      !  Wind vector reference height (m) 
     263      ln_Cd_L12  = .false.  !  air-ice drags = F(ice conc.) (Lupkes et al. 2012) 
     264      ln_Cd_L15  = .false.  !  air-ice drags = F(ice conc.) (Lupkes et al. 2015) 
     265      !                     !  - module of the mean stress" data 
     266      rn_pfac    = 1.       !  multipl. factor for precipitation (total & snow) 
     267      rn_efac    = 1.       !  multipl. factor for evaporation (0. or 1.) 
     268      rn_vfac    = 0.       !  multipl. factor for ocean & ice velocity  
     269      !                     !  used to calculate the wind stress 
     270      !                     ! (0. => absolute or 1. => relative winds) 
     271      ln_skin_cs = .false.  !  use the cool-skin parameterization 
     272      ln_skin_wl = .false.  !  use the warm-layer parameterization 
     273      !                     !   ==> only available in ECMWF and COARE algorithms 
     274      ln_humi_sph = .true.  !  humidity "sn_humi" is specific humidity  [kg/kg] 
     275      ln_humi_dpt = .false. !  humidity "sn_humi" is dew-point temperature [K] 
     276      ln_humi_rlh = .false. !  humidity "sn_humi" is relative humidity     [%] 
    275277   ! 
    276278   cn_dir      = './'      !  root directory for the bulk data location 
  • NEMO/branches/2019/dev_ASINTER-01-05_merged/doc/latex/NEMO/main/bibliography.bib

    r11263 r12081  
    188188} 
    189189 
     190@article{ beljaars_QJRMS95, 
     191title = "The parametrization of surface fluxes in large-scale models under free convection", 
     192pages = "255--270", 
     193journal = "Quarterly Journal of the Royal Meteorological Society", 
     194volume = "121", 
     195number = "522", 
     196author = "Beljaars, Anton C. M.", 
     197year = "1995", 
     198month = "jan", 
     199 publisher     = "Wiley", 
     200issn = "00359009", 
     201doi = "10.1002/qj.49712152203" 
     202} 
     203 
    190204@article{         bernie.guilyardi.ea_CD07, 
    191205  title         = "Impact of resolving the diurnal cycle in an 
     
    386400} 
    387401 
     402@article{         brodeau.barnier.ea_JPO17, 
     403  title         = "Climatologically Significant Effects of Some Approximations in the Bulk Parameterizations of Turbulent Air{\textendash}Sea Fluxes", 
     404  pages         = "5--28", 
     405  journal       = "Journal of Physical Oceanography", 
     406  volume        = "47", 
     407  number        = "1", 
     408  author        = "Brodeau, Laurent and Barnier, Bernard and Gulev, Sergey K. and Woods, Cian", 
     409  year          = "2017", 
     410  month         = "jan", 
     411  publisher     = "American Meteorological Society", 
     412  issn          = "0022-3670", 
     413  doi           = "10.1175/jpo-d-16-0169.1", 
     414} 
     415 
    388416@article{         brown.campana_MWR78, 
    389417  title         = "An economical time-differencing system for numerical 
     
    745773} 
    746774 
     775@article{ edson.jampana.ea_JPO13, 
     776title = "On the Exchange of Momentum over the Open Ocean", 
     777pages = "1589--1610", 
     778journal = "Journal of Physical Oceanography", 
     779volume = "43", 
     780number = "8", 
     781author = "Edson, James B. and Jampana, Venkata and Weller, Robert A. and Bigorre, Sebastien P. and Plueddemann, Albert J. and Fairall, Christopher W. and Miller, Scott D. and Mahrt, Larry and Vickers, Dean and Hersbach, Hans", 
     782year = "2013", 
     783month = "aug", 
     784publisher = "American Meteorological Society", 
     785issn = "0022-3670", 
     786doi = "10.1175/JPO-D-12-0173.1" 
     787} 
     788 
    747789@article{         egbert.ray_JGR01, 
    748790  title         = "Estimates of {M2} tidal energy dissipation from 
     
    819861} 
    820862 
     863@article{ fairall.bradley.ea_JC03, 
     864title = "Bulk parameterization of air-sea fluxes: Updates and verification for the COARE algorithm", 
     865pages = "571--591", 
     866journal = "Journal of Climate", 
     867volume = "16", 
     868number = "4", 
     869author = "Fairall, C. W. and Bradley, E. F. and Hare, J. E. and Grachev, A. A. and Edson, J. B.", 
     870year = "2003", 
     871publisher = "American Meteorological Society", 
     872issn = "08948755", 
     873doi = "10.1175/1520-0442(2003)016<0571:BPOASF>2.0.CO;2" 
     874} 
     875 
    821876@phdthesis{       farge-coulombier_phd87, 
    822877  title         = "Dynamique non-lin\'{e}aire des ondes et des tourbillons 
     
    871926  publisher     = "UNESCO", 
    872927  url           = "https://unesdoc.unesco.org/ark:/48223/pf0000059832.locale=en" 
     928} 
     929 
     930@article{         foxkemper.ferrari_JPO08, 
     931  title         = "Parameterization of Mixed Layer Eddies. Part I: Theory and Diagnosis", 
     932  pages         = "1145--1165", 
     933  journal       = "Journal of Physical Oceanography", 
     934  volume        = "38", 
     935  number        = "6", 
     936  author        = "B. Fox-Kemper and R. Ferrari and B. Hallberg", 
     937  year          = "2008", 
     938  month         = "jun", 
     939  publisher     = "American Meteorological Society", 
     940  issn          = "1520-0485", 
     941  doi           = "10.1175/2007JPO3792.1" 
    873942} 
    874943 
     
    15451614} 
    15461615 
     1616@article{         kraus.turner_tellus67, 
     1617  author = {Kraus, E.B. and Turner, J.}, 
     1618  journal = {Tellus}, 
     1619  pages = {98--106}, 
     1620  title = {A one dimensional model of the seasonal thermocline {II}. {T}he general theory and its consequences}, 
     1621  volume = {19}, 
     1622  year = {1967} 
     1623} 
     1624 
     1625@article{        large.ea_RG97, 
     1626  author        = "Large, W. G. and McWilliams, J. C. and Doney, S. C.", 
     1627  doi           = "10.1029/94RG01872", 
     1628  journal       = "Reviews of Geophysics", 
     1629  number        = {4}, 
     1630  pages         = {363--403}, 
     1631  publisher     = {AGU}, 
     1632  title         = "Oceanic vertical mixing: {A} review and a model with a nonlocal boundary layer parameterization", 
     1633  year          = "1994" 
     1634} 
     1635 
    15471636@techreport{      large.yeager_rpt04, 
    15481637  title         = "Diurnal to decadal global forcing for ocean and sea-ice 
     
    18391928  author        = "F. Lott and G. Madec and J. Verron", 
    18401929  year          = "1990" 
     1930} 
     1931 
     1932@article{     lupkes.gryanik.ea_JGR12, 
     1933  author    = "L{\"{u}}pkes, Christof and Gryanik, Vladimir M. and Hartmann, J{\"{o}}rg and Andreas, Edgar L.", 
     1934  doi       = "10.1029/2012JD017630", 
     1935  issn      = "01480227", 
     1936  journal   = "Journal of Geophysical Research Atmospheres", 
     1937  number    = "13", 
     1938  pages  = "1--18", 
     1939  title  = "A parametrization, based on sea ice morphology, of the neutral atmospheric drag coefficients for weather prediction and climate models", 
     1940  volume    = "117", 
     1941  year      = "2012" 
     1942} 
     1943 
     1944@article{     lupkes.gryanik_JGR15, 
     1945  author    = "L{\"{u}}pkes, Christof and Gryanik, Vladimir M.", 
     1946  doi       = "10.1002/2014JD022418", 
     1947  issn      = "21562202", 
     1948  journal   = "Journal of Geophysical Research", 
     1949  number    = "2", 
     1950  pages  = "552--581", 
     1951  title  = "A stability-dependent parametrization of transfer coefficients formomentum and heat over polar sea ice to be used in climate models", 
     1952  volume    = "120", 
     1953  year      = "2015" 
    18411954} 
    18421955 
     
    20912204} 
    20922205 
     2206@article{mcwilliams.ea_JFM97, 
     2207   author = {McWilliams, James C. and Sullivan, Peter P. and Moeng, Chin-Hoh}, 
     2208   doi = {10.1017/S0022112096004375}, 
     2209   journal = {Journal of Fluid Mechanics}, 
     2210   pages = {1--30}, 
     2211   title = {Langmuir turbulence in the ocean}, 
     2212   volume = {334}, 
     2213   year = {1997}, 
     2214} 
    20932215@article{         mellor.blumberg_JPO04, 
    20942216  title         = "Wave Breaking and Ocean Surface Layer Thermal Response", 
     
    23042426  issn          = "0002-9947", 
    23052427  doi           = "10.1090/s0002-9947-1959-0104919-1" 
     2428} 
     2429 
     2430@article{         qiao.yuan.ea_OD10, 
     2431  title         = "A three-dimensional surface wave–ocean circulation coupled  
     2432                  model and its initial testing", 
     2433  pages         = "1339--1335", 
     2434  journal       = "Ocean Dynamics", 
     2435  volume        = "60", 
     2436  number        = "5", 
     2437  author        = "F. Qiao and Y. Yuan and T. Ezer and C. Xia and  
     2438                   Y. Yang and X. Lu and Z. Song ", 
     2439  year          = "2010", 
     2440  month         = "oct", 
     2441  publisher     = "Springer-Verlag", 
     2442  issn          = "1616-7341", 
     2443  doi           = "10.1007/s10236-010-0326-y" 
    23062444} 
    23072445 
     
    25442682} 
    25452683 
     2684@article{         smagorinsky_MW63, 
     2685  title         = "General circulation experiments with the primitive equations: I. The basic experiment ", 
     2686  pages         = "99--164", 
     2687  journal       = "Monthly Weather Review", 
     2688  volume        = "91", 
     2689  number        = "3", 
     2690  author        = "J. Smagorinsky", 
     2691  year          = "1963", 
     2692  month         = "mar", 
     2693  publisher     = "American Meteorological Society", 
     2694  issn          = "1520-0493", 
     2695  doi           = "10.1175/1520-0493(1963)091<0099:GCEWTP>2.3.CO;2" 
     2696} 
     2697 
    25462698@article{         song.haidvogel_JCP94, 
    25472699  title         = "A semi-implicit ocean circulation model using a 
     
    28963048} 
    28973049 
     3050@article{         white.hoskins.ea_QJRMS05, 
     3051  title         = "Consistent approximate models of the global atmosphere: shallow, deep, 
     3052                  hydrostatic, quasi-hydrostatic and non-hydrostatic", 
     3053  pages         = "2081--2107", 
     3054  journal       = "Quarterly Journal of the Royal Meteorological Society", 
     3055  volume        = "131", 
     3056  author        = "A. A. White and B. J. Hoskins and I. Roulstone and A. Staniforth", 
     3057  year          = "2005", 
     3058  doi           = "10.1256/qj.04.49" 
     3059} 
     3060 
    28983061@article{         white.adcroft.ea_JCP09, 
    28993062  title         = "High-order regridding-remapping schemes for continuous 
     
    29713134  doi           = "10.1029/92jc00911" 
    29723135} 
     3136 
     3137@article{large.yeager_CD09, 
     3138author="Large, W. G. and Yeager, S. G.", 
     3139title="The Global Climatology of an Interannually Varying Air-Sea Flux Data Set", 
     3140pages = "341--364", 
     3141journal="Climate Dynamics", 
     3142volume = "33", 
     3143number = "2-3", 
     3144year="2009", 
     3145month = "aug", 
     3146publisher = "Springer Science and Business Media LLC", 
     3147doi="10.1007/s00382-008-0441-3" 
     3148} 
     3149 
     3150@book{sverdrup.johnson.ea_1942, 
     3151author = {H. U. Sverdrup and Martin W. Johnson and Richard H. Fleming}, 
     3152title = {The Oceans, Their Physics, Chemistry, and General Biology}, 
     3153publisher = {Prentice-Hall}, 
     3154address = {New York}, 
     3155year = {1942}, 
     3156pages = {1087}, 
     3157} 
     3158 
     3159@article{kraus.businger_QJRMS96, 
     3160author = "E. B. Kraus and J. A. Businger", 
     3161title = "Atmosphere-ocean interaction.", 
     3162journal="Quarterly Journal of the Royal Meteorological Society",, 
     3163year = "1996", 
     3164volume = "122", 
     3165number = "529", 
     3166pages = "324-325", 
     3167publisher = "John Wiley & Sons, Ltd", 
     3168issn = "1477-870X", 
     3169doi = "10.1002/qj.49712252914" 
     3170} 
     3171 
     3172@article{josey.gulev.ea_2013, 
     3173title = "Exchanges through the ocean surface", 
     3174journal = "Ocean Circulation and Climate - A 21st Century Perspective, Int. Geophys. Ser.", 
     3175year = "2013", 
     3176author = "S. A. Josey and S. Gulev and L. Yu", 
     3177pages = "115-140, edited by G. Siedler et al., Academic Press, Oxford", 
     3178volume = "103", 
     3179doi = "10.1016/B978-0-12-391851-2.00005-2" 
     3180} 
     3181 
     3182@article{fairall.bradley.ea_JGR96, 
     3183  year = "1996", 
     3184 journal = "Journal of Geophysical Research: Oceans", 
     3185  month = "jan", 
     3186  publisher = "American Geophysical Union", 
     3187  volume = "101", 
     3188  number = "C1", 
     3189  pages = "1295-1308", 
     3190  author = "C. W. Fairall and E. F. Bradley and J. S. Godfrey and G. A. Wick and J. B. Edson and G. S. Young", 
     3191  title = "Cool-skin and warm-layer effects on sea surface temperature", 
     3192  doi = "10.1029/95jc03190" 
     3193} 
     3194 
     3195@article{zeng.beljaars_GRL05, 
     3196  year = "2005", 
     3197  month = "jul", 
     3198  publisher = "American Geophysical Union", 
     3199  volume = "32", 
     3200  number = "14", 
     3201  author = "Xubin Zeng and Anton Beljaars", 
     3202  title = "A prognostic scheme of sea surface skin temperature for modeling and data assimilation", 
     3203  journal = "Geophysical Research Letters", 
     3204  doi = "10.1029/2005gl023030" 
     3205} 
     3206 
  • NEMO/branches/2019/dev_ASINTER-01-05_merged/doc/namelists/namsbc_blk

    r12063 r12081  
    33!----------------------------------------------------------------------- 
    44   !                    !  bulk algorithm : 
    5    ln_NCAR      = .false.   ! "NCAR"      algorithm   (Large and Yeager 2008) 
     5   ln_NCAR      = .true.    ! "NCAR"      algorithm   (Large and Yeager 2008) 
    66   ln_COARE_3p0 = .false.   ! "COARE 3.0" algorithm   (Fairall et al. 2003) 
    77   ln_COARE_3p6 = .false.   ! "COARE 3.6" algorithm   (Edson et al. 2013) 
     
    1212      ln_Cd_L12  = .false.  !  air-ice drags = F(ice conc.) (Lupkes et al. 2012) 
    1313      ln_Cd_L15  = .false.  !  air-ice drags = F(ice conc.) (Lupkes et al. 2015) 
    14       ln_taudif  = .false.  !  HF tau contribution: use "mean of stress module  
    1514      !                     !  - module of the mean stress" data 
    1615      rn_pfac    = 1.       !  multipl. factor for precipitation (total & snow) 
     
    3635   sn_tair     = 't_10.15JUNE2009_fill'       ,    6.        , 'T_10_MOD',   .false.   , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc' , ''       , '' 
    3736   sn_humi     = 'q_10.15JUNE2009_fill'       ,    6.        , 'Q_10_MOD',   .false.   , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc' , ''       , '' 
     37   sn_hpgi     = 'NONE'                       ,   24.        , 'uhpg'    ,   .false.   , .false., 'monthly' , 'weights_ERAI3D_F128_2_ORCA2_bicubic', 'UG'     , '' 
     38   sn_hpgj     = 'NONE'                       ,   24.        , 'vhpg'    ,   .false.   , .false., 'monthly' , 'weights_ERAI3D_F128_2_ORCA2_bicubic', 'VG'     , '' 
    3839   sn_prec     = 'ncar_precip.15JUNE2009_fill',   -1.        , 'PRC_MOD1',   .false.   , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc' , ''       , '' 
    3940   sn_snow     = 'ncar_precip.15JUNE2009_fill',   -1.        , 'SNOW'    ,   .false.   , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc' , ''       , '' 
    4041   sn_slp      = 'slp.15JUNE2009_fill'        ,    6.        , 'SLP'     ,   .false.   , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc' , ''       , '' 
    41    sn_tdif     = 'taudif_core'                ,   24         , 'taudif'  ,   .false.   , .true. , 'yearly'  , 'weights_core_orca2_bilinear_noc.nc' , ''       , '' 
    4242/ 
  • NEMO/branches/2019/dev_ASINTER-01-05_merged/src/OCE/SBC/sbcblk_phy.F90

    r12021 r12081  
    533533            CALL BULK_FORMULA( pzu, pTs(ji,jj), pqs(ji,jj), pTa(ji,jj), pqa(ji,jj), & 
    534534               &              zCd, zCh, zCe,                                        & 
    535                &              pwnd(ji,jj), pUb(ji,jj), pslp(ji,jj), & 
     535               &              pwnd(ji,jj), pUb(ji,jj), pslp(ji,jj),                 & 
    536536               &              pTau(ji,jj), zQsen, zQlat ) 
    537537 
     
    568568      REAL(wp), DIMENSION(jpi,jpj), INTENT(out) :: pQlat !  [W/m^2] 
    569569      !! 
    570       REAL(wp), DIMENSION(jpi,jpj), INTENT(out), OPTIONAL :: pEvap  ! Evaporation [kg/m^2/s] 
    571       REAL(wp), DIMENSION(jpi,jpj), INTENT(out), OPTIONAL :: prhoa  ! Air density at z=pzu [kg/m^3] 
     570      REAL(wp), DIMENSION(jpi,jpj), INTENT(out), OPTIONAL :: pEvap ! Evaporation [kg/m^2/s] 
     571      REAL(wp), DIMENSION(jpi,jpj), INTENT(out), OPTIONAL :: prhoa ! Air density at z=pzu [kg/m^3] 
    572572      !! 
    573573      REAL(wp) :: ztaa, zgamma, zrho, zUrho, zevap 
    574574      INTEGER  :: ji, jj, jq     ! dummy loop indices 
    575575      !!---------------------------------------------------------------------------------- 
    576          DO jj = 1, jpj 
    577             DO ji = 1, jpi 
    578     
    579                !! Need ztaa, absolute temperature at pzu (formula to estimate rho_air needs absolute temperature, not the potential temperature "pTa") 
    580                ztaa = pTa(ji,jj) ! first guess... 
    581                DO jq = 1, 4 
    582                   zgamma = gamma_moist( 0.5*(ztaa+pTs(ji,jj)) , pqa(ji,jj) ) 
    583                   ztaa = pTa(ji,jj) - zgamma*pzu   ! Absolute temp. is slightly colder... 
    584                END DO 
    585                zrho = rho_air(ztaa, pqa(ji,jj), pslp(ji,jj)) 
    586                zrho = rho_air(ztaa, pqa(ji,jj), pslp(ji,jj)-zrho*grav*pzu) ! taking into account that we are pzu m above the sea level where SLP is given! 
    587     
    588                zUrho = pUb(ji,jj)*MAX(zrho, 1._wp)     ! rho*U10 
    589     
    590                pTau(ji,jj) = zUrho * pCd(ji,jj) * pwnd(ji,jj) ! Wind stress module 
    591     
    592                zevap        = zUrho * pCe(ji,jj) * (pqa(ji,jj) - pqs(ji,jj)) 
    593                pQsen(ji,jj) = zUrho * pCh(ji,jj) * (pTa(ji,jj) - pTs(ji,jj)) * cp_air(pqa(ji,jj)) 
    594                pQlat(ji,jj) = L_vap(pTs(ji,jj)) * zevap 
    595     
     576      DO jj = 1, jpj 
     577         DO ji = 1, jpi 
     578 
     579            !! Need ztaa, absolute temperature at pzu (formula to estimate rho_air needs absolute temperature, not the potential temperature "pTa") 
     580            ztaa = pTa(ji,jj) ! first guess... 
     581            DO jq = 1, 4 
     582               zgamma = gamma_moist( 0.5*(ztaa+pTs(ji,jj)) , pqa(ji,jj) ) 
     583               ztaa = pTa(ji,jj) - zgamma*pzu   ! Absolute temp. is slightly colder... 
     584            END DO 
     585            zrho = rho_air(ztaa, pqa(ji,jj), pslp(ji,jj)) 
     586            zrho = rho_air(ztaa, pqa(ji,jj), pslp(ji,jj)-zrho*grav*pzu) ! taking into account that we are pzu m above the sea level where SLP is given! 
     587 
     588            zUrho = pUb(ji,jj)*MAX(zrho, 1._wp)     ! rho*U10 
     589 
     590            pTau(ji,jj) = zUrho * pCd(ji,jj) * pwnd(ji,jj) ! Wind stress module 
     591 
     592            zevap        = zUrho * pCe(ji,jj) * (pqa(ji,jj) - pqs(ji,jj)) 
     593            pQsen(ji,jj) = zUrho * pCh(ji,jj) * (pTa(ji,jj) - pTs(ji,jj)) * cp_air(pqa(ji,jj)) 
     594            pQlat(ji,jj) = L_vap(pTs(ji,jj)) * zevap 
     595 
    596596            IF( PRESENT(pEvap) ) pEvap(ji,jj) = - zevap 
    597597            IF( PRESENT(prhoa) ) prhoa(ji,jj) = zrho 
    598     
    599             END DO 
    600          END DO 
     598 
     599         END DO 
     600      END DO 
    601601   END SUBROUTINE BULK_FORMULA_VCTR 
    602602 
     
    630630      !!---------------------------------------------------------------------------------- 
    631631 
    632          !! Need ztaa, absolute temperature at pzu (formula to estimate rho_air needs absolute temperature, not the potential temperature "pTa") 
    633          ztaa = pTa ! first guess... 
    634          DO jq = 1, 4 
    635             zgamma = gamma_moist( 0.5*(ztaa+pTs) , pqa ) 
    636             ztaa = pTa - zgamma*pzu   ! Absolute temp. is slightly colder... 
    637          END DO 
    638          zrho = rho_air(ztaa, pqa, pslp) 
    639          zrho = rho_air(ztaa, pqa, pslp-zrho*grav*pzu) ! taking into account that we are pzu m above the sea level where SLP is given! 
    640     
    641          zUrho = pUb*MAX(zrho, 1._wp)     ! rho*U10 
    642     
    643          pTau = zUrho * pCd * pwnd ! Wind stress module 
    644     
    645          zevap = zUrho * pCe * (pqa - pqs) 
    646          pQsen = zUrho * pCh * (pTa - pTs) * cp_air(pqa) 
    647          pQlat = L_vap(pTs) * zevap 
    648     
    649          IF( PRESENT(pEvap) ) pEvap = - zevap 
    650          IF( PRESENT(prhoa) ) prhoa = zrho 
     632      !! Need ztaa, absolute temperature at pzu (formula to estimate rho_air needs absolute temperature, not the potential temperature "pTa") 
     633      ztaa = pTa ! first guess... 
     634      DO jq = 1, 4 
     635         zgamma = gamma_moist( 0.5*(ztaa+pTs) , pqa ) 
     636         ztaa = pTa - zgamma*pzu   ! Absolute temp. is slightly colder... 
     637      END DO 
     638      zrho = rho_air(ztaa, pqa, pslp) 
     639      zrho = rho_air(ztaa, pqa, pslp-zrho*grav*pzu) ! taking into account that we are pzu m above the sea level where SLP is given! 
     640 
     641      zUrho = pUb*MAX(zrho, 1._wp)     ! rho*U10 
     642 
     643      pTau = zUrho * pCd * pwnd ! Wind stress module 
     644 
     645      zevap = zUrho * pCe * (pqa - pqs) 
     646      pQsen = zUrho * pCh * (pTa - pTs) * cp_air(pqa) 
     647      pQlat = L_vap(pTs) * zevap 
     648 
     649      IF( PRESENT(pEvap) ) pEvap = - zevap 
     650      IF( PRESENT(prhoa) ) prhoa = zrho 
    651651 
    652652   END SUBROUTINE BULK_FORMULA_SCLR 
Note: See TracChangeset for help on using the changeset viewer.