1 subroutine da_print_stats_sonde_sfc(stats_unit, nu, nv, nt, np, nq, sonde_sfc)
3 !-----------------------------------------------------------------------
5 !-----------------------------------------------------------------------
9 integer, intent(in) :: stats_unit
10 integer, intent(inout) :: nu, nv, nt, np, nq
11 type (stats_sonde_sfc_type), intent(in) :: sonde_sfc
13 if (trace_use_dull) call da_trace_entry("da_print_stats_sonde_sfc")
15 write(unit=stats_unit, fmt='(6a/)') &
23 write(unit=stats_unit, fmt='(a,i16,4i22)') &
24 ' Number: ', nu, nv, nt, np, nq
32 write(unit=stats_unit, fmt='((a,4(f12.4,2i5),e12.4,2i5))') &
33 ' Minimum(n,k): ', sonde_sfc%minimum%u, sonde_sfc%minimum%v, &
34 sonde_sfc%minimum%t, sonde_sfc%minimum%p, sonde_sfc%minimum%q, &
35 ' Maximum(n,k): ', sonde_sfc%maximum%u, sonde_sfc%maximum%v, &
36 sonde_sfc%maximum%t, &
37 sonde_sfc%maximum%p, sonde_sfc%maximum%q
38 write(unit=stats_unit, fmt='((a,4(f12.4,10x),e12.4,10x))') &
39 ' Average : ', sonde_sfc%average%u/real(nu), &
40 sonde_sfc%average%v/real(nv), &
41 sonde_sfc%average%t/real(nt), sonde_sfc%average%p/real(np), &
42 sonde_sfc%average%q/real(nq), &
43 ' RMSE : ', sqrt(sonde_sfc%rms_err%u/real(nu)), &
44 sqrt(sonde_sfc%rms_err%v/real(nv)), &
45 sqrt(sonde_sfc%rms_err%t/real(nt)), &
46 sqrt(sonde_sfc%rms_err%p/real(np)), &
47 sqrt(sonde_sfc%rms_err%q/real(nq))
49 if (trace_use_dull) call da_trace_exit("da_print_stats_sonde_sfc")
51 end subroutine da_print_stats_sonde_sfc