Ensemble: Fix save/load methode.

scenario-dev-pa
Pierre-Antoine 2026-07-29 16:30:56 +02:00
parent 82fb2bcc48
commit 56217186ff
2 changed files with 8 additions and 9 deletions

View File

@ -109,13 +109,12 @@ class Ensemble(SQLSubModel):
data_pid = next(it)
owner_scenario = next(it)
def fn(f): f.name == fname
def fn(f): return f._name == fname
if fid != -1:
def fn(f): f.pamhyr_id == fid
def fn(f): return f._pamhyr_id == fid
function = next(
filter(fn, functions),
None
filter(fn, functions.lst),
)
rdata = cls._decode_range(range, range_len)
@ -147,7 +146,7 @@ class Ensemble(SQLSubModel):
brange, length = self._encode_range()
fid = self._function.pamhyr_id
fid = self._function._pamhyr_id
if self._function._type == "generic":
fid = -1
@ -159,7 +158,7 @@ class Ensemble(SQLSubModel):
"VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",
self.pamhyr_id, self.is_deleted(),
self._name, self._type,
fid, self._function.name, brange, length,
fid, self._function._name, brange, length,
self._data_pid, self._status.scenario_id
)

View File

@ -150,7 +150,7 @@ class Uniform(Function):
name=name, script=script
)
def get_sample(self, dist, ens_range):
def get_sample(self, ens_range):
b = ens_range[0]
t = ens_range[1]
n = ens_range[2]
@ -173,11 +173,11 @@ class Custom(Function):
self._type = "custom"
def get_sample(self, dist, ens_range):
def get_sample(self, ens_range):
try:
# Run script to (re)define the sample function
f = eval(self._script)
return f(dist, ens_range)
return f(ens_range)
except Exception as e:
logger_exception(e)
return None # TODO: Raise helpful exception