mirror of https://gitlab.com/pamhyr/pamhyr2
Mage: Factorize file header.
parent
956a0714a2
commit
3ed1053619
|
|
@ -7,6 +7,15 @@ from tools import timer
|
||||||
from Solver.ASolver import AbstractSolver
|
from Solver.ASolver import AbstractSolver
|
||||||
from Checker.Mage import MageNetworkGraphChecker
|
from Checker.Mage import MageNetworkGraphChecker
|
||||||
|
|
||||||
|
def mage_file_open(filepath, mode):
|
||||||
|
f = open(filepath, mode)
|
||||||
|
|
||||||
|
if "w" in mode:
|
||||||
|
# Write header
|
||||||
|
f.write("* This file is generate by PAMHYR, please don't modify\n")
|
||||||
|
|
||||||
|
return f
|
||||||
|
|
||||||
class Mage(AbstractSolver):
|
class Mage(AbstractSolver):
|
||||||
_type = "mage"
|
_type = "mage"
|
||||||
|
|
||||||
|
|
@ -92,9 +101,8 @@ class Mage(AbstractSolver):
|
||||||
if edge._name == "":
|
if edge._name == "":
|
||||||
name = f"Reach_{edge.id}"
|
name = f"Reach_{edge.id}"
|
||||||
|
|
||||||
with open(os.path.join(repertory, f"{name}.ST"), "w+") as f:
|
with mage_file_open(os.path.join(repertory, f"{name}.ST"), "w+") as f:
|
||||||
files.append(f"{name}.ST")
|
files.append(f"{name}.ST")
|
||||||
f.write("* This file is generate by PAMHYR, please don't modify\n")
|
|
||||||
|
|
||||||
for profile in edge.reach.profiles:
|
for profile in edge.reach.profiles:
|
||||||
num = f"{profile.num:>6}"
|
num = f"{profile.num:>6}"
|
||||||
|
|
@ -128,11 +136,9 @@ class Mage(AbstractSolver):
|
||||||
if qlog is not None:
|
if qlog is not None:
|
||||||
qlog.put(f"Export {t} file")
|
qlog.put(f"Export {t} file")
|
||||||
|
|
||||||
with open(os.path.join(repertory, f"0.{t}"), "w+") as f:
|
with mage_file_open(os.path.join(repertory, f"0.{t}"), "w+") as f:
|
||||||
files.append(f"0.{t}")
|
files.append(f"0.{t}")
|
||||||
|
|
||||||
f.write("* This file is generate by PAMHYR, please don't modify\n")
|
|
||||||
|
|
||||||
for bound in bounds:
|
for bound in bounds:
|
||||||
name = f"{bound.node.id:3}".replace(" ", "x")
|
name = f"{bound.node.id:3}".replace(" ", "x")
|
||||||
f.write(f"* {bound.node.name} ({name}) {bound.bctype}\n")
|
f.write(f"* {bound.node.name} ({name}) {bound.bctype}\n")
|
||||||
|
|
@ -176,11 +182,9 @@ class Mage(AbstractSolver):
|
||||||
# if qlog is not None:
|
# if qlog is not None:
|
||||||
# qlog.put(f"Export LAT file")
|
# qlog.put(f"Export LAT file")
|
||||||
|
|
||||||
# with open(os.path.join(repertory, f"0.LAT"), "w+") as f:
|
# with mage_file_open(os.path.join(repertory, f"0.LAT"), "w+") as f:
|
||||||
# files.append(f"0.LAT")
|
# 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")
|
# name = f"{lateral.node.id:3}".replace(" ", "x")
|
||||||
# f.write(f"* {lateral.node.name} ({name}) {lateral.bctype}\n")
|
# f.write(f"* {lateral.node.name} ({name}) {lateral.bctype}\n")
|
||||||
# f.write(f"${name}\n")
|
# f.write(f"${name}\n")
|
||||||
|
|
@ -211,9 +215,8 @@ class Mage(AbstractSolver):
|
||||||
qlog.put("Export RUG file")
|
qlog.put("Export RUG file")
|
||||||
|
|
||||||
# Write header
|
# Write header
|
||||||
with open(os.path.join(repertory, "0.RUG"), "w+") as f:
|
with mage_file_open(os.path.join(repertory, "0.RUG"), "w+") as f:
|
||||||
files.append("0.RUG")
|
files.append("0.RUG")
|
||||||
f.write("* This file is generate by PAMHYR, please don't modify\n")
|
|
||||||
|
|
||||||
edges = study.river.edges()
|
edges = study.river.edges()
|
||||||
edges = list(
|
edges = list(
|
||||||
|
|
@ -253,7 +256,7 @@ class Mage(AbstractSolver):
|
||||||
qlog.put("Export INI file")
|
qlog.put("Export INI file")
|
||||||
|
|
||||||
# Write header
|
# Write header
|
||||||
with open(os.path.join(repertory, "0.INI"), "w+") as f:
|
with mage_file_open(os.path.join(repertory, "0.INI"), "w+") as f:
|
||||||
has_ini = False
|
has_ini = False
|
||||||
id = 1
|
id = 1
|
||||||
reachs = study.river.edges()
|
reachs = study.river.edges()
|
||||||
|
|
@ -264,7 +267,6 @@ class Mage(AbstractSolver):
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
f.write("* This file is generate by PAMHYR, please don't modify\n")
|
|
||||||
# TODO put real date...
|
# TODO put real date...
|
||||||
f.write(f"$ date en minutes : 0.00\n")
|
f.write(f"$ date en minutes : 0.00\n")
|
||||||
f.write(f"* IB IS discharge elevation kp\n")
|
f.write(f"* IB IS discharge elevation kp\n")
|
||||||
|
|
@ -301,9 +303,8 @@ class Mage(AbstractSolver):
|
||||||
qlog.put("Export REP file")
|
qlog.put("Export REP file")
|
||||||
|
|
||||||
# Write header
|
# Write header
|
||||||
with open(os.path.join(repertory, f"0.REP"), "w+") as f:
|
with mage_file_open(os.path.join(repertory, f"0.REP"), "w+") as f:
|
||||||
f.write("confirmation=non\n")
|
f.write("confirmation=non\n")
|
||||||
f.write("* This file is generate by PAMHYR, please don't modify\n")
|
|
||||||
|
|
||||||
for file in files:
|
for file in files:
|
||||||
EXT = file.split('.')[1]
|
EXT = file.split('.')[1]
|
||||||
|
|
@ -372,11 +373,9 @@ class Mage8(Mage):
|
||||||
if qlog is not None:
|
if qlog is not None:
|
||||||
qlog.put("Export PAR file")
|
qlog.put("Export PAR file")
|
||||||
|
|
||||||
with open(os.path.join(repertory, "0.PAR"), "w+") as f:
|
with mage_file_open(os.path.join(repertory, "0.PAR"), "w+") as f:
|
||||||
files.append("0.PAR")
|
files.append("0.PAR")
|
||||||
|
|
||||||
f.write("* This file is generate by PAMHYR, please don't modify\n")
|
|
||||||
|
|
||||||
params = study.river.get_params(self.type).parameters
|
params = study.river.get_params(self.type).parameters
|
||||||
for p in params:
|
for p in params:
|
||||||
name = p.name\
|
name = p.name\
|
||||||
|
|
@ -396,11 +395,9 @@ class Mage8(Mage):
|
||||||
if qlog is not None:
|
if qlog is not None:
|
||||||
qlog.put("Export NET file")
|
qlog.put("Export NET file")
|
||||||
|
|
||||||
with open(os.path.join(repertory, "0.NET"), "w+") as f:
|
with mage_file_open(os.path.join(repertory, "0.NET"), "w+") as f:
|
||||||
files.append("0.NET")
|
files.append("0.NET")
|
||||||
|
|
||||||
f.write("* This file is generate by PAMHYR, please don't modify\n")
|
|
||||||
|
|
||||||
edges = study.river.edges()
|
edges = study.river.edges()
|
||||||
edges = list(
|
edges = list(
|
||||||
filter(
|
filter(
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue