Skip to content
Snippets Groups Projects
Commit d0a4ec8b authored by rink's avatar rink
Browse files

snapshot..

parent d9457cd6
Branches
No related tags found
No related merge requests found
......@@ -6,6 +6,7 @@ import xarray as xr
from netCDF4 import Dataset, Dimension, Variable
from aeolus.geos_nav import GEOSNavigation
from util.util import haversine_np
import math
amv_file_duration = 60 # minutes
......@@ -263,8 +264,8 @@ def get_aeolus_time_dict_s(files_path, lon360=False, do_sort=True, chan='mie'):
dct_s = []
for fname in sorted_filenames:
a_dct = get_aeolus_time_dict(fname, lon360=lon360, do_sort=do_sort)
t_dct = time_dict_to_nd(a_dct)
dct_s.append(t_dct)
# t_dct = time_dict_to_nd(a_dct)
dct_s.append(a_dct)
t_dct = dct_s[0]
......@@ -274,6 +275,61 @@ def get_aeolus_time_dict_s(files_path, lon360=False, do_sort=True, chan='mie'):
return t_dct
def time_dict_to_cld_layers(time_dict):
time_dict_layers = {}
keys = list(time_dict.keys())
for key in keys:
prof_s = time_dict[key]
layers = []
prof = prof_s[0]
if len(prof) == 1:
tup = prof[0]
layers.append((tup[0], tup[1], tup[3], tup[4]))
time_dict_layers[key] = layers
continue
top = -9999.9
last_bot = -9999.9
tup = None
for i in range(len(prof)):
tup = prof[i]
if i == 0:
top = tup[3]
bot = tup[4]
last_bot = bot
else:
if math.fabs(last_bot - tup[3]) > 10.0:
layers.append((tup[0], tup[1], top, last_bot))
top = tup[3]
last_bot = tup[4]
layers.append((tup[0], tup[1], top, tup[4]))
time_dict_layers[key] = layers
return time_dict_layers
def time_dict_to_nd_2(time_dict):
keys = list(time_dict.keys())
for key in keys:
vals = time_dict[key]
if vals is not None:
time_dict[key] = np.stack(vals)
return time_dict
def get_cloud_layers_dict(filename, lon360=False):
a_d = get_aeolus_time_dict(filename, lon360=lon360)
c_d = time_dict_to_cld_layers(a_d)
cld_lyr_dct = time_dict_to_nd_2(c_d)
return cld_lyr_dct
def run_amv_aeolus_best_fit(match_dict, aeolus_dict):
keys = list(match_dict.keys())
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment