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 3396 for branches/2012/dev_r3385_NOCS04_HAMF/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90 – NEMO

Ignore:
Timestamp:
2012-05-17T18:33:12+02:00 (12 years ago)
Author:
acc
Message:

Branch: dev_r3385_NOCS04_HAMF; #665. Stage 1 of 2012 development: porting of changes on old development branch (2011/DEV_r1837_mass_heat_salt_fluxes) into new branch. Corrected a few errors on the way. This branch now compiles but is incomplete. Still missing LIM3 changes which must reside on a certain persons laptop somewhere

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2012/dev_r3385_NOCS04_HAMF/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90

    r3294 r3396  
    664664      !! ** Action  :   update  utau, vtau   ocean stress at U,V grid  
    665665      !!                        taum, wndm   wind stres and wind speed module at T-point 
    666       !!                        qns , qsr    non solar and solar ocean heat fluxes   ('ocean only case) 
    667       !!                        emp = emps   evap. - precip. (- runoffs) (- calving) ('ocean only case) 
     666      !!                        qns          non solar heat fluxes including emp heat content    (ocean only case) 
     667      !!                                     and the latent heat flux of solid precip. melting 
     668      !!                        qsr          solar ocean heat fluxes   (ocean only case) 
     669      !!                        emp          upward mass flux [evap. - precip. (- runoffs) (- calving)] (ocean only case) 
    668670      !!---------------------------------------------------------------------- 
    669671      INTEGER, INTENT(in) ::   kt       ! ocean model time step index 
     
    821823         !                                                   ! ========================= ! 
    822824         ! 
    823          !                                                       ! non solar heat flux over the ocean (qns) 
    824          IF( srcv(jpr_qnsoce)%laction )   qns(:,:) = frcv(jpr_qnsoce)%z3(:,:,1) 
    825          IF( srcv(jpr_qnsmix)%laction )   qns(:,:) = frcv(jpr_qnsmix)%z3(:,:,1) 
    826          ! add the latent heat of solid precip. melting 
    827          IF( srcv(jpr_snow  )%laction )   qns(:,:) = qns(:,:) - frcv(jpr_snow)%z3(:,:,1) * lfus               
    828  
    829          !                                                       ! solar flux over the ocean          (qsr) 
    830          IF( srcv(jpr_qsroce)%laction )   qsr(:,:) = frcv(jpr_qsroce)%z3(:,:,1) 
    831          IF( srcv(jpr_qsrmix)%laction )   qsr(:,:) = frcv(jpr_qsrmix)%z3(:,:,1) 
    832          IF( ln_dm2dc )   qsr(:,:) = sbc_dcy( qsr )                           ! modify qsr to include the diurnal cycle 
    833          ! 
    834825         !                                                       ! total freshwater fluxes over the ocean (emp, emps) 
    835826         SELECT CASE( TRIM( sn_rcv_emp%cldes ) )                                    ! evaporation - precipitation 
     
    863854!!gm  end of internal cooking 
    864855         ! 
    865          emps(:,:) = emp(:,:)                                        ! concentration/dilution = emp 
     856         !                                                       ! non solar heat flux over the ocean (qns) 
     857         IF( srcv(jpr_qnsoce)%laction )   qns(:,:) = frcv(jpr_qnsoce)%z3(:,:,1) 
     858         IF( srcv(jpr_qnsmix)%laction )   qns(:,:) = frcv(jpr_qnsmix)%z3(:,:,1) 
     859         ! add the latent heat of solid precip. melting 
     860         IF( srcv(jpr_snow  )%laction )   THEN                         ! update qns over the free ocean with: 
     861              qns(:,:) = qns(:,:) - frcv(jpr_snow)%z3(:,:,1) * lfus  & ! energy for melting solid precipitation over the free ocean 
     862           &           - emp(:,:) * sst_m(:,:) * rcp                   ! remove heat content due to mass flux (assumed to be at SST) 
     863         ENDIF 
     864 
     865         !                                                       ! solar flux over the ocean          (qsr) 
     866         IF( srcv(jpr_qsroce)%laction )   qsr(:,:) = frcv(jpr_qsroce)%z3(:,:,1) 
     867         IF( srcv(jpr_qsrmix)%laction )   qsr(:,:) = frcv(jpr_qsrmix)%z3(:,:,1) 
     868         IF( ln_dm2dc )   qsr(:,:) = sbc_dcy( qsr )                           ! modify qsr to include the diurnal cycle 
     869         ! 
    866870   
    867871      ENDIF 
     
    11411145 
    11421146      zicefr(:,:) = 1.- p_frld(:,:) 
    1143       IF( lk_diaar5 )   zcptn(:,:) = rcp * tsn(:,:,1,jp_tem) 
     1147      !zcptn(:,:) = rcp * tsn(:,:,1,jp_tem) 
     1148      zcptn(:,:) = rcp * sst_m(:,:) 
    11441149      ! 
    11451150      !                                                      ! ========================= ! 
     
    12331238            &                                                   +          pist(:,:,1)   * zicefr(:,:) ) ) 
    12341239      END SELECT 
    1235       ztmp(:,:) = p_frld(:,:) * sprecip(:,:) * lfus               ! add the latent heat of solid precip. melting 
    1236       qns_tot(:,:) = qns_tot(:,:) - ztmp(:,:)                     ! over free ocean  
     1240      ztmp(:,:) = p_frld(:,:) * sprecip(:,:) * lfus 
     1241      qns_tot(:,:) = qns_tot(:,:)                         &            ! qns_tot update over free ocean with: 
     1242         &          - ztmp(:,:)                           &            ! remove the latent heat flux of solid precip. melting 
     1243         &          + (  emp_tot(:,:)                     &            ! remove the heat content of mass flux (assumed to be at SST) 
     1244         &             - emp_ice(:,:) * p_frld(:,:,1)  ) * zcptn(:,:)  
    12371245      IF( lk_diaar5 )   CALL iom_put( 'hflx_snow_cea', ztmp + sprecip(:,:) * zcptn(:,:) )   ! heat flux from snow (cell average) 
    12381246!!gm 
Note: See TracChangeset for help on using the changeset viewer.