diff --git a/src/Solver/RubarBE.py b/src/Solver/RubarBE.py index 6b3810ba..2b1afc51 100644 --- a/src/Solver/RubarBE.py +++ b/src/Solver/RubarBE.py @@ -147,6 +147,7 @@ class Rubar3(CommandLineSolver): self._export_stricklers(study, repertory, qlog, name=name) self._export_hydro(study, repertory, qlog, name=name) self._export_condav(study, repertory, qlog, name=name) + self._export_abshyd(study, repertory, qlog, name=name) return True @@ -330,6 +331,29 @@ class Rubar3(CommandLineSolver): if ind % 3 != 0: f.write("\n") + def _export_abshyd(self, study, repertory, qlog, name="0"): + if qlog is not None: + qlog.put("Export ABSHYD file") + + with open( + os.path.join( + repertory, f"abshyd.{name}" + ), "w+" + ) as f: + reach_ind = 1 + for edge in study.river.enable_edges(): + reach = edge.reach + lm = len(reach) + 1 + f.write(f"{lm:>13}\n") + + ind = 1 + for mail in reach.get_rk(): + f.write(f"{ind:>4} {mail:15.3f} {reach_ind:>4}\n") + + ind += 1 + + reach_ind += 1 + def _export_stricklers(self, study, repertory, qlog, name="0"): self._export_frot(study, repertory, qlog, name=name, version="") self._export_frot(study, repertory, qlog, name=name, version="2")