mirror of https://gitlab.com/pamhyr/pamhyr2
AdisTS: Fix mage result workdir and add scenario into paths.
parent
850db144ac
commit
da78d0cdb1
|
|
@ -164,11 +164,11 @@ class AdisTS(CommandLineSolver):
|
||||||
return lst
|
return lst
|
||||||
|
|
||||||
def input_param(self):
|
def input_param(self):
|
||||||
name = self._study.name
|
name = self._study.name.replace(" ", "_")
|
||||||
return f"{name}.REP"
|
return f"{name}.REP"
|
||||||
|
|
||||||
def log_file(self):
|
def log_file(self):
|
||||||
name = self._study.name
|
name = self._study.name.replace(" ", "_")
|
||||||
return f"{name}.TRA"
|
return f"{name}.TRA"
|
||||||
|
|
||||||
def _export_ST(self, study, repertory, qlog, name="0"):
|
def _export_ST(self, study, repertory, qlog, name="0"):
|
||||||
|
|
|
||||||
|
|
@ -185,6 +185,9 @@ class SolverLogWindowAdisTS(PamhyrWindow):
|
||||||
parent=parent
|
parent=parent
|
||||||
)
|
)
|
||||||
|
|
||||||
|
self._workdir = ""
|
||||||
|
self._workdir_mage = ""
|
||||||
|
|
||||||
self.setup_action()
|
self.setup_action()
|
||||||
self.setup_alarm()
|
self.setup_alarm()
|
||||||
self.setup_connections()
|
self.setup_connections()
|
||||||
|
|
@ -227,18 +230,48 @@ class SolverLogWindowAdisTS(PamhyrWindow):
|
||||||
self._alarm.timeout.connect(self.update)
|
self._alarm.timeout.connect(self.update)
|
||||||
|
|
||||||
def setup_workdir(self):
|
def setup_workdir(self):
|
||||||
self._workdir = ""
|
scenario = self._study.status.scenario
|
||||||
|
srep = scenario.workdir()
|
||||||
|
|
||||||
if self._study.filename == "":
|
if self._study.filename == "":
|
||||||
self._workdir = tempfile.TemporaryDirectory()
|
self._workdir = os.path.join(
|
||||||
|
tempfile.TemporaryDirectory(),
|
||||||
|
srep
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
self._workdir = os.path.join(
|
self._workdir = os.path.join(
|
||||||
os.path.dirname(self._study.filename),
|
os.path.dirname(self._study.filename),
|
||||||
"_PAMHYR_",
|
"_PAMHYR_",
|
||||||
self._study.name.replace(" ", "_"),
|
self._study.name.replace(" ", "_"),
|
||||||
self._solver.name.replace(" ", "_"),
|
self._solver.name.replace(" ", "_"),
|
||||||
|
srep
|
||||||
)
|
)
|
||||||
|
|
||||||
|
logger.info(f"Create workdir: '{self._workdir}'")
|
||||||
os.makedirs(self._workdir, exist_ok=True)
|
os.makedirs(self._workdir, exist_ok=True)
|
||||||
|
|
||||||
|
self.setup_mage_workdir()
|
||||||
|
|
||||||
|
def setup_mage_workdir(self):
|
||||||
|
scenario = self._study.status.scenario
|
||||||
|
srep = scenario.workdir()
|
||||||
|
|
||||||
|
if self._study.filename == "":
|
||||||
|
self._workdir_mage = os.path.join(
|
||||||
|
tempfile.TemporaryDirectory(),
|
||||||
|
srep
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
self._workdir_mage = os.path.join(
|
||||||
|
os.path.dirname(self._study.filename),
|
||||||
|
"_PAMHYR_",
|
||||||
|
self._study.name.replace(" ", "_"),
|
||||||
|
self._mage_rep.replace(" ", "_"),
|
||||||
|
srep
|
||||||
|
)
|
||||||
|
|
||||||
|
logger.info(f"Create workdir: '{self._workdir_mage}'")
|
||||||
|
|
||||||
def setup_process(self):
|
def setup_process(self):
|
||||||
self._alarm.start(100)
|
self._alarm.start(100)
|
||||||
self._output = Queue()
|
self._output = Queue()
|
||||||
|
|
@ -253,7 +286,8 @@ class SolverLogWindowAdisTS(PamhyrWindow):
|
||||||
def export(self):
|
def export(self):
|
||||||
self._log(f" *** Export study {self._solver.name}", color="blue")
|
self._log(f" *** Export study {self._solver.name}", color="blue")
|
||||||
ok = self._solver.export(
|
ok = self._solver.export(
|
||||||
self._study, self._workdir, self._mage_rep, qlog=self._output
|
self._study, self._workdir, self._workdir_mage,
|
||||||
|
qlog=self._output
|
||||||
)
|
)
|
||||||
self.update()
|
self.update()
|
||||||
|
|
||||||
|
|
@ -367,7 +401,8 @@ class SolverLogWindowAdisTS(PamhyrWindow):
|
||||||
self._log(f" *** Export study {self._solver.name}", color="blue")
|
self._log(f" *** Export study {self._solver.name}", color="blue")
|
||||||
|
|
||||||
ok = self._solver.export(
|
ok = self._solver.export(
|
||||||
self._study, self._workdir, self._mage_rep, qlog=self._output
|
self._study, self._workdir, self._workdir_mage,
|
||||||
|
qlog=self._output
|
||||||
)
|
)
|
||||||
|
|
||||||
if not ok:
|
if not ok:
|
||||||
|
|
@ -443,12 +478,7 @@ class SolverLogWindowAdisTS(PamhyrWindow):
|
||||||
mage_solver = next(filter(
|
mage_solver = next(filter(
|
||||||
lambda x: x._name == self._mage_rep, self._config.solvers
|
lambda x: x._name == self._mage_rep, self._config.solvers
|
||||||
))
|
))
|
||||||
workdir_mage = os.path.join(
|
workdir_mage = self._workdir_mage
|
||||||
os.path.dirname(self._study.filename),
|
|
||||||
"_PAMHYR_",
|
|
||||||
self._study.name.replace(" ", "_"),
|
|
||||||
mage_solver.name.replace(" ", "_"),
|
|
||||||
)
|
|
||||||
|
|
||||||
def reading_fn():
|
def reading_fn():
|
||||||
self._results_mage = mage_solver.results(
|
self._results_mage = mage_solver.results(
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue