diff --git a/src/Solver/Mage.py b/src/Solver/Mage.py index 28142dca6c1fc14289ca5f70e27ae89df09c75e7..d4792b7fdbe64d223015fc9c0d7f1279b38c6f6e 100644 --- a/src/Solver/Mage.py +++ b/src/Solver/Mage.py @@ -122,6 +122,37 @@ class Mage(AbstractSolver): for bound in lst.get_tab(tab): self._export_BC(bound, repertory, qlog) + @timer + def _export_RUG(self, study, repertory, qlog = None): + if qlog is not None: + qlog.put("Export RUG file") + + # Write header + with open(os.path.join(repertory, f"0.RUG"), "w+") as f: + f.write("* This file is generate by PAMHYR, please don't modify\n") + + id = 1 + edges = study.river.edges() + for edge in edges: + sections = edge.sections + + for section in sections.sections: + num = f"{id:>3}" + bkp = f"{section.begin_kp:>10.3f}" + ekp = f"{section.end_kp:>10.3f}" + + 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 + + f.write("* END OF FILE") + @timer def export(self, study, repertory, qlog = None): self._export_ST(study, repertory, qlog) @@ -216,5 +247,6 @@ class Mage8(Mage): self._export_NET(study, repertory, qlog) self._export_ST(study, repertory, qlog) self._export_bound_cond(study, repertory, qlog) + self._export_RUG(study, repertory, qlog) return True