75 & LBi, UBi, LBj, UBj, &
76 & IminS, ImaxS, JminS, JmaxS, &
100 integer,
intent(in) :: ng, tile
101 integer,
intent(in) :: LBi, UBi, LBj, UBj
102 integer,
intent(in) :: IminS, ImaxS, JminS, JmaxS
103 integer,
intent(in) :: Kfrc
104 integer,
intent(in) :: Nfrc
108 real(r8),
intent(in) :: f_t(LBi:,LBj:,:,:)
109 real(r8),
intent(in) :: f_u(LBi:,LBj:,:)
110 real(r8),
intent(in) :: f_v(LBi:,LBj:,:)
112 real(r8),
intent(in) :: f_ubar(LBi:,LBj:)
113 real(r8),
intent(in) :: f_vbar(LBi:,LBj:)
114 real(r8),
intent(in) :: f_zeta(LBi:,LBj:)
116 real(r8),
intent(inout) :: t(LBi:,LBj:,:,:,:)
117 real(r8),
intent(inout) :: u(LBi:,LBj:,:,:)
118 real(r8),
intent(inout) :: v(LBi:,LBj:,:,:)
120 real(r8),
intent(inout) :: ubar(LBi:,LBj:,:)
121 real(r8),
intent(inout) :: vbar(LBi:,LBj:,:)
123 real(r8),
intent(inout) :: Zt_avg1(LBi:,LBj:)
125 real(r8),
intent(inout) :: zeta(LBi:,LBj:,:)
128 real(r8),
intent(in) :: f_t(LBi:UBi,LBj:UBj,N(ng),NT(ng))
129 real(r8),
intent(in) :: f_u(LBi:UBi,LBj:UBj,N(ng))
130 real(r8),
intent(in) :: f_v(LBi:UBi,LBj:UBj,N(ng))
132 real(r8),
intent(in) :: f_ubar(LBi:UBi,LBj:UBj)
133 real(r8),
intent(in) :: f_vbar(LBi:UBi,LBj:UBj)
134 real(r8),
intent(in) :: f_zeta(LBi:UBi,LBj:UBj)
136 real(r8),
intent(inout) :: t(LBi:UBi,LBj:UBj,N(ng),3,NT(ng))
137 real(r8),
intent(inout) :: u(LBi:UBi,LBj:UBj,N(ng),2)
138 real(r8),
intent(inout) :: v(LBi:UBi,LBj:UBj,N(ng),2)
140 real(r8),
intent(inout) :: ubar(LBi:UBi,LBj:UBj,:)
141 real(r8),
intent(inout) :: vbar(LBi:UBi,LBj:UBj,:)
143 real(r8),
intent(inout) :: Zt_avg1(LBi:UBi,LBj:UBj)
145 real(r8),
intent(inout) :: zeta(LBi:UBi,LBj:UBj,:)
155# include "set_bounds.h"
161 IF (
domain(ng)%SouthWest_Corner(tile))
THEN
178 zeta(i,j,kfrc)=zeta(i,j,kfrc)+f_zeta(i,j)
184 zt_avg1(i,j)=zt_avg1(i,j)+f_zeta(i,j)
191 zeta(i,j,kfrc)=zeta(i,j,kfrc)+f_zeta(i,j)
202 ubar(i,j,kfrc)=ubar(i,j,kfrc)+f_ubar(i,j)
208 vbar(i,j,kfrc)=vbar(i,j,kfrc)+f_vbar(i,j)
219 u(i,j,k,nfrc)=u(i,j,k,nfrc)+f_u(i,j,k)
224 v(i,j,k,nfrc)=v(i,j,k,nfrc)+f_v(i,j,k)
235 t(i,j,k,nfrc,itrc)=t(i,j,k,nfrc,itrc)+ &
243 10
FORMAT (2x,
'NL_FORCING - added convolved adjoint impulse,', &
246 20
FORMAT (2x,
'NL_FORCING - incremental analysis update, ', &
subroutine forcing_tile(ng, tile, lbi, ubi, lbj, ubj, imins, imaxs, jmins, jmaxs, kfrc, nfrc, f_t, f_u, f_v, f_ubar, f_vbar, f_zeta, t, u, v, ubar, vbar, zt_avg1, zeta)