- Timestamp:
- 2020-06-09T17:00:38+02:00 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/r4.0-HEAD_ticket2425/src/OCE/SBC/sbccpl.F90
r12288 r13077 1482 1482 INTEGER :: ji, jj ! dummy loop indices 1483 1483 INTEGER :: itx ! index of taux over ice 1484 REAL(wp) :: zztmp1, zztmp2 1484 1485 REAL(wp), DIMENSION(jpi,jpj) :: ztx, zty 1485 1486 !!---------------------------------------------------------------------- … … 1545 1546 p_taui(:,:) = frcv(jpr_itx1)%z3(:,:,1) ! (U,V) ==> (U,V) 1546 1547 p_tauj(:,:) = frcv(jpr_ity1)%z3(:,:,1) 1547 CASE( 'F' )1548 DO jj = 2, jpjm1 ! F ==> (U,V)1549 DO ji = fs_2, fs_jpim1 ! vector opt.1550 p_taui(ji,jj) = 0.5 * ( frcv(jpr_itx1)%z3(ji,jj,1) + frcv(jpr_itx1)%z3(ji ,jj-1,1) )1551 p_tauj(ji,jj) = 0.5 * ( frcv(jpr_ity1)%z3(ji,jj,1) + frcv(jpr_ity1)%z3(ji-1,jj ,1) )1552 END DO1553 END DO1554 1548 CASE( 'T' ) 1555 1549 DO jj = 2, jpjm1 ! T ==> (U,V) 1556 1550 DO ji = fs_2, fs_jpim1 ! vector opt. 1557 p_taui(ji,jj) = 0.5 * ( frcv(jpr_itx1)%z3(ji+1,jj ,1) + frcv(jpr_itx1)%z3(ji,jj,1) ) 1558 p_tauj(ji,jj) = 0.5 * ( frcv(jpr_ity1)%z3(ji ,jj+1,1) + frcv(jpr_ity1)%z3(ji,jj,1) ) 1551 ! take care of the land-sea mask to avoid "pollution" of coastal stress. p[uv]taui used in frazil and rheology 1552 zztmp1 = 0.5_wp * ( 2. - umask(ji,jj,1) ) * MAX( tmask(ji,jj,1),tmask(ji+1,jj ,1) ) 1553 zztmp2 = 0.5_wp * ( 2. - vmask(ji,jj,1) ) * MAX( tmask(ji,jj,1),tmask(ji ,jj+1,1) ) 1554 p_taui(ji,jj) = zztmp1 * ( frcv(jpr_itx1)%z3(ji+1,jj ,1) + frcv(jpr_itx1)%z3(ji,jj,1) ) 1555 p_tauj(ji,jj) = zztmp2 * ( frcv(jpr_ity1)%z3(ji ,jj+1,1) + frcv(jpr_ity1)%z3(ji,jj,1) ) 1559 1556 END DO 1560 1557 END DO 1561 CASE( 'I' ) 1562 DO jj = 2, jpjm1 ! I ==> (U,V) 1563 DO ji = 2, jpim1 ! NO vector opt. 1564 p_taui(ji,jj) = 0.5 * ( frcv(jpr_itx1)%z3(ji+1,jj+1,1) + frcv(jpr_itx1)%z3(ji+1,jj ,1) ) 1565 p_tauj(ji,jj) = 0.5 * ( frcv(jpr_ity1)%z3(ji+1,jj+1,1) + frcv(jpr_ity1)%z3(ji ,jj+1,1) ) 1566 END DO 1567 END DO 1558 CALL lbc_lnk_multi( 'sbccpl', p_taui, 'U', -1., p_tauj, 'V', -1. ) 1568 1559 END SELECT 1569 IF( srcv(jpr_itx1)%clgrid /= 'U' ) THEN1570 CALL lbc_lnk_multi( 'sbccpl', p_taui, 'U', -1., p_tauj, 'V', -1. )1571 ENDIF1572 1560 1573 1561 ENDIF … … 1798 1786 ENDDO 1799 1787 ELSE 1800 qns_tot(:,:) =qns_tot(:,:) + picefr(:,:) * frcv(jpr_qnsice)%z3(:,:,1)1788 zqns_tot(:,:) = zqns_tot(:,:) + picefr(:,:) * frcv(jpr_qnsice)%z3(:,:,1) 1801 1789 DO jl = 1, jpl 1802 zqns_tot(:,: ) = zqns_tot(:,:) + picefr(:,:) * frcv(jpr_qnsice)%z3(:,:,1)1803 1790 zqns_ice(:,:,jl) = frcv(jpr_qnsice)%z3(:,:,1) 1804 1791 END DO … … 1939 1926 END DO 1940 1927 ELSE 1941 qsr_tot(:,: ) =qsr_tot(:,:) + picefr(:,:) * frcv(jpr_qsrice)%z3(:,:,1)1928 zqsr_tot(:,:) = zqsr_tot(:,:) + picefr(:,:) * frcv(jpr_qsrice)%z3(:,:,1) 1942 1929 DO jl = 1, jpl 1943 zqsr_tot(:,: ) = zqsr_tot(:,:) + picefr(:,:) * frcv(jpr_qsrice)%z3(:,:,1)1944 1930 zqsr_ice(:,:,jl) = frcv(jpr_qsrice)%z3(:,:,1) 1945 1931 END DO
Note: See TracChangeset
for help on using the changeset viewer.