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)
|
||||
|
||||
# Write header
|
||||
edges = study.river.edges()
|
||||
edges = list(
|
||||
filter(
|
||||
lambda e: e.is_enable(),
|
||||
edges
|
||||
)
|
||||
)
|
||||
|
||||
edges = study.river.enable_edges()
|
||||
for edge in edges:
|
||||
name = f"Reach_{edge.id + 1:>3}".replace(" ", "0")
|
||||
|
||||
|
|
@ -308,40 +301,50 @@ class Mage(CommandLineSolver):
|
|||
|
||||
return files
|
||||
|
||||
# @timer
|
||||
# def _export_LC(self, lateral, repertory, qlog, name="0"):
|
||||
# files = []
|
||||
@timer
|
||||
def _export_lateral_contrib(self, study, repertory, qlog, name="0"):
|
||||
files = []
|
||||
lst = study.river.lateral_contribution
|
||||
|
||||
# if qlog is not None:
|
||||
# qlog.put(f"Export LAT file")
|
||||
with mage_file_open(
|
||||
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(
|
||||
# os.path.join(repertory, f"{name}.LAT"),
|
||||
# "w+"
|
||||
# ) as f:
|
||||
# files.append(f"{name}.LAT")
|
||||
for tab in ["liquid", "solid", "suspenssion"]:
|
||||
for lateral in lst.get_tab(tab):
|
||||
self._export_LC(study, lateral, f, qlog)
|
||||
|
||||
# name = f"{lateral.node.id:3}".replace(" ", "x")
|
||||
# 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")
|
||||
return files
|
||||
|
||||
# for d in lateral.data:
|
||||
# f.write(f"{d[0]:1{name}.3f}{d[1]:10.3f}\n")
|
||||
@timer
|
||||
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
|
||||
# def _export_lateral_contrib(self, study, repertory, qlog, name="0"):
|
||||
# files = []
|
||||
# lst = study.river.lateral_contribution
|
||||
name = f"{eid+1:>3}"
|
||||
# name = f"Reach_{lateral.edge.id + 1:>3}".replace(" ", "0")
|
||||
f.write(f"* {lateral.edge.name} ({name}) {lateral.lctype}\n")
|
||||
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 lateral in lst.get_tab(tab):
|
||||
# files = files + self._export_LC(lateral, repertory, qlog)
|
||||
|
||||
# return files
|
||||
for d in lateral.data:
|
||||
if lateral.lctype in ["EV"]:
|
||||
f.write(f"{d[0]:10.3f}{-d[1]:10.3f}\n")
|
||||
else:
|
||||
f.write(f"{d[0]:10.3f}{d[1]:10.3f}\n")
|
||||
|
||||
@timer
|
||||
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:
|
||||
files.append(f"{name}.NET")
|
||||
|
||||
edges = study.river.edges()
|
||||
edges = list(
|
||||
filter(
|
||||
lambda e: e.is_enable(),
|
||||
edges
|
||||
)
|
||||
)
|
||||
edges = study.river.enable_edges()
|
||||
|
||||
for e in edges:
|
||||
name = f"Reach_{e.id + 1:>3}".replace(" ", "0")
|
||||
|
|
@ -884,6 +881,7 @@ class Mage8(Mage):
|
|||
self._export_RUG, self._export_INI,
|
||||
self._export_SIN, self._export_VAR,
|
||||
self._export_CAS, self._export_DEV,
|
||||
self._export_lateral_contrib,
|
||||
]
|
||||
|
||||
@timer
|
||||
|
|
|
|||
Loading…
Reference in New Issue