[gnumeric] scenarios/solver: create scenarios for feasible solution too.
- From: Morten Welinder <mortenw src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gnumeric] scenarios/solver: create scenarios for feasible solution too.
- Date: Wed, 25 Nov 2009 14:49:22 +0000 (UTC)
commit 10a6f56b9cf72bc59d2841b4764aadc4905e7dfa
Author: Morten Welinder <terra gnome org>
Date: Wed Nov 25 09:48:57 2009 -0500
scenarios/solver: create scenarios for feasible solution too.
src/dialogs/dialog-solver.c | 17 ++++++++++++++---
1 files changed, 14 insertions(+), 3 deletions(-)
---
diff --git a/src/dialogs/dialog-solver.c b/src/dialogs/dialog-solver.c
index 247264d..8270ef2 100644
--- a/src/dialogs/dialog-solver.c
+++ b/src/dialogs/dialog-solver.c
@@ -778,7 +778,6 @@ solver_add_scenario (SolverState *state, GnmSolverResult *res, gchar const *name
{
GnmSolverParameters *param = state->sheet->solver_parameters;
GnmValue const *vinput;
- char const *comment = _("Optimal solution created by solver.\n");
GnmScenario *sc;
GnmSheetRange sr;
@@ -786,7 +785,18 @@ solver_add_scenario (SolverState *state, GnmSolverResult *res, gchar const *name
gnm_sheet_range_from_value (&sr, vinput);
sc = gnm_sheet_scenario_new (param->sheet, name);
- gnm_scenario_set_comment (sc, comment);
+ switch (res->quality) {
+ case GNM_SOLVER_RESULT_OPTIMAL:
+ gnm_scenario_set_comment
+ (sc, _("Optimal solution created by solver.\n"));
+ break;
+ case GNM_SOLVER_RESULT_FEASIBLE:
+ gnm_scenario_set_comment
+ (sc, _("Feasible solution created by solver.\n"));
+ break;
+ default:
+ break;
+ }
gnm_scenario_add_area (sc, &sr, TRUE);
gnm_sheet_scenario_add (sc->sheet, sc);
@@ -828,7 +838,8 @@ cb_dialog_solve_clicked (G_GNUC_UNUSED GtkWidget *button,
workbook_recalc (state->sheet->workbook);
if (res != NULL) {
- if (res->quality == GNM_SOLVER_RESULT_OPTIMAL &&
+ if ((res->quality == GNM_SOLVER_RESULT_OPTIMAL ||
+ res->quality == GNM_SOLVER_RESULT_FEASIBLE) &&
param->options.add_scenario)
solver_add_scenario (state, res,
param->options.scenario_name);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]