@@ -35,21 +35,26 @@ subroutine surface()
3535
3636 if (landmask(i,j).eq. 0 ) then
3737
38- u_h = 0.5 * (u(i+1 ,j,1 )+ u(i,j,1 )) + ug
39- v_h = 0.5 * (v(i,j+ YES3D,1 )+ v(i,j,1 )) + vg
40- ta_h = tabs(i,j,1 )
41- q_h = qv(i,j,1 )
42- t_h = tabs(i,j,1 )* prespot(1 )
43- t_s = (sstxy(i,j)+ t00)* prespoti(1 )
44- q_s = salt_factor* qsatw(sstxy(i,j)+ t00,presi(1 ))
45-
46- call oceflx(rho(1 ), u_h, v_h, ta_h, q_h, t_h, z(1 )- zi(1 ), t_s, q_s, &
47- fluxt0, fluxq0, taux0, tauy0)
48-
49- fluxbu(i,j) = taux0/ rho(1 )
50- fluxbv(i,j) = tauy0/ rho(1 )
51- fluxbt(i,j) = fluxt0
52- fluxbq(i,j) = fluxq0
38+ u_h = 0.5 * (u(i+1 ,j,1 )+ u(i,j,1 )) + ug
39+ v_h = 0.5 * (v(i,j+ YES3D,1 )+ v(i,j,1 )) + vg
40+ ta_h = tabs(i,j,1 )
41+ q_h = qv(i,j,1 )
42+ t_h = tabs(i,j,1 )* prespot(1 )
43+ t_s = (sstxy(i,j)+ t00)* prespoti(1 )
44+ q_s = salt_factor* qsatw(sstxy(i,j)+ t00,presi(1 ))
45+
46+ if (dobulksfcflx) then
47+ call oceflx(rho(1 ), u_h, v_h, ta_h, q_h, t_h, z(1 )- zi(1 ), t_s, q_s, &
48+ fluxt0, fluxq0, taux0, tauy0)
49+ else
50+ call oceflx(rho(1 ), bulksfcflx_u, 0 , ta_h, q_h, t_h, z(1 )- zi(1 ), t_s, q_s, &
51+ fluxt0, fluxq0, taux0, tauy0)
52+ endif
53+
54+ fluxbu(i,j) = taux0/ rho(1 )
55+ fluxbv(i,j) = tauy0/ rho(1 )
56+ fluxbt(i,j) = fluxt0
57+ fluxbq(i,j) = fluxq0
5358
5459 end if
5560
0 commit comments