Ignore:
Timestamp:
2013-11-20T17:28:04+01:00 (8 years ago)
Author:
cetlod
Message:

dev_MERGE_2013 : 1st step of the merge, see ticket #1185

Location:
branches/2013/dev_MERGE_2013/NEMOGCM/NEMO/LIM_SRC_2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2013/dev_MERGE_2013/NEMOGCM/NEMO/LIM_SRC_2/limsbc_2.F90

    r4148 r4292  
    2424   USE phycst           ! physical constants 
    2525   USE dom_oce          ! ocean domain 
     26   USE domvvl           ! ocean vertical scale factors 
    2627   USE dom_ice_2        ! LIM-2: ice domain 
    2728   USE ice_2            ! LIM-2: ice variables 
     
    5960   !! * Substitutions 
    6061#  include "vectopt_loop_substitute.h90" 
     62#  include "domzgr_substitute.h90" 
    6163   !!---------------------------------------------------------------------- 
    6264   !! NEMO/LIM2 4.0 , UCL - NEMO Consortium (2011) 
     
    446448      !!------------------------------------------------------------------- 
    447449      ! 
     450      INTEGER :: jk           ! local integer 
     451      ! 
    448452      IF(lwp) WRITE(numout,*) 
    449453      IF(lwp) WRITE(numout,*) 'lim_sbc_init_2 : LIM-2 sea-ice - surface boundary condition' 
     
    472476         snwice_mass  (:,:) = 0.e0           ! no mass exchanges 
    473477         snwice_mass_b(:,:) = 0.e0           ! no mass exchanges 
     478         snwice_fmass (:,:) = 0.e0           ! no mass exchanges 
    474479      ENDIF 
    475480      IF( nn_ice_embd == 2 .AND.          &  ! full embedment (case 2) & no restart :  
     
    477482         sshn(:,:) = sshn(:,:) - snwice_mass(:,:) * r1_rau0 
    478483         sshb(:,:) = sshb(:,:) - snwice_mass(:,:) * r1_rau0 
     484         do jk = 1,jpkm1                     ! adjust initial vertical scale factors 
     485          fse3t_n(:,:,jk) = e3t_0(:,:,jk)*( 1._wp + sshn(:,:)*tmask(:,:,1)/(ht_0(:,:) + 1.0 - tmask(:,:,1)) ) 
     486          fse3t_b(:,:,jk) = e3t_0(:,:,jk)*( 1._wp + sshb(:,:)*tmask(:,:,1)/(ht_0(:,:) + 1.0 - tmask(:,:,1)) ) 
     487         end do 
     488         fse3t_a(:,:,:) = fse3t_b(:,:,:) 
     489         ! Reconstruction of all vertical scale factors at now and before time steps 
     490         ! ============================================================================= 
     491         ! Horizontal scale factor interpolations 
     492         ! -------------------------------------- 
     493         CALL dom_vvl_interpol( fse3t_b(:,:,:), fse3u_b(:,:,:), 'U' ) 
     494         CALL dom_vvl_interpol( fse3t_b(:,:,:), fse3v_b(:,:,:), 'V' ) 
     495         CALL dom_vvl_interpol( fse3t_n(:,:,:), fse3u_n(:,:,:), 'U' ) 
     496         CALL dom_vvl_interpol( fse3t_n(:,:,:), fse3v_n(:,:,:), 'V' ) 
     497         CALL dom_vvl_interpol( fse3u_n(:,:,:), fse3f_n(:,:,:), 'F' ) 
     498         ! Vertical scale factor interpolations 
     499         ! ------------------------------------ 
     500         CALL dom_vvl_interpol( fse3t_n(:,:,:), fse3w_n (:,:,:), 'W'  ) 
     501         CALL dom_vvl_interpol( fse3u_n(:,:,:), fse3uw_n(:,:,:), 'UW' ) 
     502         CALL dom_vvl_interpol( fse3v_n(:,:,:), fse3vw_n(:,:,:), 'VW' ) 
     503         CALL dom_vvl_interpol( fse3u_b(:,:,:), fse3uw_b(:,:,:), 'UW' ) 
     504         CALL dom_vvl_interpol( fse3v_b(:,:,:), fse3vw_b(:,:,:), 'VW' ) 
     505         ! t- and w- points depth 
     506         ! ---------------------- 
     507         fsdept_n(:,:,1) = 0.5_wp * fse3w_n(:,:,1) 
     508         fsdepw_n(:,:,1) = 0.0_wp 
     509         fsde3w_n(:,:,1) = fsdept_n(:,:,1) - sshn(:,:) 
     510         DO jk = 2, jpk 
     511            fsdept_n(:,:,jk) = fsdept_n(:,:,jk-1) + fse3w_n(:,:,jk) 
     512            fsdepw_n(:,:,jk) = fsdepw_n(:,:,jk-1) + fse3t_n(:,:,jk-1) 
     513            fsde3w_n(:,:,jk) = fsdept_n(:,:,jk  ) - sshn   (:,:) 
     514         END DO 
    479515      ENDIF 
    480516      ! 
  • branches/2013/dev_MERGE_2013/NEMOGCM/NEMO/LIM_SRC_2/limthd_2.F90

    r4147 r4292  
    237237             
    238238            !  energy needed to bring ocean surface layer until its freezing 
    239             qcmif  (ji,jj) =  rau0 * rcp * fse3t_m(ji,jj,1) * ( tfu(ji,jj) - sst_m(ji,jj) - rt0 ) * ( 1 - zinda ) 
     239            qcmif  (ji,jj) =  rau0 * rcp * fse3t_m(ji,jj) * ( tfu(ji,jj) - sst_m(ji,jj) - rt0 ) * ( 1 - zinda ) 
    240240             
    241241            !  calculate oceanic heat flux. 
Note: See TracChangeset for help on using the changeset viewer.