Commit 05e70d40 authored by Pierre-Antoine Rouby's avatar Pierre-Antoine Rouby
Browse files

Mage: Get only enable edges for export files.

Showing with 72 additions and 7 deletions
+72 -7
......@@ -74,7 +74,15 @@ class Mage(AbstractSolver):
qlog.put("Export ST file")
# Write header
for edge in study.river.edges():
edges = study.river.edges()
edges = list(
filter(
lambda e: e.is_enable(),
edges
)
)
for edge in edges:
name = edge.name.replace(" ", "_")
if edge._name == "":
name = f"Reach_{edge.id}"
......@@ -114,6 +122,8 @@ class Mage(AbstractSolver):
t = "AVA"
elif bound.bctype == "TD":
t = "HYD"
elif bound.bctype == "TZ":
t = "LIM"
else:
return None
......@@ -134,7 +144,6 @@ class Mage(AbstractSolver):
for d in bound.data:
f.write(f"{d[0]:10.3f}{d[1]:10.3f}\n")
return files
@timer
......@@ -148,6 +157,40 @@ class Mage(AbstractSolver):
return files
# @timer
# def _export_LC(self, lateral, repertory, qlog):
# files = []
# if qlog is not None:
# qlog.put(f"Export LAT file")
# with open(os.path.join(repertory, f"0.LAT"), "w+") as f:
# files.append(f"0.LAT")
# f.write("* This file is generate by PAMHYR, please don't modify\n")
# 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")
# for d in lateral.data:
# f.write(f"{d[0]:10.3f}{d[1]:10.3f}\n")
# return files
# @timer
# def _export_lateral_contrib(self, study, repertory, qlog):
# files = []
# lst = study.river.lateral_contribution
# for tab in ["liquid", "solid", "suspenssion"]:
# for lateral in lst.get_tab(tab):
# files = files + self._export_LC(lateral, repertory, qlog)
# return files
@timer
def _export_RUG(self, study, repertory, qlog):
files = []
......@@ -160,8 +203,15 @@ class Mage(AbstractSolver):
files.append("0.RUG")
f.write("* This file is generate by PAMHYR, please don't modify\n")
id = 1
edges = study.river.edges()
edges = list(
filter(
lambda e: e.is_enable(),
edges
)
)
id = 1
for edge in edges:
sections = edge.sections
......@@ -170,15 +220,16 @@ class Mage(AbstractSolver):
bkp = f"{section.begin_kp:>10.3f}"
ekp = f"{section.end_kp:>10.3f}"
if section.begin_kp != section.end_kp:
print("TODO")
# if section.begin_kp != section.end_kp:
# print("TODO")
strickler = section.begin_strickler
coef_1 = f"{strickler.minor:>10.3f}"
coef_2 = f"{strickler.medium:>10.3f}"
f.write(f"K{num} {bkp}{ekp}{coef_1}{coef_2}\n")
id += 1
id += 1
return files
......@@ -199,6 +250,14 @@ class Mage(AbstractSolver):
id = 1
reachs = study.river.edges()
reachs = list(
filter(
lambda e: e.is_enable(),
reachs
)
)
id = 1
for reach in reachs:
cond = study.river.initial_conditions.get(reach)
data = cond.data
......@@ -228,7 +287,6 @@ class Mage(AbstractSolver):
f.write("confirmation=non\n")
f.write("* This file is generate by PAMHYR, please don't modify\n")
edges = study.river.edges()
for file in files:
EXT = file.split('.')[1]
......@@ -322,6 +380,13 @@ class Mage8(Mage):
f.write("* This file is generate by PAMHYR, please don't modify\n")
edges = study.river.edges()
edges = list(
filter(
lambda e: e.is_enable(),
edges
)
)
for e in edges:
name = e.name.replace(" ", "_")
if e._name == "":
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment