da_interp_lin_2d_adj_new.inc
References to this file elsewhere.
1 subroutine da_interp_lin_2d_adj_new(fm2d, is, ie, js, je,&
2 i, j, dx, dy, dxm, dym, &
3 fo2d,num)
4
5
6 !-----------------------------------------------------------------------
7 ! Purpose: TBD
8 !-----------------------------------------------------------------------
9 implicit none
10
11 integer, intent(in) :: num
12 integer, intent(in) :: is, ie, js, je
13 integer, intent(in) :: i(num), j(num)
14 real , intent(in) :: dx(num), dxm(num), dy(num), dym(num)
15 real , intent(in) :: fo2d(num)
16
17 real , intent(inout) :: fm2d(is:ie,js:je) ! Input variable
18
19 integer :: point
20
21 if (trace_use) call da_trace_entry("da_interp_lin_2d_adj_new")
22
23 do point=1,num
24 fm2d(i(point) ,j(point) ) = dym(point)*dxm(point)* fo2d(point) + fm2d(i(point) ,j(point) )
25 fm2d(i(point)+1,j(point) ) = dym(point)*dx(point) * fo2d(point) + fm2d(i(point)+1,j(point) )
26 fm2d(i(point) ,j(point)+1) = dy(point) *dxm(point)* fo2d(point) + fm2d(i(point) ,j(point)+1)
27 fm2d(i(point)+1,j(point)+1) = dy(point) *dx(point) * fo2d(point) + fm2d(i(point)+1,j(point)+1)
28 end do
29
30 if (trace_use) call da_trace_exit("da_interp_lin_2d_adj_new")
31
32 end subroutine da_interp_lin_2d_adj_new
33
34