da_interp_lin_2d_partial.inc

References to this file elsewhere.
1 subroutine da_interp_lin_2d_partial(fm2d, info, k, n1, n2, 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    integer,         intent(in)  :: n1,n2                 ! Range of obs
13    real,            intent(out) :: fo2d(n1:n2)           ! Output variable 
14    
15    integer :: n
16 
17    if (trace_use_frequent) call da_trace_entry("da_interp_lin_2d_partial")
18 
19    do n=n1,n2
20       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))) &
21               + 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))
22    end do
23 
24    if (trace_use_frequent) call da_trace_exit("da_interp_lin_2d_partial")
25 
26 end subroutine da_interp_lin_2d_partial
27 
28