da_print_stats_bogus.inc
References to this file elsewhere.
1 subroutine da_print_stats_bogus(stats_unit, nu, nv, nt, nq, nslp, Bogus)
2
3 !-----------------------------------------------------------------------
4 ! Purpose: TBD
5 !-----------------------------------------------------------------------
6
7 implicit none
8
9 integer, intent(in) :: stats_unit
10 integer, intent(inout) :: nu, nv, nt, nq, nslp
11 type (stats_bogus_type), intent(in) :: Bogus
12
13 write(unit=stats_unit, fmt='(6a/)') &
14 ' var ', &
15 'u (m/s) n k ', &
16 'v (m/s) n k ', &
17 't (K) n k ', &
18 'q (kg/kg) n k ', &
19 'slp (pa) n k'
20
21 write(unit=stats_unit, fmt='(a,i16,4i22)') &
22 ' Number: ', nu, nv, nt, nq, nslp
23
24 if (nu < 1) nu = 1
25 if (nv < 1) nv = 1
26 if (nt < 1) nt = 1
27 if (nq < 1) nq = 1
28 if (nslp < 1) nslp = 1
29
30 write(unit=stats_unit, fmt='((a,3(f12.4,2i5),e12.4,2i5,f12.4,2i5))') &
31 ' Minimum(n,k): ', Bogus%minimum%u, Bogus%minimum%v, Bogus%minimum%t, &
32 Bogus%minimum%q, Bogus%minimum%slp, &
33 ' Maximum(n,k): ', Bogus%maximum%u, Bogus%maximum%v, Bogus%maximum%t, &
34 Bogus%maximum%q, Bogus%maximum%slp
35 write(unit=stats_unit, fmt='((a,3(f12.4,10x),e12.4,10x,f12.4,10x))') &
36 ' Average : ', Bogus%average%u/real(nu), &
37 Bogus%average%v/real(nv), &
38 Bogus%average%t/real(nt), &
39 Bogus%average%q/real(nq), &
40 Bogus%average%slp/real(nslp), &
41 ' RMSE : ', sqrt(Bogus%rms_err%u/real(nu)), &
42 sqrt(Bogus%rms_err%v/real(nv)), &
43 sqrt(Bogus%rms_err%t/real(nt)), &
44 sqrt(Bogus%rms_err%q/real(nq)), &
45 sqrt(Bogus%rms_err%slp/real(nslp))
46
47 end subroutine da_print_stats_bogus
48
49