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 9769 for NEMO/trunk/cfgs/SPITZ12/MY_SRC/sbcblk.F90 – NEMO

Ignore:
Timestamp:
2018-06-08T14:08:24+02:00 (6 years ago)
Author:
clem
Message:

remaining cp_ice_msh to be removed

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/cfgs/SPITZ12/MY_SRC/sbcblk.F90

    r9739 r9769  
    727727      !    Wind module relative to the moving ice ( U10m - U_ice )   ! 
    728728      ! ------------------------------------------------------------ ! 
    729       SELECT CASE( cp_ice_msh ) 
    730       CASE( 'I' )                  ! B-grid ice dynamics :   I-point (i.e. F-point with sea-ice indexation) 
    731          !                           and scalar wind at T-point ( = | U10m - U_ice | ) (masked) 
    732          DO jj = 2, jpjm1 
    733             DO ji = 2, jpim1   ! B grid : NO vector opt 
    734                ! ... scalar wind at T-point (fld being at T-point) 
    735                zwndi_t = sf(jp_wndi)%fnow(ji,jj,1) - rn_vfac * 0.25 * (  u_ice(ji,jj+1) + u_ice(ji+1,jj+1)   & 
    736                   &                                                    + u_ice(ji,jj  ) + u_ice(ji+1,jj  )  ) 
    737                zwndj_t = sf(jp_wndj)%fnow(ji,jj,1) - rn_vfac * 0.25 * (  v_ice(ji,jj+1) + v_ice(ji+1,jj+1)   & 
    738                   &                                                    + v_ice(ji,jj  ) + v_ice(ji+1,jj  )  ) 
    739                wndm_ice(ji,jj) = SQRT( zwndi_t * zwndi_t + zwndj_t * zwndj_t ) * tmask(ji,jj,1) 
    740             END DO 
     729      ! C-grid ice dynamics :   U & V-points (same as ocean) 
     730      DO jj = 2, jpjm1 
     731         DO ji = fs_2, fs_jpim1   ! vect. opt. 
     732            zwndi_t = (  sf(jp_wndi)%fnow(ji,jj,1) - rn_vfac * 0.5 * ( u_ice(ji-1,jj  ) + u_ice(ji,jj) )  ) 
     733            zwndj_t = (  sf(jp_wndj)%fnow(ji,jj,1) - rn_vfac * 0.5 * ( v_ice(ji  ,jj-1) + v_ice(ji,jj) )  ) 
     734            wndm_ice(ji,jj) = SQRT( zwndi_t * zwndi_t + zwndj_t * zwndj_t ) * tmask(ji,jj,1) 
    741735         END DO 
    742          CALL lbc_lnk( wndm_ice, 'T',  1. ) 
    743          ! 
    744       CASE( 'C' )                  ! C-grid ice dynamics :   U & V-points (same as ocean) 
    745          DO jj = 2, jpjm1 
    746             DO ji = fs_2, fs_jpim1   ! vect. opt. 
    747                zwndi_t = (  sf(jp_wndi)%fnow(ji,jj,1) - rn_vfac * 0.5 * ( u_ice(ji-1,jj  ) + u_ice(ji,jj) )  ) 
    748                zwndj_t = (  sf(jp_wndj)%fnow(ji,jj,1) - rn_vfac * 0.5 * ( v_ice(ji  ,jj-1) + v_ice(ji,jj) )  ) 
    749                wndm_ice(ji,jj) = SQRT( zwndi_t * zwndi_t + zwndj_t * zwndj_t ) * tmask(ji,jj,1) 
    750             END DO 
    751          END DO 
    752          CALL lbc_lnk( wndm_ice, 'T',  1. ) 
    753          ! 
    754       END SELECT 
    755  
     736      END DO 
     737      CALL lbc_lnk( wndm_ice, 'T',  1. ) 
     738      ! 
    756739      ! Make ice-atm. drag dependent on ice concentration 
    757740      IF    ( ln_Cd_L12 ) THEN   ! calculate new drag from Lupkes(2012) equations 
     
    778761      !    Wind stress relative to the moving ice ( U10m - U_ice )   ! 
    779762      ! ------------------------------------------------------------ ! 
    780       SELECT CASE( cp_ice_msh ) 
    781       CASE( 'I' )                  ! B-grid ice dynamics :   I-point (i.e. F-point with sea-ice indexation) 
    782          DO jj = 2, jpjm1 
    783             DO ji = 2, jpim1   ! B grid : NO vector opt 
    784                ! ... scalar wind at I-point (fld being at T-point) 
    785                zwndi_f = 0.25 * (  sf(jp_wndi)%fnow(ji-1,jj  ,1) + sf(jp_wndi)%fnow(ji  ,jj  ,1)   & 
    786                   &              + sf(jp_wndi)%fnow(ji-1,jj-1,1) + sf(jp_wndi)%fnow(ji  ,jj-1,1)  ) - rn_vfac * u_ice(ji,jj) 
    787                zwndj_f = 0.25 * (  sf(jp_wndj)%fnow(ji-1,jj  ,1) + sf(jp_wndj)%fnow(ji  ,jj  ,1)   & 
    788                   &              + sf(jp_wndj)%fnow(ji-1,jj-1,1) + sf(jp_wndj)%fnow(ji  ,jj-1,1)  ) - rn_vfac * v_ice(ji,jj) 
    789                ! ... ice stress at I-point 
    790                zwnorm_f = zrhoa(ji,jj) * Cd_atm(ji,jj) * SQRT( zwndi_f * zwndi_f + zwndj_f * zwndj_f ) 
    791                utau_ice(ji,jj) = zwnorm_f * zwndi_f 
    792                vtau_ice(ji,jj) = zwnorm_f * zwndj_f 
    793             END DO 
     763      ! C-grid ice dynamics :   U & V-points (same as ocean) 
     764      DO jj = 2, jpjm1 
     765         DO ji = fs_2, fs_jpim1   ! vect. opt. 
     766            utau_ice(ji,jj) = 0.5 * zrhoa(ji,jj) * Cd_atm(ji,jj) * ( wndm_ice(ji+1,jj  ) + wndm_ice(ji,jj) )            & 
     767               &          * ( 0.5 * (sf(jp_wndi)%fnow(ji+1,jj,1) + sf(jp_wndi)%fnow(ji,jj,1) ) - rn_vfac * u_ice(ji,jj) ) 
     768            vtau_ice(ji,jj) = 0.5 * zrhoa(ji,jj) * Cd_atm(ji,jj) * ( wndm_ice(ji,jj+1  ) + wndm_ice(ji,jj) )            & 
     769               &          * ( 0.5 * (sf(jp_wndj)%fnow(ji,jj+1,1) + sf(jp_wndj)%fnow(ji,jj,1) ) - rn_vfac * v_ice(ji,jj) ) 
    794770         END DO 
    795          CALL lbc_lnk_multi( utau_ice, 'I', -1., vtau_ice, 'I', -1. ) 
    796          ! 
    797       CASE( 'C' )                  ! C-grid ice dynamics :   U & V-points (same as ocean) 
    798          DO jj = 2, jpjm1 
    799             DO ji = fs_2, fs_jpim1   ! vect. opt. 
    800                utau_ice(ji,jj) = 0.5 * zrhoa(ji,jj) * Cd_atm(ji,jj) * ( wndm_ice(ji+1,jj  ) + wndm_ice(ji,jj) )            & 
    801                   &          * ( 0.5 * (sf(jp_wndi)%fnow(ji+1,jj,1) + sf(jp_wndi)%fnow(ji,jj,1) ) - rn_vfac * u_ice(ji,jj) ) 
    802                vtau_ice(ji,jj) = 0.5 * zrhoa(ji,jj) * Cd_atm(ji,jj) * ( wndm_ice(ji,jj+1  ) + wndm_ice(ji,jj) )            & 
    803                   &          * ( 0.5 * (sf(jp_wndj)%fnow(ji,jj+1,1) + sf(jp_wndj)%fnow(ji,jj,1) ) - rn_vfac * v_ice(ji,jj) ) 
    804             END DO 
    805          END DO 
    806          CALL lbc_lnk_multi( utau_ice, 'U', -1., vtau_ice, 'V', -1. ) 
    807          ! 
    808       END SELECT 
     771      END DO 
     772      CALL lbc_lnk_multi( utau_ice, 'U', -1., vtau_ice, 'V', -1. ) 
    809773      ! 
    810774      IF(ln_ctl) THEN 
Note: See TracChangeset for help on using the changeset viewer.