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 4885 for branches/2014/dev_4728_CNRS04_coupled_interface – NEMO

Ignore:
Timestamp:
2014-11-26T11:27:30+01:00 (9 years ago)
Author:
vancop
Message:

bug LIM2 sbcblk_core

Location:
branches/2014/dev_4728_CNRS04_coupled_interface/NEMOGCM/NEMO
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/2014/dev_4728_CNRS04_coupled_interface/NEMOGCM/NEMO/LIM_SRC_2/limthd_2.F90

    r4884 r4885  
    448448      zztmp = 1.0 / rdt_ice 
    449449      CALL iom_put( 'iceprod_cea' , hicifp (:,:) * zztmp     )   ! Ice produced               [m/s] 
     450      CALL iom_put( 'iiceconc'    , fr_i(:,:)                )   ! Ice concentration          [-] 
    450451      IF( lk_diaar5 ) THEN 
    451452         CALL iom_put( 'snowmel_cea' , rdm_snw(:,:) * zztmp     )   ! Snow melt                  [kg/m2/s] 
  • branches/2014/dev_4728_CNRS04_coupled_interface/NEMOGCM/NEMO/OPA_SRC/SBC/sbc_ice.F90

    r4859 r4885  
    146146         &      fr1_i0  (jpi,jpj)     , fr2_i0  (jpi,jpj)     ,     & 
    147147#if defined key_lim3 
    148          &      tatm_ice(jpi,jpj)                             ,     & 
     148         &      tatm_ice(jpi,jpj)     ,                             & 
    149149#endif 
    150150         &      emp_ice(jpi,jpj)      , qemp_ice(jpi,jpj)     , STAT= ierr(1) ) 
  • branches/2014/dev_4728_CNRS04_coupled_interface/NEMOGCM/NEMO/OPA_SRC/SBC/sbcblk_core.F90

    r4883 r4885  
    3939   USE prtctl          ! Print control 
    4040   USE sbcwave,ONLY :  cdn_wave !wave module  
    41    USE sbc_ice         ! Surface boundary condition: ice fields 
     41#if defined key_lim3 
     42   USE sbc_ice,ONLY :  cldf_ice, tatm_ice ! Surface boundary condition: ice fields 
     43#endif 
     44#if defined key_lim2 
     45   USE sbc_ice,ONLY :  cldf_ice ! Surface boundary condition: ice fields 
     46#endif 
    4247   USE lib_fortran     ! to use key_nosignedzero 
    4348 
  • branches/2014/dev_4728_CNRS04_coupled_interface/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_lim.F90

    r4880 r4885  
    206206         END SELECT 
    207207          
    208          CALL wrk_dealloc( jpi,jpj,jpl, zalb_os, zalb_cs, zalb_ice ) 
    209  
    210208         !                                           !----------------------! 
    211209         !                                           ! LIM-3  time-stepping ! 
     
    370368       
    371369!!gm   remark, the ocean-ice stress is not saved in ice diag call above .....  find a solution!!! 
     370 
     371      CALL wrk_dealloc( jpi,jpj,jpl, zalb_os, zalb_cs, zalb_ice ) 
     372 
    372373 
    373374      ! 
  • branches/2014/dev_4728_CNRS04_coupled_interface/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_lim_2.F90

    r4880 r4885  
    9393      !! 
    9494      INTEGER  ::   ji, jj   ! dummy loop indices 
    95       REAL(wp), DIMENSION(:,:,:), POINTER :: zalb_ice_os   ! albedo of the ice under overcast sky 
    96       REAL(wp), DIMENSION(:,:,:), POINTER :: zalb_ice_cs   ! albedo of ice under clear sky 
    97       REAL(wp), DIMENSION(:,:,:), POINTER :: zsist         ! surface ice temperature (K) 
     95      REAL(wp), DIMENSION(:,:,:), POINTER :: zalb_os   ! ice albedo under overcast sky 
     96      REAL(wp), DIMENSION(:,:,:), POINTER :: zalb_cs   ! ice albedo under clear sky 
     97      REAL(wp), DIMENSION(:,:,:), POINTER :: zalb_ice  ! mean ice albedo 
     98      REAL(wp), DIMENSION(:,:,:), POINTER :: zsist     ! ice surface temperature (K) 
    9899      !!---------------------------------------------------------------------- 
    99100 
    100       CALL wrk_alloc( jpi,jpj,1, zalb_ice_os, zalb_ice_cs, zsist ) 
     101      CALL wrk_alloc( jpi,jpj,1, zalb_os, zalb_cs, zalb_ice, zsist ) 
    101102 
    102103      IF( kt == nit000 ) THEN 
     
    144145         zsist (:,:,1) = sist (:,:) + rt0 * ( 1. - tmask(:,:,1) ) 
    145146 
    146          ! ... ice albedo (clear sky and overcast sky) 
     147         ! Ice albedo 
     148 
    147149         CALL albedo_ice( zsist, reshape( hicif, (/jpi,jpj,1/) ), & 
    148150                                 reshape( hsnif, (/jpi,jpj,1/) ), & 
    149                           zalb_ice_cs, zalb_ice_os ) 
     151                          zalb_cs, zalb_os ) 
     152 
     153         SELECT CASE( ksbc ) 
     154         CASE( jp_core , jp_cpl )   ! CORE and COUPLED bulk formulations 
     155 
     156            ! albedo depends on cloud fraction because of non-linear spectral effects 
     157            zalb_ice(:,:,:) = ( 1. - cldf_ice ) * zalb_cs(:,:,:) + cldf_ice * zalb_os(:,:,:) 
     158            ! In CLIO the cloud fraction is read in the climatology and the all-sky albedo  
     159            ! (zalb_ice) is computed within the bulk routine 
     160 
     161         END SELECT 
    150162 
    151163         ! ... Sea-ice surface boundary conditions output from bulk formulae : 
     
    164176         SELECT CASE( ksbc ) 
    165177         CASE( jp_clio )           ! CLIO bulk formulation 
    166             CALL blk_ice_clio( zsist, zalb_ice_cs, zalb_ice_os,                         & 
     178            CALL blk_ice_clio( zsist, zalb_cs    , zalb_os    , zalb_ice   ,            & 
    167179               &                      utau_ice   , vtau_ice   , qns_ice    , qsr_ice,   & 
    168180               &                      qla_ice    , dqns_ice   , dqla_ice   ,            & 
     
    171183 
    172184         CASE( jp_core )           ! CORE bulk formulation 
    173             CALL blk_ice_core( zsist, u_ice      , v_ice      , zalb_ice_cs,            & 
     185            CALL blk_ice_core( zsist, u_ice      , v_ice      , zalb_ice   ,            & 
    174186               &                      utau_ice   , vtau_ice   , qns_ice    , qsr_ice,   & 
    175187               &                      qla_ice    , dqns_ice   , dqla_ice   ,            & 
    176188               &                      tprecip    , sprecip    ,                         & 
    177189               &                      fr1_i0     , fr2_i0     , cp_ice_msh , jpl  ) 
    178             IF( ltrcdm2dc_ice )   CALL blk_ice_meanqsr( zalb_ice_cs, qsr_ice_mean, jpl ) 
     190            IF( ltrcdm2dc_ice )   CALL blk_ice_meanqsr( zalb_ice, qsr_ice_mean, jpl ) 
    179191 
    180192         CASE( jp_cpl )            ! Coupled formulation : atmosphere-ice stress only (fluxes provided after ice dynamics) 
     
    211223            CALL sbc_cpl_ice_flx( frld,                                              & 
    212224            !                                optional arguments, used only in 'mixed oce-ice' case 
    213             &                                             palbi = zalb_ice_cs, psst = sst_m, pist = zsist ) 
     225            &                                             palbi = zalb_ice, psst = sst_m, pist = zsist ) 
    214226            sprecip(:,:) = - emp_ice(:,:)   ! Ugly patch, WARNING, in coupled mode, sublimation included in snow (parsub = 0.) 
    215227         ENDIF 
     
    243255      IF( ln_limdyn    )   CALL lim_sbc_tau_2( kt, ub(:,:,1), vb(:,:,1) )  ! using before instantaneous surf. currents 
    244256      ! 
    245       CALL wrk_dealloc( jpi,jpj,1, zalb_ice_os, zalb_ice_cs, zsist ) 
     257      CALL wrk_dealloc( jpi,jpj,1, zalb_os, zalb_cs, zalb_ice, zsist ) 
    246258      ! 
    247259   END SUBROUTINE sbc_ice_lim_2 
Note: See TracChangeset for help on using the changeset viewer.