diff --git a/src/Solver/ASolver.py b/src/Solver/ASolver.py index 3f2491c7ae700e3c00603d32a6e430c5d6030890..8510d41a414709856ebc49eb0b5b28a4ab145025 100644 --- a/src/Solver/ASolver.py +++ b/src/Solver/ASolver.py @@ -45,7 +45,13 @@ class AbstractSolver(object): @classmethod def default_parameters(cls): - return [] + lst = [ + ("all_time_init", "00:00:00:00"), + ("all_time_final", "01:00:00:00"), + ("all_time_step", "300"), + ] + + return lst @property def name(self): diff --git a/src/Solver/Mage.py b/src/Solver/Mage.py index 94c1e7a0079db94a62b717e4680d4d9a2ed93bc0..ec2123619b40108dc1c0c72111b895440cdce022 100644 --- a/src/Solver/Mage.py +++ b/src/Solver/Mage.py @@ -17,7 +17,24 @@ class Mage(GenericSolver): lst = super(Mage, cls).default_parameters() lst += [ - ("mage_time_step", "300"), + ("mage_time_step_tra", "3600"), + ("mage_time_step_bin", "0"), + ("mage_param_impli", "0.70"), + ("mage_iter_type", "0"), + ("mage_smooth_coef", "0"), + ("mage_stream_number", "-1."), + ("mage_water_minimum_height", "0.1"), + ("mage_maximun_number_iter", "10"), + ("mage_minimal_time_step", "1"), + ("mage_time_step_reduction_factor", "2"), + ("mage_precision_reduction_factor_Z", "1"), + ("mage_precision_reduction_factor_Q", "1"), + ("mage_iter_num_max_precision", "99"), + ("mage_error_bound_mesh_elevation", "-1"), + ("mage_maximun_froude_number", "2"), + ("mage_volume_report_monitoring_yn", "y"), + ("mage_divergence_relative_error", "0.001"), + ("mage_minimal_reach_volume_error", "1000"), ] return lst @@ -32,8 +49,8 @@ class Mage7(Mage): @classmethod def default_parameters(cls): lst = super(Mage7, cls).default_parameters() - return lst + return lst class Mage8(Mage): @@ -45,4 +62,10 @@ class Mage8(Mage): @classmethod def default_parameters(cls): lst = super(Mage8, cls).default_parameters() + + # Insert new parameters at specific position + names = list(map(lambda t: t[0], lst)) + i = names.index("mage_precision_reduction_factor_Q") + lst.insert(i+1, ("mage_precision_reduction_factor_r", "1")) + return lst diff --git a/src/View/SolverParameters/translate.py b/src/View/SolverParameters/translate.py index 1b394212ffb04b7d337c2be4fee5f1269c26837a..1a34a0e0dbecf69f84871c4fc9f1a7e4f52f3997 100644 --- a/src/View/SolverParameters/translate.py +++ b/src/View/SolverParameters/translate.py @@ -36,5 +36,26 @@ def init(): global names names = { - "mage_time_step": _translate("SolverParameters", "Time step in second") + "all_time_init": _translate("SolverParameters", "Initial time (jj:hh:mm:ss)"), + "all_time_final": _translate("SolverParameters", "Final time (jj:hh:mm:ss)"), + "all_time_step": _translate("SolverParameters", "Time step (second)"), + "mage_param_impli": _translate("SolverParameters", "Implicitation parameter"), + "mage_time_step_tra": _translate("SolverParameters", "Time step of writing on .TRA"), + "mage_time_step_bin": _translate("SolverParameters", "Time step of writing on .BIN"), + "mage_iter_type": _translate("SolverParameters", "Iteration type"), + "mage_smooth_coef": _translate("SolverParameters", "Smoothing coefficient"), + "mage_stream_number": _translate("SolverParameters", "Maximun accepted number of stream"), + "mage_water_minimum_height": _translate("SolverParameters", "Minimum water height (meter)"), + "mage_maximun_number_iter": _translate("SolverParameters", "Maximun number of iterations (< 100)"), + "mage_minimal_time_step": _translate("SolverParameters", "Minimum time step (second)"), + "mage_time_step_reduction_factor": _translate("SolverParameters", "Reduction factor of time step"), + "mage_iter_num_max_precision": _translate("SolverParameters", "Number of iteration at maximum precision"), + "mage_precision_reduction_factor_Z": _translate("SolverParameters", "Reduction precision factor of Z"), + "mage_precision_reduction_factor_Q": _translate("SolverParameters", "Reduction precision factor of Q"), + "mage_precision_reduction_factor_r": _translate("SolverParameters", "Reduction precision factor of residue"), + "mage_error_bound_mesh_elevation": _translate("SolverParameters", "Error bound for mesh elevation"), + "mage_maximun_froude_number": _translate("SolverParameters", "Maximum accepted Froude number"), + "mage_volume_report_monitoring_yn": _translate("SolverParameters", "Volume report monitoring (Y/N)"), + "mage_divergence_relative_error": _translate("SolverParameters", "Divergence weir for relative error in volume"), + "mage_minimal_reach_volume_error": _translate("SolverParameters", "Minimum reach volume for error consideration"), }