da_maxmin_in_field.inc

References to this file elsewhere.
1 subroutine da_maxmin_in_field(field, max, min)
2 
3    !-----------------------------------------------------------------------
4    ! Purpose: TBD
5    !-----------------------------------------------------------------------
6 
7    implicit none
8 
9    real,                    intent(in)  :: field(its:ite,jts:jte,kts:kte)
10    type(maxmin_field_type), intent(out) :: max(kts:kte)
11    type(maxmin_field_type), intent(out) :: min(kts:kte)
12 
13    if (trace_use_dull) call da_trace_entry("da_maxmin_in_field")
14 
15    do k = kts, kte
16       max(k)%value = -1.0e20
17       min(k)%value =  1.0e20
18       do j = jts, jte
19          do i = its, ite
20             if (field(i,j,k) > max(k)%value) then
21                max(k)%value = field(i,j,k)
22                max(k)%i     = i
23                max(k)%j     = j
24             end if
25             if (field(i,j,k) < min(k)%value) then
26                min(k)%value = field(i,j,k)
27                min(k)%i     = i
28                min(k)%j     = j
29             end if
30          end do
31       end do
32    end do
33 
34    if (trace_use_dull) call da_trace_exit("da_maxmin_in_field")
35 
36 end subroutine da_maxmin_in_field
37 
38