Merge remote-tracking branch 'origin/release-v4.5.2'
[WRF.git] / var / da / da_sound / da_print_stats_sound.inc
blobcc52c68d02535e2c9c26863feb1ecfd1a6738133
1 subroutine da_print_stats_sound(stats_unit, nu, nv, nt, nq, Sound)
3    !-----------------------------------------------------------------------
4    ! Purpose: TBD
5    !-----------------------------------------------------------------------
7    implicit none
9    integer,                 intent(in)    :: stats_unit
10    integer,                 intent(inout) :: nu, nv, nt, nq
11    type (stats_sound_type), intent(in)    :: sound
13    if (trace_use_dull) call da_trace_entry("da_print_stats_sound")
15    write(unit=stats_unit, fmt='(5a/)') &
16       '   var             ', &
17       'u (m/s)     n    k    ', &
18       'v (m/s)     n    k    ', &
19       't (K)       n    k    ', &
20       'q (kg/kg)   n    k'
22    write(unit=stats_unit, fmt='(a,i16,4i22)') &
23       '  Number: ', nu, nv, nt, nq
25    if (nu < 1) nu = 1
26    if (nv < 1) nv = 1
27    if (nt < 1) nt = 1
28    if (nq < 1) nq = 1
30    write(unit=stats_unit, fmt='((a,3(f12.4,2i5),e12.4,2i5))') &
31       ' Minimum(n,k): ', sound%minimum%u, sound%minimum%v, &
32                          sound%minimum%t, sound%minimum%q, &
33       ' Maximum(n,k): ', sound%maximum%u, sound%maximum%v, &
34                          sound%maximum%t, sound%maximum%q
35    write(unit=stats_unit, fmt='((a,3(f12.4,10x),e12.4,10x))') &
36       ' Average     : ', sound%average%u/real(nu), &
37                          sound%average%v/real(nv), &
38                          sound%average%t/real(nt), &
39                          sound%average%q/real(nq), &
40       '    RMSE     : ', sqrt(sound%rms_err%u/real(nu)), &
41                          sqrt(sound%rms_err%v/real(nv)), &
42                          sqrt(sound%rms_err%t/real(nt)), &
43                          sqrt(sound%rms_err%q/real(nq))
45    if (trace_use_dull) call da_trace_exit("da_print_stats_sound")
47 end subroutine da_print_stats_sound