From 0ab929f52e3d88c76ce660437c6ec07bc233b585 Mon Sep 17 00:00:00 2001 From: tomrink <rink@ssec.wisc.edu> Date: Sun, 13 Dec 2020 22:37:24 -0600 Subject: [PATCH] snapshot... --- modules/aeolus/aeolus_amv.py | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/modules/aeolus/aeolus_amv.py b/modules/aeolus/aeolus_amv.py index 89b8abcb..1ce5e6b8 100644 --- a/modules/aeolus/aeolus_amv.py +++ b/modules/aeolus/aeolus_amv.py @@ -12,6 +12,7 @@ import math from metpy.units import units from util.gfs_reader import get_vert_profile_s from amv.intercompare import get_raob_dict_cdf +from util.line_plot import do_plot amv_file_duration = 60 # minutes @@ -731,7 +732,7 @@ def analyze2(amvs_list, bf_list, raob_match_list, bf_gfs_list, amv_prod_list): # Comparison to Level of Best Fit (LBF) ------------------------------------------------------------------ # -------------------------------------------------------------------------------------------------------- bin_size = 100.0 - bin_ranges = get_press_bin_ranges(50, 1050, bin_size=bin_size) + bin_ranges = get_press_bin_ranges(100, 1000, bin_size=bin_size) vld_bf = bfs[:, 3] == 0 keep_idxs = vld_bf @@ -988,7 +989,7 @@ def compare_amvs_bestfit(amvs_list, bfs_list, bin_size=200): # Comparison to Level of Best Fit (LBF) ------------------------------------------------------------------ # -------------------------------------------------------------------------------------------------------- - bin_ranges = get_press_bin_ranges(50, 1050, bin_size=bin_size) + bin_ranges = get_press_bin_ranges(100, 1000, bin_size=bin_size) vld_bf = bfs[:, 3] == 0 keep_idxs = vld_bf @@ -1060,6 +1061,25 @@ def compare_amvs_bestfit(amvs_list, bfs_list, bin_size=200): return bin_ranges, bin_pres, bin_spd, bin_dir +def make_plot(bin_ranges, bin_pres, bin_spd, bin_dir): + x_values = [] + num_pres = [] + num_spd = [] + num_dir = [] + pres_mad = [] + pres_bias = [] + + for i in range(len(bin_ranges)): + x_values.append(np.average(bin_ranges[i])) + num_pres.append(bin_pres[i].shape[0]) + num_spd.append(bin_spd[i].shape[0]) + num_dir.append(bin_dir[i].shape[0]) + pres_mad.append(np.average(np.abs(bin_pres[i]))) + pres_bias.append(np.average(bin_pres[i])) + + do_plot(x_values, [pres_mad, pres_bias], ['mad', 'bias'], ['blue', 'red'], invert=True, flip=True) + + # imports the S4 NOAA output # filename: full path as a string, '/home/user/filename' # returns a dict: time -> list of profiles (a profile is a list of levels) -- GitLab