da_interp_lin_2d.inc

References to this file elsewhere.
1 subroutine da_interp_lin_2d(fm2d, info, k, fo2d)
2 
3    !-----------------------------------------------------------------------
4    ! Purpose: TBD
5    !-----------------------------------------------------------------------
6 
7    implicit none
8 
9    real,            intent(in)  :: fm2d(ims:ime,jms:jme) ! Input variable
10    type(infa_type), intent(in)  :: info
11    integer,         intent(in)  :: k                     ! level
12    real,            intent(out) :: fo2d(info%n1:info%n2)           ! Output variable 
13    
14    integer :: n
15 
16    if (trace_use_frequent) call da_trace_entry("da_interp_lin_2d")
17 
18    do n=info%n1,info%n2
19       fo2d(n) = info%dym(k,n)*(info%dxm(k,n)*fm2d(info%i(k,n),info%j(k,n))   + info%dx(k,n)*fm2d(info%i(k,n)+1,info%j(k,n))) &
20               + info%dy(k,n) *(info%dxm(k,n)*fm2d(info%i(k,n),info%j(k,n)+1) + info%dx(k,n)*fm2d(info%i(k,n)+1,info%j(k,n)+1))
21    end do
22 
23    if (trace_use_frequent) call da_trace_exit("da_interp_lin_2d")
24 
25 end subroutine da_interp_lin_2d
26 
27