Skip to content
Snippets Groups Projects
Commit 45173c0d authored by tuckersiegel's avatar tuckersiegel
Browse files

normals adjustment

parent ac1357d6
No related branches found
No related tags found
No related merge requests found
......@@ -98,15 +98,26 @@ for year in years:
count += 1
if len(locs) != 0:
new_result = gdd.insert_many(locs)
### 30 YEAR NORMALS ###
### Covers from 1981-2010 ###
db = client["gdd_database"]
gdd = db.normals
gdd.drop()
gdd = db["normals"]
resp = gdd.create_index([ ("location", "2dsphere") ])
resp = gdd.create_index([ ("year", 1) ])
single_year_min = np.zeros((365, 621, 1405))
single_year_max = np.zeros((365, 621, 1405))
single_year_min[:] = np.nan
single_year_max[:] = np.nan
for year in range(1981, 2010+1):
print (year)
data = xr.open_dataset("data/temps_%s.nc" % year)
......@@ -123,16 +134,29 @@ for year in range(1981, 2010+1):
tmin_2 = tmaxs[60:]
tmins = np.concatenate([tmin_1, tmin_2], axis=0)
tmaxs = np.concatenate([tmin_1, tmin_2], axis=0)
tmaxs = np.concatenate([tmax_1, tmin_2], axis=0)
single_year_max += tmaxs/30
single_year_min += tmins/30
x = np.where(~np.isnan(np.nanmean(single_year_max, axis=0)))
x = [(a, b) for a, b in zip(x[0], x[1])]
# x = [(a, b) for a, b in zip(x[0], x[1])]
lat = lat[::-1]
# FORCE LOCATIONS TO COLLEGE PARK, LAT 38.99 LON -76.94 BECAUSE OF ATLAS LIMIT
a1 = np.where(38.5 < lat)[0].tolist()
a2 = np.where(lat < 39.5)[0].tolist()
lat_a = np.array(list(set(a1) & set(a2)))
a1 = np.where(-77 < lon)[0].tolist()
a2 = np.where(lon < -76)[0].tolist()
lon_a = np.array(list(set(a1) & set(a2)))
x1 = np.array(np.meshgrid(lat_a, lon_a)).T.reshape(len(lat_a) * len(lon_a), 2).tolist()
x1 = [(z[0], z[1]) for z in x1]
x2 = [(a, b) for a, b in zip(x[0], x[1])] # fix to x = [..... (x[0], x[1])] and all limiting stuff above and below when atlas limit removed
x = list(set(x1) & set(x2))
tmins = single_year_min
tmaxs = single_year_max
......@@ -163,8 +187,6 @@ for i in tqdm.tqdm(x):
t["prism_lat"] = int(a[0])
t["prism_lon"] = int(a[1])
t["last_date"] = 0#datetime.datetime.strptime(str(soy + np.timedelta64(len(tmin_) - 1, "D")) , "%Y-%m-%d")
t["year"] = 0
t["min_temps"] = list([float(a) for a in tmin_])
t["max_temps"] = list([float(a) for a in tmax_])
t["_id"] = _id
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment