Changeset 3896 for branches/2013/dev_r3858_NOC_ZTC/NEMOGCM/NEMO/LIM_SRC_2
- Timestamp:
- 2013-05-02T14:40:43+02:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2013/dev_r3858_NOC_ZTC/NEMOGCM/NEMO/LIM_SRC_2/limsbc_2.F90
r3625 r3896 24 24 USE phycst ! physical constants 25 25 USE dom_oce ! ocean domain 26 USE domvvl ! ocean vertical scale factors 26 27 USE dom_ice_2 ! LIM-2: ice domain 27 28 USE ice_2 ! LIM-2: ice variables … … 59 60 !! * Substitutions 60 61 # include "vectopt_loop_substitute.h90" 62 # include "domzgr_substitute.h90" 61 63 !!---------------------------------------------------------------------- 62 64 !! NEMO/LIM2 4.0 , UCL - NEMO Consortium (2011) … … 444 446 !!------------------------------------------------------------------- 445 447 ! 448 INTEGER :: jk ! local integer 449 ! 446 450 IF(lwp) WRITE(numout,*) 447 451 IF(lwp) WRITE(numout,*) 'lim_sbc_init_2 : LIM-2 sea-ice - surface boundary condition' … … 475 479 sshn(:,:) = sshn(:,:) - snwice_mass(:,:) * r1_rau0 476 480 sshb(:,:) = sshb(:,:) - snwice_mass(:,:) * r1_rau0 481 do jk = 1,jpkm1 ! adjust initial vertical scale factors 482 fse3t_n(:,:,jk) = e3t_0(:,:,jk)*( 1._wp + sshn(:,:)*tmask(:,:,1)/(ht_0(:,:) + 1.0 - tmask(:,:,1)) ) 483 fse3t_b(:,:,jk) = e3t_0(:,:,jk)*( 1._wp + sshb(:,:)*tmask(:,:,1)/(ht_0(:,:) + 1.0 - tmask(:,:,1)) ) 484 end do 485 fse3t_a(:,:,:) = fse3t_b(:,:,:) 486 ! Reconstruction of all vertical scale factors at now and before time steps 487 ! ============================================================================= 488 ! Horizontal scale factor interpolations 489 ! -------------------------------------- 490 CALL dom_vvl_interpol( fse3t_b(:,:,:), fse3u_b(:,:,:), 'U' ) 491 CALL dom_vvl_interpol( fse3t_b(:,:,:), fse3v_b(:,:,:), 'V' ) 492 CALL dom_vvl_interpol( fse3t_n(:,:,:), fse3u_n(:,:,:), 'U' ) 493 CALL dom_vvl_interpol( fse3t_n(:,:,:), fse3v_n(:,:,:), 'V' ) 494 CALL dom_vvl_interpol( fse3u_n(:,:,:), fse3f_n(:,:,:), 'F' ) 495 ! Vertical scale factor interpolations 496 ! ------------------------------------ 497 CALL dom_vvl_interpol( fse3t_n(:,:,:), fse3w_n (:,:,:), 'W' ) 498 CALL dom_vvl_interpol( fse3u_n(:,:,:), fse3uw_n(:,:,:), 'UW' ) 499 CALL dom_vvl_interpol( fse3v_n(:,:,:), fse3vw_n(:,:,:), 'VW' ) 500 CALL dom_vvl_interpol( fse3u_b(:,:,:), fse3uw_b(:,:,:), 'UW' ) 501 CALL dom_vvl_interpol( fse3v_b(:,:,:), fse3vw_b(:,:,:), 'VW' ) 502 ! t- and w- points depth 503 ! ---------------------- 504 fsdept_n(:,:,1) = 0.5_wp * fse3w_n(:,:,1) 505 fsdepw_n(:,:,1) = 0.0_wp 506 fsde3w_n(:,:,1) = fsdept_n(:,:,1) - sshn(:,:) 507 DO jk = 2, jpk 508 fsdept_n(:,:,jk) = fsdept_n(:,:,jk-1) + fse3w_n(:,:,jk) 509 fsdepw_n(:,:,jk) = fsdepw_n(:,:,jk-1) + fse3t_n(:,:,jk-1) 510 fsde3w_n(:,:,jk) = fsdept_n(:,:,jk ) - sshn (:,:) 511 END DO 477 512 ENDIF 478 513 !
Note: See TracChangeset
for help on using the changeset viewer.