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 5260 for branches/2014/dev_r4650_UKMO10_Tidally_Meaned_Diagnostics/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_clio.F90 – NEMO

Ignore:
Timestamp:
2015-05-12T12:37:15+02:00 (9 years ago)
Author:
deazer
Message:

Merged branch with Trunk at revision 5253.
Checked with SETTE, passes modified iodef.xml for AMM12 experiment

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2014/dev_r4650_UKMO10_Tidally_Meaned_Diagnostics/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_clio.F90

    r4624 r5260  
    6262   LOGICAL ::   lbulk_init = .TRUE.               ! flag, bulk initialization done or not) 
    6363 
    64 #if ! defined key_lim3                           
    65    ! in namicerun with LIM3 
    6664   REAL(wp) ::   cai = 1.40e-3 ! best estimate of atm drag in order to get correct FS export in ORCA2-LIM 
    6765   REAL(wp) ::   cao = 1.00e-3 ! chosen by default  ==> should depends on many things...  !!gmto be updated 
    68 #endif 
    6966 
    7067   REAL(wp) ::   rdtbs2      !:    
     
    114111      !!              - utau, vtau  i- and j-component of the wind stress 
    115112      !!              - taum        wind stress module at T-point 
    116       !!              - wndm        10m wind module at T-point 
     113      !!              - wndm        10m wind module at T-point over free ocean or leads in presence of sea-ice 
    117114      !!              - qns         non-solar heat flux including latent heat of solid  
    118115      !!                            precip. melting and emp heat content 
     
    204201      !!               - utau, vtau  i- and j-component of the wind stress 
    205202      !!               - taum        wind stress module at T-point 
    206       !!               - wndm        10m wind module at T-point 
     203      !!               - wndm        10m wind module at T-point over free ocean or leads in presence of sea-ice 
    207204      !!               - qns         non-solar heat flux including latent heat of solid  
    208205      !!                             precip. melting and emp heat content 
     
    257254         END DO 
    258255      END DO 
     256      utau(:,:) = utau(:,:) * umask(:,:,1) 
     257      vtau(:,:) = vtau(:,:) * vmask(:,:,1) 
     258      taum(:,:) = taum(:,:) * tmask(:,:,1) 
    259259      CALL lbc_lnk( taum, 'T', 1. ) 
    260260 
     
    264264!CDIR COLLAPSE 
    265265      wndm(:,:) = sf(jp_wndm)%fnow(:,:,1) 
     266      wndm(:,:) = wndm(:,:) * tmask(:,:,1) 
    266267 
    267268      !------------------------------------------------! 
     
    270271       
    271272      CALL blk_clio_qsr_oce( qsr ) 
    272  
     273      qsr(:,:) = qsr(:,:) * tmask(:,:,1) ! no shortwave radiation into the ocean beneath ice shelf 
    273274      !------------------------! 
    274275      !   Other ocean fluxes   ! 
     
    376377         &     - zqla(:,:)             * pst(:,:) * zcevap                &   ! remove evap.   heat content at SST in Celcius 
    377378         &     + sf(jp_prec)%fnow(:,:,1) * sf(jp_tair)%fnow(:,:,1) * zcprec   ! add    precip. heat content at Tair in Celcius 
     379      qns(:,:) = qns(:,:) * tmask(:,:,1) 
    378380      ! NB: if sea-ice model, the snow precip are computed and the associated heat is added to qns (see blk_ice_clio) 
    379381 
     
    398400 
    399401 
    400    SUBROUTINE blk_ice_clio(  pst   , palb_cs, palb_os ,       & 
     402   SUBROUTINE blk_ice_clio(  pst   , palb_cs, palb_os, palb,  & 
    401403      &                      p_taui, p_tauj, p_qns , p_qsr,   & 
    402404      &                      p_qla , p_dqns, p_dqla,          & 
     
    427429      !!---------------------------------------------------------------------- 
    428430      REAL(wp), INTENT(in   ), DIMENSION(:,:,:)   ::   pst      ! ice surface temperature                   [Kelvin] 
    429       REAL(wp), INTENT(in   ), DIMENSION(:,:,:)   ::   palb_cs  ! ice albedo (clear    sky) (alb_ice_cs)         [%] 
    430       REAL(wp), INTENT(in   ), DIMENSION(:,:,:)   ::   palb_os  ! ice albedo (overcast sky) (alb_ice_os)         [%] 
     431      REAL(wp), INTENT(in   ), DIMENSION(:,:,:)   ::   palb_cs  ! ice albedo (clear    sky) (alb_ice_cs)         [-] 
     432      REAL(wp), INTENT(in   ), DIMENSION(:,:,:)   ::   palb_os  ! ice albedo (overcast sky) (alb_ice_os)         [-] 
     433      REAL(wp), INTENT(  out), DIMENSION(:,:,:)   ::   palb     ! ice albedo (actual value)                      [-] 
    431434      REAL(wp), INTENT(  out), DIMENSION(jpi,jpj) ::   p_taui   ! surface ice stress at I-point (i-component) [N/m2] 
    432435      REAL(wp), INTENT(  out), DIMENSION(jpi,jpj) ::   p_tauj   ! surface ice stress at I-point (j-component) [N/m2] 
     
    438441      REAL(wp), INTENT(  out), DIMENSION(jpi,jpj) ::   p_tpr    ! total precipitation          (T-point)   [Kg/m2/s] 
    439442      REAL(wp), INTENT(  out), DIMENSION(jpi,jpj) ::   p_spr    ! solid precipitation          (T-point)   [Kg/m2/s] 
    440       REAL(wp), INTENT(  out), DIMENSION(jpi,jpj) ::   p_fr1    ! 1sr fraction of qsr penetration in ice         [%] 
    441       REAL(wp), INTENT(  out), DIMENSION(jpi,jpj) ::   p_fr2    ! 2nd fraction of qsr penetration in ice         [%] 
     443      REAL(wp), INTENT(  out), DIMENSION(jpi,jpj) ::   p_fr1    ! 1sr fraction of qsr penetration in ice         [-] 
     444      REAL(wp), INTENT(  out), DIMENSION(jpi,jpj) ::   p_fr2    ! 2nd fraction of qsr penetration in ice         [-] 
    442445      CHARACTER(len=1), INTENT(in   )             ::   cd_grid  ! type of sea-ice grid ("C" or "B" grid) 
    443446      INTEGER, INTENT(in   )                      ::   pdim     ! number of ice categories 
     
    542545      !-----------------------------------------------------------! 
    543546      CALL blk_clio_qsr_ice( palb_cs, palb_os, p_qsr ) 
     547       
     548      DO jl = 1, ijpl 
     549         palb(:,:,jl) = ( palb_cs(:,:,jl) * ( 1.e0 - sf(jp_ccov)%fnow(:,:,1) )   & 
     550            &         +   palb_os(:,:,jl) * sf(jp_ccov)%fnow(:,:,1) ) 
     551      END DO 
    544552 
    545553      !                                     ! ========================== ! 
Note: See TracChangeset for help on using the changeset viewer.