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