da_check_max_iv_gpsref.inc
References to this file elsewhere.
1 subroutine da_check_max_iv_gpsref(it, gpsref, pref, fref)
2
3 !-----------------------------------------------------------------------
4 ! Purpose: TBD
5 !-----------------------------------------------------------------------
6
7 implicit none
8
9 integer, intent(in) :: it ! External iteration.
10 type (gpsref_type), intent(inout) :: gpsref
11 integer, intent(inout) :: pref, fref
12 integer :: k
13 logical :: failed
14
15 !---------------------------------------------------------------------------
16 ! [1.0] Open diagnostic file:
17 !---------------------------------------------------------------------------
18
19 if (rootproc .and. check_max_iv_print) then
20 write (check_max_iv_unit,'(A)') &
21 '----------------------------------------------------------------'
22 write (unit = check_max_iv_unit, fmt = '(A,/)') 'MAX ERROR TEST QC:'
23
24 write (unit = check_max_iv_unit, fmt = '(/,9(A,F3.0,/))') &
25 'Error max test ratio for GPSRef = ', max_error_ref
26 end if
27
28 !----------------------------------------------------------------------------
29 ! [2.0] Perform maximum innovation vector check:
30 !----------------------------------------------------------------------------
31
32 failed = .false.
33
34 do k = 1, gpsref % info % levels
35 call da_max_error_qc(it, gpsref % info, gpsref % ref(k), &
36 max_error_ref, pref, fref, check_max_iv_unit, &
37 'GPSRef ', failed, check_max_iv_print)
38 end do
39
40 end subroutine da_check_max_iv_gpsref
41
42