From 18d0ee334fa534441f07dd2ddb6e22b56e03c072 Mon Sep 17 00:00:00 2001
From: tomrink <rink@ssec.wisc.edu>
Date: Wed, 30 Mar 2022 14:17:49 -0500
Subject: [PATCH] snapshot...

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

diff --git a/modules/aeolus/aeolus_amv.py b/modules/aeolus/aeolus_amv.py
index 2f2a1503..9c51b9ad 100644
--- a/modules/aeolus/aeolus_amv.py
+++ b/modules/aeolus/aeolus_amv.py
@@ -2022,9 +2022,6 @@ def create_file_new2(filename, match_dct, raob_dct, gfs_at_raob_dct, bf_dct, amv
 
     alons = []
     alats = []
-    atimes = []
-    elems = []
-    lines = []
 
     #amv_file_s = np.array(amv_file_s, dtype='object')
 
@@ -2049,8 +2046,6 @@ def create_file_new2(filename, match_dct, raob_dct, gfs_at_raob_dct, bf_dct, amv
 
     alons = np.array(alons)
     alats = np.array(alats)
-    # elems = np.array(elems)
-    # lines = np.array(lines)
     print(max_num_alevels, max_num_amvs)
 
     # Sample file to retrieve and copy variable attributes
@@ -2064,32 +2059,30 @@ def create_file_new2(filename, match_dct, raob_dct, gfs_at_raob_dct, bf_dct, amv
     dim_alevs = rootgrp.createDimension('max_num_raob_levels', size=max_num_alevels)
     dim_amvs = rootgrp.createDimension('max_num_amvs', size=max_num_amvs)
     dim_num_aeolus_prof = rootgrp.createDimension('num_raob_profs', size=num_aprofs)
-    #dim_num_files = rootgrp.createDimension('num_amv_files', size=amv_file_s.shape[0])
 
     #prf_time = rootgrp.createVariable('time', 'f4', ['num_aeolus_profs'])
     #amv_file_names = rootgrp.createVariable('amv_file_names', str, ['num_amv_files'])
 
     # ---- Profile variables ---------------
-    prf_lon = rootgrp.createVariable('prof_longitude', 'f4', ['num_raob_profs'])
+    prf_lon = rootgrp.createVariable('raob_longitude', 'f4', ['num_raob_profs'])
     prf_lon.units = 'degrees east'
-    prf_lat = rootgrp.createVariable('prof_latitude', 'f4', ['num_raob_profs'])
+    prf_lat = rootgrp.createVariable('raob_latitude', 'f4', ['num_raob_profs'])
     prf_lat.units = 'degrees north'
     #prf_time.units = 'seconds since 1970-01-1 00:00:00'
 
-    #prf_elem = rootgrp.createVariable('FD_elem', 'f4', ['num_raob_profs'])
-    #prf_line = rootgrp.createVariable('FD_line', 'f4', ['num_raob_profs'])
-
-    prf_dir = rootgrp.createVariable('prof_dir', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
+    prf_dir = rootgrp.createVariable('raob_dir', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
     prf_dir.units = 'degree'
-    prf_spd = rootgrp.createVariable('prof_spd', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
+    prf_spd = rootgrp.createVariable('raob_spd', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
     prf_spd.units = 'm s-1'
-    prf_lvl = rootgrp.createVariable('prof_lvl', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
+    prf_lvl = rootgrp.createVariable('raob_levels', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
     prf_lvl.units = 'millibar'
-    #prf_hhb = rootgrp.createVariable('prof_hhb', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
-    #prf_hhb.units = 'meter'
 
     # ----- Product variables ----------------
     nc4_vars = []
+    nc4_vars.append(rootgrp.createVariable('amv_lon', 'f4', ['num_raob_profs', 'max_num_amvs']))
+    nc4_vars.append(rootgrp.createVariable('amv_lat', 'f4', ['num_raob_profs', 'max_num_amvs']))
+    nc4_vars.append(rootgrp.createVariable('amv_elem', 'i4', ['num_raob_profs', 'max_num_amvs']))
+    nc4_vars.append(rootgrp.createVariable('amv_line', 'i4', ['num_raob_profs', 'max_num_amvs']))
     var_s = rg_exmpl.variables
     for pidx, param in enumerate(amv_params):
         v = var_s[param]
@@ -2104,15 +2097,14 @@ def create_file_new2(filename, match_dct, raob_dct, gfs_at_raob_dct, bf_dct, amv
                 var.setncattr(attr, v.getncattr(attr))
         nc4_vars.append(var)
 
+    amv_params = ['amv_lon', 'amv_lat', 'amv_elem', 'amv_line'] + amv_params
+
     # Write data to file  ---------------------
     prf_lon[:] = alons
     prf_lat[:] = alats
-    #prf_elem[:] = elems
-    #prf_line[:] = lines
 
     #amv_file_names[:] = amv_file_s
 
-    idx = 0
     for idx, key in enumerate(keys):
         raob = raob_dct.get(key)
         nlevs = raob.shape[0]
@@ -2120,12 +2112,12 @@ def create_file_new2(filename, match_dct, raob_dct, gfs_at_raob_dct, bf_dct, amv
         amvs = bf_tup[0]
         num_amvs = amvs.shape[0]
 
-        prf_lvl[idx,0:nlevs] = raob[:,0]
-        prf_dir[idx,0:nlevs] = raob[:,2]
-        prf_spd[idx,0:nlevs] = raob[:,3]
+        prf_lvl[idx,0:nlevs] = raob[:, 0]
+        prf_dir[idx,0:nlevs] = raob[:, 2]
+        prf_spd[idx,0:nlevs] = raob[:, 3]
 
         for pidx, param in enumerate(amv_params):
-            nc4_vars[pidx][idx,0:num_amvs] = amvs[:, 4+pidx]
+            nc4_vars[pidx][idx, 0:num_amvs] = amvs[:, pidx]
 
     rg_exmpl.close()
     rootgrp.close()
-- 
GitLab