mirror of https://gitlab.com/pamhyr/pamhyr2
Solver: Mage: Enable LC export.
parent
672f81f216
commit
dc114f759d
|
|
@ -147,14 +147,7 @@ class Mage(CommandLineSolver):
|
||||||
os.makedirs(os.path.join(repertory, "net"), exist_ok=True)
|
os.makedirs(os.path.join(repertory, "net"), exist_ok=True)
|
||||||
|
|
||||||
# Write header
|
# Write header
|
||||||
edges = study.river.edges()
|
edges = study.river.enable_edges()
|
||||||
edges = list(
|
|
||||||
filter(
|
|
||||||
lambda e: e.is_enable(),
|
|
||||||
edges
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
for edge in edges:
|
for edge in edges:
|
||||||
name = f"Reach_{edge.id + 1:>3}".replace(" ", "0")
|
name = f"Reach_{edge.id + 1:>3}".replace(" ", "0")
|
||||||
|
|
||||||
|
|
@ -308,40 +301,50 @@ class Mage(CommandLineSolver):
|
||||||
|
|
||||||
return files
|
return files
|
||||||
|
|
||||||
# @timer
|
@timer
|
||||||
# def _export_LC(self, lateral, repertory, qlog, name="0"):
|
def _export_lateral_contrib(self, study, repertory, qlog, name="0"):
|
||||||
# files = []
|
files = []
|
||||||
|
lst = study.river.lateral_contribution
|
||||||
|
|
||||||
# if qlog is not None:
|
with mage_file_open(
|
||||||
# qlog.put(f"Export LAT file")
|
os.path.join(repertory, f"{name}.LAT"),
|
||||||
|
"w+"
|
||||||
|
) as f:
|
||||||
|
if qlog is not None:
|
||||||
|
qlog.put(f"Export LAT file")
|
||||||
|
files.append(f"{name}.LAT")
|
||||||
|
|
||||||
# with mage_file_open(
|
for tab in ["liquid", "solid", "suspenssion"]:
|
||||||
# os.path.join(repertory, f"{name}.LAT"),
|
for lateral in lst.get_tab(tab):
|
||||||
# "w+"
|
self._export_LC(study, lateral, f, qlog)
|
||||||
# ) as f:
|
|
||||||
# files.append(f"{name}.LAT")
|
|
||||||
|
|
||||||
# name = f"{lateral.node.id:3}".replace(" ", "x")
|
return files
|
||||||
# f.write(f"* {lateral.node.name} ({name}) {lateral.bctype}\n")
|
|
||||||
# f.write(f"${name}\n")
|
|
||||||
# header = lateral.header
|
|
||||||
# f.write(f"*{header[0]:>9}|{header[1]:>10}\n")
|
|
||||||
|
|
||||||
# for d in lateral.data:
|
@timer
|
||||||
# f.write(f"{d[0]:1{name}.3f}{d[1]:10.3f}\n")
|
def _export_LC(self, study, lateral, f, qlog, name="0"):
|
||||||
|
edges = study.river.enable_edges()
|
||||||
|
if lateral.edge not in edges:
|
||||||
|
return
|
||||||
|
|
||||||
# return files
|
eid, _ = next(
|
||||||
|
filter(
|
||||||
|
lambda e: e[1] == lateral.edge,
|
||||||
|
enumerate(edges)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
# @timer
|
name = f"{eid+1:>3}"
|
||||||
# def _export_lateral_contrib(self, study, repertory, qlog, name="0"):
|
# name = f"Reach_{lateral.edge.id + 1:>3}".replace(" ", "0")
|
||||||
# files = []
|
f.write(f"* {lateral.edge.name} ({name}) {lateral.lctype}\n")
|
||||||
# lst = study.river.lateral_contribution
|
f.write(f"${name} {lateral.begin_kp:>10.4f} {lateral.end_kp:>10.4f}\n")
|
||||||
|
header = lateral.header
|
||||||
|
f.write(f"*{header[0]:>9}|{header[1]:>10}\n")
|
||||||
|
|
||||||
# for tab in ["liquid", "solid", "suspenssion"]:
|
for d in lateral.data:
|
||||||
# for lateral in lst.get_tab(tab):
|
if lateral.lctype in ["EV"]:
|
||||||
# files = files + self._export_LC(lateral, repertory, qlog)
|
f.write(f"{d[0]:10.3f}{-d[1]:10.3f}\n")
|
||||||
|
else:
|
||||||
# return files
|
f.write(f"{d[0]:10.3f}{d[1]:10.3f}\n")
|
||||||
|
|
||||||
@timer
|
@timer
|
||||||
def _export_RUG(self, study, repertory, qlog, name="0"):
|
def _export_RUG(self, study, repertory, qlog, name="0"):
|
||||||
|
|
@ -821,13 +824,7 @@ class Mage8(Mage):
|
||||||
with mage_file_open(os.path.join(repertory, f"{name}.NET"), "w+") as f:
|
with mage_file_open(os.path.join(repertory, f"{name}.NET"), "w+") as f:
|
||||||
files.append(f"{name}.NET")
|
files.append(f"{name}.NET")
|
||||||
|
|
||||||
edges = study.river.edges()
|
edges = study.river.enable_edges()
|
||||||
edges = list(
|
|
||||||
filter(
|
|
||||||
lambda e: e.is_enable(),
|
|
||||||
edges
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
for e in edges:
|
for e in edges:
|
||||||
name = f"Reach_{e.id + 1:>3}".replace(" ", "0")
|
name = f"Reach_{e.id + 1:>3}".replace(" ", "0")
|
||||||
|
|
@ -884,6 +881,7 @@ class Mage8(Mage):
|
||||||
self._export_RUG, self._export_INI,
|
self._export_RUG, self._export_INI,
|
||||||
self._export_SIN, self._export_VAR,
|
self._export_SIN, self._export_VAR,
|
||||||
self._export_CAS, self._export_DEV,
|
self._export_CAS, self._export_DEV,
|
||||||
|
self._export_lateral_contrib,
|
||||||
]
|
]
|
||||||
|
|
||||||
@timer
|
@timer
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue