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 11182 for NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/src/OCE/SBC/sbcblk_phy.F90 – NEMO

Ignore:
Timestamp:
2019-06-26T12:08:17+02:00 (5 years ago)
Author:
laurent
Message:

LB: adding possibility to use dew-point temperature rather than specific humidity as "air humidity" => ln_humi_dpt@namsbc_blk

File:
1 moved

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/src/OCE/SBC/sbcblk_phy.F90

    r11181 r11182  
    1 MODULE sbcblk_phymbl 
     1MODULE sbcblk_phy 
    22   !!====================================================================== 
    3    !!                       ***  MODULE  sbcblk_phymbl  *** 
     3   !!                       ***  MODULE  sbcblk_phy  *** 
    44   !! A set of functions to compute air themodynamics parameters 
    55   !!                     needed by Aerodynamic Bulk Formulas 
     
    1515   !!   visc_air      : kinematic viscosity (aka Nu_air) of air from temperature 
    1616    
    17    USE oce            ! ocean dynamics and tracers 
    1817   USE dom_oce        ! ocean space and time domain 
    1918   USE phycst         ! physical constants 
    20    !USE sbc_oce        ! Surface boundary condition: ocean fields 
    21    !USE sbcdcy         ! surface boundary condition: diurnal cycle 
    22    !USE sbcwave , ONLY :   cdn_wave ! wave module 
    23    !USE sbc_ice        ! Surface boundary condition: ice fields 
    24    USE lib_fortran    ! to use key_nosignedzero 
    25    ! 
    26    !USE iom            ! I/O manager library 
    27    !USE in_out_manager ! I/O manager 
    28    USE lib_mpp        ! distribued memory computing library 
    29    !USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
    30    !USE prtctl         ! Print control 
    3119 
    3220   IMPLICIT NONE 
     
    9886      ! 
    9987      INTEGER  ::   ji, jj         ! dummy loop indices 
    100       REAL(wp) ::   ze_sat, ztmp   ! local scalar 
     88      REAL(wp) ::   zta, ze_sat, ztmp   ! local scalar 
    10189      !!---------------------------------------------------------------------------------- 
    10290      ! 
     
    10492         DO ji = 1, jpi 
    10593            ! 
    106             ztmp = rt0 / ptak(ji,jj) 
     94            zta = MAX( ptak(ji,jj) , 180._wp )   ! air temp., prevents fpe0 errors dute to unrealistically low values over masked regions... 
     95            ztmp = rt0 / zta 
    10796            ! 
    10897            ! Vapour pressure at saturation [hPa] : WMO, (Goff, 1957) 
    109             ze_sat = 10.**( 10.79574*(1. - ztmp) - 5.028*LOG10(ptak(ji,jj)/rt0)        & 
    110                &    + 1.50475*10.**(-4)*(1. - 10.**(-8.2969*(ptak(ji,jj)/rt0 - 1.)) )  & 
     98            ze_sat = 10.**( 10.79574*(1. - ztmp) - 5.028*LOG10(zta/rt0)        & 
     99               &    + 1.50475*10.**(-4)*(1. - 10.**(-8.2969*(zta/rt0 - 1.)) )  & 
    111100               &    + 0.42873*10.**(-3)*(10.**(4.76955*(1. - ztmp)) - 1.) + 0.78614  ) 
    112101            ! 
     
    191180 
    192181   !!====================================================================== 
    193 END MODULE sbcblk_phymbl 
     182END MODULE sbcblk_phy 
Note: See TracChangeset for help on using the changeset viewer.