-
analysis-vicky
-
notebooks
-
SalishSeaLake
Notebook
IF( kt <= nn_tau000 ) THEN ! Increase the stress to its nominal value
! ! during the first nn_tau000 time-steps
zfact = 0.5 * ( 1. - COS( rpi * REAL( kt, wp ) / REAL( nn_tau000, wp ) ) )
zcoef = 1. / ( zrhoa * zcdrag )
ztx = zfact * rn_utau0
zty = zfact * rn_vtau0
zmod = SQRT( ztx * ztx + zty * zty )
utau(:,:) = ztx
vtau(:,:) = zty
taum(:,:) = zmod
zmod = SQRT( zmod * zcoef )
wndm(:,:) = zmod
ENDIF
nn_tau002 = start of decrease period
nn_tau001 = length of decrease period
IF(( nn_tau002 + nn_tau001)>= kt >= nn_tau002) THEN ! Decrease the stress to its nominal value
! ! during the first nn_tau000 time-steps
zfact = -0.5 * ( 1. - COS( rpi * (REAL( kt, wp ) - nn_tau001) / REAL( nn_tau001, wp ) ) ) + 1
zcoef = 1. / ( zrhoa * zcdrag )
ztx = zfact * rn_utau0
zty = zfact * rn_vtau0
zmod = SQRT( ztx * ztx + zty * zty )
utau(:,:) = ztx
vtau(:,:) = zty
taum(:,:) = zmod
zmod = SQRT( zmod * zcoef )
wndm(:,:) = zmod
ENDIF
IF( kt <= nn_tau000 ) THEN ! Increase the stress to its nominal value
! ! during the first nn_tau000 time-steps
zfact = 0.5 * ( 1. - COS( rpi * REAL( kt, wp ) / REAL( nn_tau000, wp ) ) )
zcoef = 1. / ( zrhoa * zcdrag )
ztx = zfact * rn_utau0
zty = zfact * rn_vtau0
DO jj = 1, jpj
DO ji = 1, jpi
vtau (ji,jj) = yslopev * (REAL( jj+njmpp-1 - y0v, wp )) / y0v
utau (ji,jj) = yslopeu * (REAL( jj+njmpp-1 - y0u, wp )) / y0u
vtau(ji,jj) = vtau(ji,jj) * zty
utau(ji,jj) = utau(ji,jj) * ztx
taum(ji,jj) =SQRT( utau(ji,jj) * utau(ji,jj) + vtau(ji,jj) * vtau(ji,jj) )
wndm(ji,jj) =SQRT( taum(ji,jj)*zcoef)
END DO
END DO
ENDIF
IF((( nn_tau002 + nn_tau001) >= kt) .AND.(kt >= nn_tau002)) THEN ! Decrease the stress to its nominal value
! ! during the first nn_tau000 time-steps
zfact = -0.5 * ( 1. - COS( rpi * (REAL( (kt-nn_tau002), wp )) / REAL( nn_tau001, wp ) ) ) + 1
zcoef = 1. / ( zrhoa * zcdrag )
ztx = zfact * rn_utau0
zty = zfact * rn_vtau0
DO jj = 1, jpj
DO ji = 1, jpi
vtau (ji,jj) = yslopev * (REAL( jj+njmpp-1 - y0v, wp )) / y0v
utau (ji,jj) = yslopeu * (REAL( jj+njmpp-1 - y0u, wp )) / y0u
vtau(ji,jj) = vtau(ji,jj)
utau(ji,jj) = utau(ji,jj)
taum(ji,jj) =SQRT( utau(ji,jj) * utau(ji,jj) + vtau(ji,jj) * vtau(ji,jj) )
wndm(ji,jj) =SQRT( taum(ji,jj)*zcoef)
END DO
END DO
ENDIF
IF (kt > (nn_tau002+nn_tau001)) THEN
vtau(:,:) = 0.
utau(:,:) = 0.
ENDIF
Out[114]:
<matplotlib.colorbar.Colorbar at 0x7f7216f2ce10>