Skip to content

Commit c2d31e7

Browse files
committed
do better job checking that surge lookup interp only results in nans for expected low lslr
1 parent dc0389b commit c2d31e7

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

pyCIAM/run.py

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -341,32 +341,44 @@ def calc_costs(
341341
)
342342
if this_surge_lookup.sum() == 0:
343343
continue
344-
surge_noadapt.append(
344+
this_surge_noadapt = (
345345
this_surge_lookup.sel(adapttype="retreat", drop=True)
346346
.interp(
347347
lslr=lslr.sel(seg=seg),
348348
rh_diff=rh_diff_noadapt.sel(seg=seg),
349349
assume_sorted=True,
350-
kwargs={"fill_value": 0},
351350
)
352351
.reset_coords(drop=True)
353352
.expand_dims(seg=[seg])
354353
)
355354

355+
# ensure nans are only at the beginning
356+
assert this_surge_noadapt.isnull().sum(
357+
"lslr"
358+
) == this_surge_noadapt.notnull().argmax("lslr")
359+
360+
surge_noadapt.append(this_surge_noadapt.fillna(0))
361+
356362
surge_adapt = []
357363
for adapttype in this_surge_lookup.adapttype.values:
358-
surge_adapt.append(
364+
this_surge_adapt = (
359365
this_surge_lookup.sel(adapttype=adapttype)
360366
.interp(
361367
lslr=lslr.sel(seg=seg),
362368
rh_diff=rh_diff.sel(
363369
adapttype=adapttype, seg=seg, drop=True
364370
),
365371
assume_sorted=True,
366-
kwargs={"fill_value": 0},
367372
)
368373
.reset_coords(drop=True)
369374
)
375+
376+
# ensure nans are only at the beginning
377+
assert this_surge_adapt.isnull().sum(
378+
"lslr"
379+
) == this_surge_adapt.notnull().argmax("lslr")
380+
381+
surge_adapt.append(this_surge_adapt.fillna(0))
370382
surge.append(
371383
xr.concat(surge_adapt, dim=this_surge_lookup.adapttype).expand_dims(
372384
seg=[seg]

0 commit comments

Comments
 (0)