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/TRA/trasbc.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/TRA/trasbc.F90

    r3294 r3396  
    6060      !!         at the surface by evaporation, precipitations and runoff (E-P-R);  
    6161      !!      (3) Fwe, tracer carried with the water that is exchanged.  
     62      !!            - salinity    : salt flux only due to freezing/melting 
     63      !!            sa = sa +  fsalt / rau0 / e3t  for k=1 
    6264      !! 
    6365      !!      Fext, flux through the air-sea interface for temperature and salt:  
     
    8486      !!            (Tp P - Te E) + SST (P-E) = 0 when Tp=Te=SST 
    8587      !!            - salinity    : evaporation, precipitation and runoff 
    86       !!         water has a zero salinity (Fwe=0), thus only Fwi remains: 
    87       !!            sa = sa + emp * sn / e3t   for k=1 
     88      !!         water has a zero salinity  but there is a salt flux due to  
     89      !!         freezing/melting, thus: 
     90      !!            sa = sa + emp * sn / rau0 / e3t   for k=1 
     91      !!                    + fsalt    / rau0 / e3t 
    8892      !!         where emp, the surface freshwater budget (evaporation minus 
    8993      !!         precipitation minus runoff) given in kg/m2/s is divided 
     
    109113      !! 
    110114      INTEGER  ::   ji, jj, jk, jn           ! dummy loop indices   
    111       REAL(wp) ::   zfact, z1_e3t, zsrau, zdep 
     115      REAL(wp) ::   zfact, z1_e3t, zdep 
    112116      REAL(wp), POINTER, DIMENSION(:,:,:) ::  ztrdt, ztrds 
    113117      !!---------------------------------------------------------------------- 
     
    120124         IF(lwp) WRITE(numout,*) '~~~~~~~ ' 
    121125      ENDIF 
    122  
    123       zsrau = 1. / rau0             ! initialization 
    124126 
    125127      IF( l_trdtra )   THEN                    !* Save ta and sa trends 
     
    163165                                                   ! evaporation, precipitation and qns, but not river runoff  
    164166                                                
    165       IF( lk_vvl ) THEN                            ! Variable Volume case 
     167      IF( lk_vvl ) THEN                            ! Variable Volume case  ==>> heat content of mass flux is in qns 
    166168         DO jj = 1, jpj 
    167169            DO ji = 1, jpi  
    168                ! temperature : heat flux + cooling/heating effet of EMP flux 
    169                sbc_tsc(ji,jj,jp_tem) = ro0cpr * qns(ji,jj) - zsrau * emp(ji,jj) * tsn(ji,jj,1,jp_tem) 
    170                ! concent./dilut. effect due to sea-ice melt/formation and (possibly) SSS restoration 
    171                sbc_tsc(ji,jj,jp_sal) = ( emps(ji,jj) - emp(ji,jj) ) * zsrau * tsn(ji,jj,1,jp_sal) 
     170               sbc_tsc(ji,jj,jp_tem) = r1_rau0_rcp * qns(ji,jj)                              ! non solar heat flux 
     171               sbc_tsc(ji,jj,jp_sal) = r1_rau0     * emps(ji,jj)                             ! salt flux (freezing/melting) 
    172172            END DO 
    173173         END DO 
     
    176176            DO ji = fs_2, fs_jpim1   ! vector opt. 
    177177               ! temperature : heat flux 
    178                sbc_tsc(ji,jj,jp_tem) = ro0cpr * qns(ji,jj) 
     178               sbc_tsc(ji,jj,jp_tem) = r1_rau0_rcp * qns(ji,jj)                          &   ! non solar heat flux 
     179                  &                  + r1_rau0     * emp(ji,jj)  * tsn(ji,jj,1,jp_tem)       ! concent./dilut. effect 
    179180               ! salinity    : salt flux + concent./dilut. effect (both in emps) 
    180                sbc_tsc(ji,jj,jp_sal) = zsrau * emps(ji,jj) * tsn(ji,jj,1,jp_sal) 
     181               sbc_tsc(ji,jj,jp_sal) = r1_rau0  * (  emps(ji,jj)                         &   ! salt flux (freezing/melting) 
     182                  &                                + emp (ji,jj) * tsn(ji,jj,1,jp_sal) )     ! concent./dilut. effect 
    181183            END DO 
    182184         END DO 
Note: See TracChangeset for help on using the changeset viewer.