You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now, EvaluateSurrogate accepts 'ell_m', a list of modes to load
Until I look at the surrogate file itself, I don't know what modes are available (e.g., single mode vs multi mode)
If I pass an 'ell_m' list that includes modes that aren't available in the surrogate (e.g., all modes below some lmax; modes with m<0, for a reflection-symmetric model), the code fails to find them in the .h5 file, and fails.
Would it be possible to modify 'CreateManyEvaluateSingleModeSurrogate' (old interface) to either handle requested but missing modes more gently, by taking the intersection of the modes that are requested and the modes that are available? In about line 780 in surrogate.py?
Specifically, the following
### compile list of available modes ###
modes_available =[]
for kk in fp.keys():
splitkk = kk.split('_')
if splitkk[0][0] == 'l' and splitkk[1][0] == 'm':
ell = int(splitkk[0][1])
emm = int(splitkk[1][1:])
if not (ell, emm) in exc_modes:
modes_available.append((ell,emm))
if ell_m is None:
mode_keys = modes_available
else:
mode_keys = []
for i, mode in enumerate(ell_m):
if mode in exc_modes:
print "WARNING: Mode (%d,%d) is both included and excluded! Excluding it."%mode
else:
if mode in modes_available:
mode_keys.append(mode)
The text was updated successfully, but these errors were encountered:
This is from Richard:
Would it be possible to modify 'CreateManyEvaluateSingleModeSurrogate' (old interface) to either handle requested but missing modes more gently, by taking the intersection of the modes that are requested and the modes that are available? In about line 780 in surrogate.py?
Specifically, the following
The text was updated successfully, but these errors were encountered: