From 9d96b69be87f576747afee08918ac9e3606cf6a9 Mon Sep 17 00:00:00 2001
From: tomrink <rink@ssec.wisc.edu>
Date: Tue, 15 Dec 2020 15:45:54 -0600
Subject: [PATCH] snapshot...

---
 modules/aeolus/aeolus_amv.py | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)

diff --git a/modules/aeolus/aeolus_amv.py b/modules/aeolus/aeolus_amv.py
index 0d50c9ed..4a80d503 100644
--- a/modules/aeolus/aeolus_amv.py
+++ b/modules/aeolus/aeolus_amv.py
@@ -7,7 +7,7 @@ from netCDF4 import Dataset, Dimension, Variable
 from aeolus.geos_nav import GEOSNavigation
 from util.util import haversine_np, LatLonTuple
 from amv.intercompare import best_fit, bin_data_by, get_press_bin_ranges, spd_dir_from_uv, uv_from_spd_dir, \
-    direction_difference
+    direction_difference, run_best_fit_gfs
 import math
 from metpy.units import units
 from util.gfs_reader import get_vert_profile_s
@@ -239,7 +239,8 @@ def get_amvs(amv_files, timestamp, filepath=None):
     if filepath is None:
         filepath, ftime, f_idx = amv_files.get_file(timestamp)
     amv_params = amv_files.get_parameters()
-    amv_params = [amv_files.lat_name, amv_files.lon_name] + amv_params
+    # TODO: Need to generalize this better
+    amv_params = [amv_files.lat_name, amv_files.lon_name, amv_files.elem_name, amv_files.line_name] + amv_params
     ds = Dataset(filepath)
 
     param_s = []
@@ -470,12 +471,19 @@ def run_best_fit_all():
     amv_prod_list = []
     for k, file in enumerate(raob_files):
         raob_dct, ts = get_raob_dict_cdf(raob_dir+file)
-        m_d = match_amvs_to_raobs(raob_dct, ts, amv_files=amv_files)
-        amvs_list, bf_list, raob_match_list, bf_gfs_list = run_best_fit(m_d, raob_dct, gfs_dir+gfs_files[k],
-                                    amvs_list=amvs_list, bf_list=bf_list, raob_match_list=raob_match_list, bf_gfs_list=bf_gfs_list)
-        # analyze2(amvs_list, bf_list, raob_match_list, bf_gfs_list)
+        # m_d = match_amvs_to_raobs(raob_dct, ts, amv_files=amv_files)
+        # amvs_list, bf_list, raob_match_list, bf_gfs_list = run_best_fit(m_d, raob_dct, gfs_dir+gfs_files[k],
+        #                            amvs_list=amvs_list, bf_list=bf_list, raob_match_list=raob_match_list, bf_gfs_list=bf_gfs_list)
         # prd_dct = get_product_at_locs(m_d, ts, prd_files, amv_prod_list=amv_prod_list)
-    bin_ranges, bin_pres, bin_spd, bin_dir = analyze2(amvs_list, bf_list, raob_match_list, bf_gfs_list, amv_prod_list)
+        # analyze2(amvs_list, bf_list, raob_match_list, bf_gfs_list, amv_prod_list)
+        #
+        amvs = get_amvs(amv_files, ts)
+        amvs_list.append(amvs)
+        bfs = run_best_fit_gfs(amvs, gfs_dir+gfs_files[k], amv_lat_idx=0, amv_lon_idx=1, amv_prs_idx=4, amv_spd_idx=5, amv_dir_idx=6)
+        bf_list.append(bfs)
+
+    # bin_ranges, bin_pres, bin_spd, bin_dir = analyze2(amvs_list, bf_list, raob_match_list, bf_gfs_list, amv_prod_list)
+    bin_ranges, bin_pres, bin_spd, bin_dir = compare_amvs_bestfit(amvs_list, bf_list, bin_size=100)
 
     return bin_ranges, bin_pres, bin_spd, bin_dir
 
-- 
GitLab