da_check_max_iv_profiler.inc
References to this file elsewhere.
1 subroutine da_check_max_iv_profiler(it, profiler , &
2 itu,ituf,itvv,itvvf)
3
4 !-----------------------------------------------------------------------
5 ! Purpose: TBD
6 !-----------------------------------------------------------------------
7
8 implicit none
9
10 integer, intent (in) :: it ! Outer iteration
11 type (pilot_type), intent(inout) :: profiler
12 integer, intent(inout) :: itu,ituf,itvv,itvvf
13
14 integer :: k
15 logical :: failed
16
17 !---------------------------------------------------------------------------
18 ! [1.0] Open diagnostic file:
19 !---------------------------------------------------------------------------
20
21 if (rootproc .and. check_max_iv_print) then
22 write (check_max_iv_unit,'(A)') &
23 '----------------------------------------------------------------'
24 write (unit = check_max_iv_unit, fmt = '(A,/)') 'MAX ERROR TEST QC:'
25 write (unit = check_max_iv_unit, fmt = '(/,9(A,F3.0,/))') &
26 'Error max test ratio for Profiler_U = ',max_error_uv, &
27 'Error max test ratio for Profiler_V = ',max_error_uv
28 end if
29
30 !---------------------------------------------------------------------------
31 ! [2.0] Perform maximum innovation vector check:
32 !---------------------------------------------------------------------------
33
34 failed = .false.
35
36 do k = 1, profiler % info % levels
37 ! U-wind
38 call da_max_error_qc(it, profiler % info, profiler % u(k), &
39 max_error_uv, itu, ituf, check_max_iv_unit, 'U ', &
40 failed, check_max_iv_print)
41 ! V-wind
42 call da_max_error_qc (it, profiler % info, profiler % v(k),&
43 max_error_uv, itvv, itvvf, check_max_iv_unit, 'V ', &
44 failed, check_max_iv_print)
45 end do
46
47 end subroutine da_check_max_iv_profiler
48
49