38 type(
field_t),
intent(inout) :: u,v, w
39 type(
field_t),
intent(inout) :: uu, vv, ww
41 real(kind=
rp),
dimension(3),
intent(in) :: ab
42 integer,
intent(in) :: nab
54 u%x(i,1,1,1) = ab(1) * uu%x(i,1,1,1) + &
55 ab(2) * uulag%lf(1)%x(i,1,1,1) + ab(3) * uulag%lf(2)%x(i,1,1,1)
56 v%x(i,1,1,1) = ab(1) * vv%x(i,1,1,1) + &
57 ab(2) * vvlag%lf(1)%x(i,1,1,1) + ab(3) * vvlag%lf(2)%x(i,1,1,1)
58 w%x(i,1,1,1) = ab(1) * ww%x(i,1,1,1) + &
59 ab(2) * wwlag%lf(1)%x(i,1,1,1) + ab(3) * wwlag%lf(2)%x(i,1,1,1)
69 u%x(i,1,1,1) = ab(1) * uu%x(i,1,1,1) + ab(2) * uulag%lf(1)%x(i,1,1,1)
70 v%x(i,1,1,1) = ab(1) * vv%x(i,1,1,1) + ab(2) * vvlag%lf(1)%x(i,1,1,1)
71 w%x(i,1,1,1) = ab(1) * ww%x(i,1,1,1) + ab(2) * wwlag%lf(1)%x(i,1,1,1)
80 fx_laglag, fy_laglag, fz_laglag, fx, fy, fz, &
82 type(
field_t),
intent(inout) :: fx_lag, fy_lag, fz_lag
83 type(
field_t),
intent(inout) :: fx_laglag, fy_laglag, fz_laglag
84 real(kind=
rp),
intent(in) :: rho, ext_coeffs(4)
85 integer,
intent(in) :: n
86 real(kind=
rp),
intent(inout) :: fx(n), fy(n), fz(n)
88 type(
field_t),
pointer :: temp1, temp2, temp3
89 integer :: temp_indices(3)
102 temp1%x(i,1,1,1) = ext_coeffs(2) * fx_lag%x(i,1,1,1) + &
103 ext_coeffs(3) * fx_laglag%x(i,1,1,1)
104 temp2%x(i,1,1,1) = ext_coeffs(2) * fy_lag%x(i,1,1,1) + &
105 ext_coeffs(3) * fy_laglag%x(i,1,1,1)
106 temp3%x(i,1,1,1) = ext_coeffs(2) * fz_lag%x(i,1,1,1) + &
107 ext_coeffs(3) * fz_laglag%x(i,1,1,1)
117 fx_laglag%x(i,1,1,1) = fx_lag%x(i,1,1,1)
118 fy_laglag%x(i,1,1,1) = fy_lag%x(i,1,1,1)
119 fz_laglag%x(i,1,1,1) = fz_lag%x(i,1,1,1)
120 fx_lag%x(i,1,1,1) = fx(i)
121 fy_lag%x(i,1,1,1) = fy(i)
122 fz_lag%x(i,1,1,1) = fz(i)
132 fx(i) = (ext_coeffs(1) * fx(i) + temp1%x(i,1,1,1)) * rho
133 fy(i) = (ext_coeffs(1) * fy(i) + temp2%x(i,1,1,1)) * rho
134 fz(i) = (ext_coeffs(1) * fz(i) + temp3%x(i,1,1,1)) * rho
144 type(
field_t),
intent(inout) :: fs_lag
145 type(
field_t),
intent(inout) :: fs_laglag
146 real(kind=
rp),
intent(in) :: rho, ext_coeffs(4)
147 integer,
intent(in) :: n
148 real(kind=
rp),
intent(inout) :: fs(n)
150 type(
field_t),
pointer :: temp1
151 integer :: temp_index
162 temp1%x(i,1,1,1) = ext_coeffs(2) * fs_lag%x(i,1,1,1) + &
163 ext_coeffs(3) * fs_laglag%x(i,1,1,1)
173 fs_laglag%x(i,1,1,1) = fs_lag%x(i,1,1,1)
174 fs_lag%x(i,1,1,1) = fs(i)
184 fs(i) = (ext_coeffs(1) * fs(i) + temp1%x(i,1,1,1)) * rho
193 u, v, w, B, Blag, Blaglag, rho, dt, bd, nbd, n)
194 integer,
intent(in) :: n, nbd
195 type(
field_t),
intent(in) :: u, v, w
197 real(kind=
rp),
intent(inout) :: bfx(n), bfy(n), bfz(n)
198 real(kind=
rp),
intent(in) :: b(n), blag(n), blaglag(n)
199 real(kind=
rp),
intent(in) :: dt, rho, bd(4)
200 type(
field_t),
pointer :: tb1, tb2, tb3
201 integer :: temp_indices(3)
215 tb1%x(i,1,1,1) = u%x(i,1,1,1) * b(i) * bd(2)
216 tb2%x(i,1,1,1) = v%x(i,1,1,1) * b(i) * bd(2)
217 tb3%x(i,1,1,1) = w%x(i,1,1,1) * b(i) * bd(2)
222 if (ilag .eq. 2)
then
229 tb1%x(i,1,1,1) = tb1%x(i,1,1,1) + &
230 (ulag%lf(ilag-1)%x(i,1,1,1) * blag(i) * bd(ilag+1))
231 tb2%x(i,1,1,1) = tb2%x(i,1,1,1) + &
232 (vlag%lf(ilag-1)%x(i,1,1,1) * blag(i) * bd(ilag+1))
233 tb3%x(i,1,1,1) = tb3%x(i,1,1,1) + &
234 (wlag%lf(ilag-1)%x(i,1,1,1) * blag(i) * bd(ilag+1))
237 else if (ilag .eq. 3)
then
244 tb1%x(i,1,1,1) = tb1%x(i,1,1,1) + &
245 (ulag%lf(ilag-1)%x(i,1,1,1) * blaglag(i) * bd(ilag+1))
246 tb2%x(i,1,1,1) = tb2%x(i,1,1,1) + &
247 (vlag%lf(ilag-1)%x(i,1,1,1) * blaglag(i) * bd(ilag+1))
248 tb3%x(i,1,1,1) = tb3%x(i,1,1,1) + &
249 (wlag%lf(ilag-1)%x(i,1,1,1) * blaglag(i) * bd(ilag+1))
261 bfx(i) = bfx(i) + tb1%x(i,1,1,1) * (rho / dt)
262 bfy(i) = bfy(i) + tb2%x(i,1,1,1) * (rho / dt)
263 bfz(i) = bfz(i) + tb3%x(i,1,1,1) * (rho / dt)
273 integer,
intent(in) :: n, nbd
276 real(kind=
rp),
intent(inout) :: fs(n)
277 real(kind=
rp),
intent(in) :: b(n)
278 real(kind=
rp),
intent(in) :: dt, rho, bd(4)
280 type(
field_t),
pointer :: temp1
281 integer :: temp_indices
292 temp1%x(i,1,1,1) = s%x(i,1,1,1) * b(i) * bd(2)
303 temp1%x(i,1,1,1) = temp1%x(i,1,1,1) + &
304 (s_lag%lf(ilag-1)%x(i,1,1,1) * b(i) * bd(ilag+1))
315 fs(i) = fs(i) + temp1%x(i,1,1,1) * (rho / dt)