5 &( tauwav, tstot , f , usnew , twnew , z0new ,
6 & npoin2, ndire , nf , xtauw , ytauw , tauhf )
62 & freq, dfreq, teta, sintet, costet,
70 INTEGER,
INTENT(IN) :: NPOIN2, NDIRE , NF
71 DOUBLE PRECISION,
INTENT(IN) :: USNEW(npoin2), TWNEW(npoin2)
72 DOUBLE PRECISION,
INTENT(IN) :: Z0NEW(npoin2)
73 DOUBLE PRECISION,
INTENT(IN) :: TSTOT(npoin2,ndire,nf)
74 DOUBLE PRECISION,
INTENT(IN) :: F(npoin2,ndire,nf)
75 DOUBLE PRECISION,
INTENT(INOUT) :: TAUWAV(npoin2), TAUHF(npoin2)
76 DOUBLE PRECISION,
INTENT(INOUT) :: XTAUW(npoin2) , YTAUW(npoin2)
85 INTEGER IP , JP , JF , JTOT , J
86 DOUBLE PRECISION DTETAR, FRMAX , COEF1 , COEF2 , TTAUHF
87 DOUBLE PRECISION USTAR , ALFA , COSTMP, C1 , C2 , DIREC
88 DOUBLE PRECISION Y , OMEGA , CM , ZX , ZARG , ZMU
89 DOUBLE PRECISION ZLOG , ZBETA , UST , Z0 , UST2 , ALF2
90 DOUBLE PRECISION CONST1, OMEGAM, X0 , YC , DELY , AUX
93 dtetar=
deupi/dble(ndire)
106 aux=coef2*freq(jf)*dfreq(jf)
111 xtauw(ip)=xtauw(ip)+tstot(ip,jp,jf)*c1
112 ytauw(ip)=ytauw(ip)+tstot(ip,jp,jf)*c2
126 costmp=max(cos(direc-twnew(ip)),0.d0)
127 tauhf(ip)=tauhf(ip)+f(ip,jp,nf)*costmp**3
132 const1= betam/xkappa**2
138 alfa =z0new(ip)*
gravit/ustar**2
148 ust2 = min(ustar,5.d0)
149 alf2 = min(alfa,0.11d0)
152 ust = max(ust2,0.000001d0)
156 dely = max((1.d0-yc)/float(jtot),0.d0)
159 y = yc+dble(j-1)*dely
163 zarg = min(xkappa/zx,20.d0)
164 zmu = min(
gravit*z0/cm**2*exp(zarg),1.d0)
165 zlog = min(log(zmu),0.d0)
166 zbeta = const1*zmu*zlog**4
167 ttauhf= ttauhf+zbeta/y*dely
171 tauhf(ip) = ttauhf*coef1*ustar**2*tauhf(ip)
178 xtauw(ip) = xtauw(ip) + tauhf(ip)*sin(twnew(ip))
179 ytauw(ip) = ytauw(ip) + tauhf(ip)*cos(twnew(ip))
180 tauwav(ip)= sqrt(xtauw(ip)**2+ytauw(ip)**2)
subroutine stress(TAUWAV, TSTOT, F, USNEW, TWNEW, Z0NEW, NPOIN2, NDIRE, NF, XTAUW, YTAUW, TAUHF)